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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
62e4aca9
Commit
62e4aca9
authored
Nov 11, 2002
by
bell@sanja.is.com.ua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed select_lex & max_join_size parameters with BIG_TABLES
parent
063ffd2d
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
21 additions
and
16 deletions
+21
-16
sql/mysqld.cc
sql/mysqld.cc
+3
-3
sql/set_var.cc
sql/set_var.cc
+5
-5
sql/set_var.h
sql/set_var.h
+4
-0
sql/sql_class.h
sql/sql_class.h
+2
-2
sql/sql_parse.cc
sql/sql_parse.cc
+7
-6
No files found.
sql/mysqld.cc
View file @
62e4aca9
...
...
@@ -3892,10 +3892,10 @@ static void set_options(void)
/* Set default values for some variables */
global_system_variables
.
table_type
=
DB_TYPE_MYISAM
;
global_system_variables
.
tx_isolation
=
ISO_READ_COMMITTED
;
global_system_variables
.
select_limit
=
(
ulong
)
HA_POS_ERROR
;
global_system_variables
.
select_limit
=
(
ulong
long
)
HA_POS_ERROR
;
max_system_variables
.
select_limit
=
(
ulong
)
HA_POS_ERROR
;
global_system_variables
.
max_join_size
=
(
ulong
)
HA_POS_ERROR
;
max_system_variables
.
max_join_size
=
(
ulong
)
HA_POS_ERROR
;
global_system_variables
.
max_join_size
=
(
ulong
long
)
HA_POS_ERROR
;
max_system_variables
.
max_join_size
=
(
ulong
long
)
HA_POS_ERROR
;
#ifdef __WIN__
/* Allow Win32 users to move MySQL anywhere */
...
...
sql/set_var.cc
View file @
62e4aca9
...
...
@@ -154,11 +154,11 @@ sys_var_thd_ulong sys_max_error_count("max_error_count",
&
SV
::
max_error_count
);
sys_var_thd_ulong
sys_max_heap_table_size
(
"max_heap_table_size"
,
&
SV
::
max_heap_table_size
);
sys_var_thd_ulong
sys_max_join_size
(
"max_join_size"
,
sys_var_thd_ulong
long
sys_max_join_size
(
"max_join_size"
,
&
SV
::
max_join_size
,
fix_max_join_size
);
#ifndef TO_BE_DELETED
/* Alias for max_join_size */
sys_var_thd_ulong
sys_sql_max_join_size
(
"sql_max_join_size"
,
sys_var_thd_ulong
long
sys_sql_max_join_size
(
"sql_max_join_size"
,
&
SV
::
max_join_size
,
fix_max_join_size
);
#endif
...
...
@@ -282,7 +282,7 @@ static sys_var_thd_bit sys_unique_checks("unique_checks",
/* Local state variables */
static
sys_var_thd_ulong
sys_select_limit
(
"sql_select_limit"
,
static
sys_var_thd_ulong
long
sys_select_limit
(
"sql_select_limit"
,
&
SV
::
select_limit
);
static
sys_var_timestamp
sys_timestamp
(
"timestamp"
);
static
sys_var_last_insert_id
sys_last_insert_id
(
"last_insert_id"
);
...
...
@@ -594,7 +594,7 @@ static void fix_max_join_size(THD *thd, enum_var_type type)
{
if
(
type
!=
OPT_GLOBAL
)
{
if
(
thd
->
variables
.
max_join_size
==
(
ulong
)
HA_POS_ERROR
)
if
(
thd
->
variables
.
max_join_size
==
(
ulong
long
)
HA_POS_ERROR
)
thd
->
options
|=
OPTION_BIG_SELECTS
;
else
thd
->
options
&=
~
OPTION_BIG_SELECTS
;
...
...
@@ -769,7 +769,7 @@ bool sys_var_thd_ulonglong::update(THD *thd, set_var *var)
void
sys_var_thd_ulonglong
::
set_default
(
THD
*
thd
,
enum_var_type
type
)
{
if
(
type
==
OPT_GLOBAL
)
global_system_variables
.
*
offset
=
(
ulong
)
option_limits
->
def_value
;
global_system_variables
.
*
offset
=
(
ulong
long
)
option_limits
->
def_value
;
else
thd
->
variables
.
*
offset
=
global_system_variables
.
*
offset
;
}
...
...
sql/set_var.h
View file @
62e4aca9
...
...
@@ -203,6 +203,10 @@ class sys_var_thd_ulonglong :public sys_var_thd
sys_var_thd_ulonglong
(
const
char
*
name_arg
,
ulonglong
SV
::*
offset_arg
)
:
sys_var_thd
(
name_arg
),
offset
(
offset_arg
)
{}
sys_var_thd_ulonglong
(
const
char
*
name_arg
,
ulonglong
SV
::*
offset_arg
,
sys_after_update_func
func
)
:
sys_var_thd
(
name_arg
,
func
),
offset
(
offset_arg
)
{}
bool
update
(
THD
*
thd
,
set_var
*
var
);
void
set_default
(
THD
*
thd
,
enum_var_type
type
);
SHOW_TYPE
type
()
{
return
SHOW_LONGLONG
;
}
...
...
sql/sql_class.h
View file @
62e4aca9
...
...
@@ -341,13 +341,14 @@ struct system_variables
{
ulonglong
myisam_max_extra_sort_file_size
;
ulonglong
myisam_max_sort_file_size
;
ulonglong
select_limit
;
ulonglong
max_join_size
;
ulong
bulk_insert_buff_size
;
ulong
join_buff_size
;
ulong
long_query_time
;
ulong
max_allowed_packet
;
ulong
max_error_count
;
ulong
max_heap_table_size
;
ulong
max_join_size
;
ulong
max_prep_stmt_count
;
ulong
max_sort_length
;
ulong
max_tmp_tables
;
...
...
@@ -361,7 +362,6 @@ struct system_variables
ulong
query_cache_type
;
ulong
read_buff_size
;
ulong
read_rnd_buff_size
;
ulong
select_limit
;
ulong
sortbuff_size
;
ulong
table_type
;
ulong
tmp_table_size
;
...
...
sql/sql_parse.cc
View file @
62e4aca9
...
...
@@ -660,7 +660,7 @@ pthread_handler_decl(handle_one_connection,arg)
goto
end_thread
;
}
if
((
ulong
)
thd
->
variables
.
max_join_size
==
(
ulong
)
HA_POS_ERROR
)
if
((
ulong
)
thd
->
variables
.
max_join_size
==
(
ulong
long
)
HA_POS_ERROR
)
thd
->
options
|=
OPTION_BIG_SELECTS
;
if
(
thd
->
client_capabilities
&
CLIENT_COMPRESS
)
net
->
compress
=
1
;
// Use compression
...
...
@@ -736,7 +736,7 @@ pthread_handler_decl(handle_bootstrap,arg)
#endif
if
((
ulong
)
thd
->
variables
.
max_join_size
==
(
ulong
)
HA_POS_ERROR
)
if
((
ulong
)
thd
->
variables
.
max_join_size
==
(
ulong
long
)
HA_POS_ERROR
)
thd
->
options
|=
OPTION_BIG_SELECTS
;
thd
->
proc_info
=
0
;
...
...
@@ -1373,10 +1373,11 @@ if (lex->derived_tables)
break
;
// Error message is given
}
unit
->
offset_limit_cnt
=
unit
->
global_parameters
->
offset_limit
;
unit
->
select_limit_cnt
=
unit
->
global_parameters
->
select_limit
+
unit
->
global_parameters
->
offset_limit
;
if
(
unit
->
select_limit_cnt
<
unit
->
global_parameters
->
select_limit
)
unit
->
offset_limit_cnt
=
(
ha_rows
)
unit
->
global_parameters
->
offset_limit
;
unit
->
select_limit_cnt
=
(
ha_rows
)
(
unit
->
global_parameters
->
select_limit
+
unit
->
global_parameters
->
offset_limit
);
if
(
unit
->
select_limit_cnt
<
(
ha_rows
)
unit
->
global_parameters
->
select_limit
)
unit
->
select_limit_cnt
=
HA_POS_ERROR
;
// no limit
if
(
unit
->
select_limit_cnt
==
HA_POS_ERROR
)
select_lex
->
options
&=
~
OPTION_FOUND_ROWS
;
...
...
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