Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
a55f4a5d
Commit
a55f4a5d
authored
Jan 18, 2005
by
sergefp@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-fix-vg1
parents
5d9b87ea
1b8e1674
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
64 additions
and
76 deletions
+64
-76
mysql-test/r/information_schema.result
mysql-test/r/information_schema.result
+3
-0
mysql-test/t/information_schema.test
mysql-test/t/information_schema.test
+5
-0
ndb/src/mgmsrv/Services.cpp
ndb/src/mgmsrv/Services.cpp
+0
-1
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+45
-45
sql/sql_show.cc
sql/sql_show.cc
+11
-30
No files found.
mysql-test/r/information_schema.result
View file @
a55f4a5d
...
...
@@ -676,3 +676,6 @@ variable_name
character_set_database
collation_database
skip_show_database
show global status like "Threads_running";
Variable_name Value
Threads_running 1
mysql-test/t/information_schema.test
View file @
a55f4a5d
...
...
@@ -354,3 +354,8 @@ show open tables where `table` like "user";
show
status
variable_name
where
variable_name
like
"%database%"
;
# test for 'show variables ... where'
show
variables
variable_name
where
variable_name
like
"%database%"
;
#
# Bug #7981:SHOW GLOBAL STATUS crashes server
#
show
global
status
like
"Threads_running"
;
ndb/src/mgmsrv/Services.cpp
View file @
a55f4a5d
...
...
@@ -1512,4 +1512,3 @@ MgmApiSession::check_connection(Parser_t::Context &ctx,
template
class
MutexVector
<
int
>;
template
class
Vector
<
ParserRow
<
MgmApiSession
>
const
*>
;
template
class
Vector
<
unsigned
short
>;
sql/ha_ndbcluster.cc
View file @
a55f4a5d
...
...
@@ -1112,6 +1112,47 @@ ha_ndbcluster::set_index_key(NdbOperation *op,
DBUG_RETURN
(
0
);
}
inline
int
ha_ndbcluster
::
define_read_attrs
(
byte
*
buf
,
NdbOperation
*
op
)
{
uint
i
;
THD
*
thd
=
current_thd
;
DBUG_ENTER
(
"define_read_attrs"
);
// Define attributes to read
for
(
i
=
0
;
i
<
table
->
s
->
fields
;
i
++
)
{
Field
*
field
=
table
->
field
[
i
];
if
((
thd
->
query_id
==
field
->
query_id
)
||
((
field
->
flags
&
PRI_KEY_FLAG
))
||
m_retrieve_all_fields
)
{
if
(
get_ndb_value
(
op
,
field
,
i
,
buf
))
ERR_RETURN
(
op
->
getNdbError
());
}
else
{
m_value
[
i
].
ptr
=
NULL
;
}
}
if
(
table
->
s
->
primary_key
==
MAX_KEY
)
{
DBUG_PRINT
(
"info"
,
(
"Getting hidden key"
));
// Scanning table with no primary key
int
hidden_no
=
table
->
s
->
fields
;
#ifndef DBUG_OFF
const
NDBTAB
*
tab
=
(
const
NDBTAB
*
)
m_table
;
if
(
!
tab
->
getColumn
(
hidden_no
))
DBUG_RETURN
(
1
);
#endif
if
(
get_ndb_value
(
op
,
NULL
,
hidden_no
,
NULL
))
ERR_RETURN
(
op
->
getNdbError
());
}
DBUG_RETURN
(
0
);
}
/*
Read one record from NDB using primary key
*/
...
...
@@ -1585,47 +1626,6 @@ int ha_ndbcluster::set_bounds(NdbIndexScanOperation *op,
DBUG_RETURN
(
0
);
}
inline
int
ha_ndbcluster
::
define_read_attrs
(
byte
*
buf
,
NdbOperation
*
op
)
{
uint
i
;
THD
*
thd
=
current_thd
;
DBUG_ENTER
(
"define_read_attrs"
);
// Define attributes to read
for
(
i
=
0
;
i
<
table
->
s
->
fields
;
i
++
)
{
Field
*
field
=
table
->
field
[
i
];
if
((
thd
->
query_id
==
field
->
query_id
)
||
((
field
->
flags
&
PRI_KEY_FLAG
))
||
m_retrieve_all_fields
)
{
if
(
get_ndb_value
(
op
,
field
,
i
,
buf
))
ERR_RETURN
(
op
->
getNdbError
());
}
else
{
m_value
[
i
].
ptr
=
NULL
;
}
}
if
(
table
->
s
->
primary_key
==
MAX_KEY
)
{
DBUG_PRINT
(
"info"
,
(
"Getting hidden key"
));
// Scanning table with no primary key
int
hidden_no
=
table
->
s
->
fields
;
#ifndef DBUG_OFF
const
NDBTAB
*
tab
=
(
const
NDBTAB
*
)
m_table
;
if
(
!
tab
->
getColumn
(
hidden_no
))
DBUG_RETURN
(
1
);
#endif
if
(
get_ndb_value
(
op
,
NULL
,
hidden_no
,
NULL
))
ERR_RETURN
(
op
->
getNdbError
());
}
DBUG_RETURN
(
0
);
}
/*
Start ordered index scan in NDB
*/
...
...
@@ -2487,13 +2487,13 @@ int ha_ndbcluster::index_read_last(byte * buf, const byte * key, uint key_len)
inline
int
ha_ndbcluster
::
read_range_first_to_buf
(
const
key_range
*
start_key
,
const
key_range
*
end_key
,
bool
eq_r
ange
,
bool
sorted
,
bool
eq_r
,
bool
sorted
,
byte
*
buf
)
{
KEY
*
key_info
;
int
error
=
1
;
DBUG_ENTER
(
"ha_ndbcluster::read_range_first_to_buf"
);
DBUG_PRINT
(
"info"
,
(
"eq_r
ange: %d, sorted: %d"
,
eq_range
,
sorted
));
DBUG_PRINT
(
"info"
,
(
"eq_r
: %d, sorted: %d"
,
eq_r
,
sorted
));
switch
(
get_index_type
(
active_index
)){
case
PRIMARY_KEY_ORDERED_INDEX
:
...
...
@@ -2534,14 +2534,14 @@ int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
int
ha_ndbcluster
::
read_range_first
(
const
key_range
*
start_key
,
const
key_range
*
end_key
,
bool
eq_r
ange
,
bool
sorted
)
bool
eq_r
,
bool
sorted
)
{
byte
*
buf
=
table
->
record
[
0
];
DBUG_ENTER
(
"ha_ndbcluster::read_range_first"
);
DBUG_RETURN
(
read_range_first_to_buf
(
start_key
,
end_key
,
eq_r
ange
,
eq_r
,
sorted
,
buf
));
}
...
...
sql/sql_show.cc
View file @
a55f4a5d
...
...
@@ -1534,25 +1534,6 @@ static bool show_status_array(THD *thd, const char *wild,
}
bool
mysqld_show
(
THD
*
thd
,
const
char
*
wild
,
show_var_st
*
variables
,
enum
enum_var_type
value_type
,
pthread_mutex_t
*
mutex
,
struct
system_status_var
*
status_var
,
TABLE
*
table
)
{
DBUG_ENTER
(
"mysqld_show"
);
ha_update_statistics
();
/* Export engines statistics */
pthread_mutex_lock
(
mutex
);
if
(
show_status_array
(
thd
,
wild
,
variables
,
value_type
,
status_var
,
""
,
table
))
goto
err
;
pthread_mutex_unlock
(
mutex
);
DBUG_RETURN
(
FALSE
);
err:
pthread_mutex_unlock
(
mutex
);
DBUG_RETURN
(
TRUE
);
}
/* collect status for all running threads */
void
calc_sum_of_all_status
(
STATUS_VAR
*
to
)
...
...
@@ -2874,10 +2855,13 @@ int fill_open_tables(THD *thd, TABLE_LIST *tables, COND *cond)
int
fill_variables
(
THD
*
thd
,
TABLE_LIST
*
tables
,
COND
*
cond
)
{
DBUG_ENTER
(
"fill_variables"
);
int
res
=
0
;
LEX
*
lex
=
thd
->
lex
;
const
char
*
wild
=
lex
->
wild
?
lex
->
wild
->
ptr
()
:
NullS
;
int
res
=
mysqld_show
(
thd
,
wild
,
init_vars
,
lex
->
option_type
,
&
LOCK_global_system_variables
,
0
,
tables
->
table
);
pthread_mutex_lock
(
&
LOCK_global_system_variables
);
res
=
show_status_array
(
thd
,
wild
,
init_vars
,
lex
->
option_type
,
0
,
""
,
tables
->
table
);
pthread_mutex_unlock
(
&
LOCK_global_system_variables
);
DBUG_RETURN
(
res
);
}
...
...
@@ -2889,16 +2873,13 @@ int fill_status(THD *thd, TABLE_LIST *tables, COND *cond)
const
char
*
wild
=
lex
->
wild
?
lex
->
wild
->
ptr
()
:
NullS
;
int
res
=
0
;
STATUS_VAR
tmp
;
if
(
lex
->
option_type
==
OPT_GLOBAL
)
{
ha_update_statistics
();
/* Export engines statistics */
pthread_mutex_lock
(
&
LOCK_status
);
if
(
lex
->
option_type
==
OPT_GLOBAL
)
calc_sum_of_all_status
(
&
tmp
);
}
res
=
mysqld_show
(
thd
,
wild
,
status_vars
,
OPT_GLOBAL
,
&
LOCK_status
,
res
=
show_status_array
(
thd
,
wild
,
status_vars
,
OPT_GLOBAL
,
(
lex
->
option_type
==
OPT_GLOBAL
?
&
tmp
:
&
thd
->
status_var
),
tables
->
table
);
if
(
lex
->
option_type
==
OPT_GLOBAL
)
&
tmp
:
&
thd
->
status_var
),
""
,
tables
->
table
);
pthread_mutex_unlock
(
&
LOCK_status
);
DBUG_RETURN
(
res
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment