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
5a8e734b
Commit
5a8e734b
authored
Jul 18, 2001
by
monty@hundin.mysql.fi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Upgrade TL_WRITE_CONCURRENT_INSERT to TL_WRITE_LOW_PRIORITY if
--low-priority-updates is used and the file has holes.
parent
0fb2e24a
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
11 additions
and
5 deletions
+11
-5
Docs/manual.texi
Docs/manual.texi
+3
-1
include/thr_lock.h
include/thr_lock.h
+1
-0
mysys/thr_lock.c
mysys/thr_lock.c
+5
-4
sql/mysqld.cc
sql/mysqld.cc
+1
-0
sql/sql_insert.cc
sql/sql_insert.cc
+1
-0
No files found.
Docs/manual.texi
View file @
5a8e734b
...
...
@@ -24702,7 +24702,7 @@ The meanings of the configuration parameters are the following:
@multitable @columnfractions .30 .70
@item @code{innodb_data_home_dir} @tab
The common part of the directory path for all
innobase
data files.
The common part of the directory path for all
InnoDB
data files.
@item @code{innodb_data_file_path} @tab
Paths to individual data files and their sizes. The full directory path
to each data file is acquired by concatenating innodb_data_home_dir to
...
...
@@ -45728,6 +45728,8 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.40
@itemize @bullet
@item
Fixed problem with @code{--low-priority-updates} and @code{INSERT}'s.
@item
Added @code{slave_wait_timeout} for replication.
@item
Fixed problem with @code{UPDATE} and BDB tables.
include/thr_lock.h
View file @
5a8e734b
...
...
@@ -65,6 +65,7 @@ enum thr_lock_type { TL_IGNORE=-1,
extern
ulong
max_write_lock_count
;
extern
my_bool
thr_lock_inited
;
extern
enum
thr_lock_type
thr_upgraded_concurrent_insert_lock
;
typedef
struct
st_thr_lock_data
{
pthread_t
thread
;
...
...
mysys/thr_lock.c
View file @
5a8e734b
...
...
@@ -85,6 +85,7 @@ multiple read locks.
my_bool
thr_lock_inited
=
0
;
ulong
locks_immediate
=
0L
,
locks_waited
=
0L
;
enum
thr_lock_type
thr_upgraded_concurrent_insert_lock
=
TL_WRITE
;
/* The following constants are only for debug output */
#define MAX_THREADS 100
...
...
@@ -514,7 +515,7 @@ int thr_lock(THR_LOCK_DATA *data,enum thr_lock_type lock_type)
}
}
else
if
(
lock_type
==
TL_WRITE_CONCURRENT_INSERT
&&
!
lock
->
check_status
)
data
->
type
=
lock_type
=
TL_WRITE
;
/* not supported */
data
->
type
=
lock_type
=
thr_upgraded_concurrent_insert_lock
;
if
(
lock
->
write
.
data
)
/* If there is a write lock */
{
...
...
@@ -556,7 +557,7 @@ int thr_lock(THR_LOCK_DATA *data,enum thr_lock_type lock_type)
{
/* no scheduled write locks */
if
(
lock_type
==
TL_WRITE_CONCURRENT_INSERT
&&
(
*
lock
->
check_status
)(
data
->
status_param
))
data
->
type
=
lock_type
=
TL_WRITE
;
/* Upgrade lock */
data
->
type
=
lock_type
=
thr_upgraded_concurrent_insert_lock
;
if
(
!
lock
->
read
.
data
||
(
lock_type
<=
TL_WRITE_DELAYED
&&
...
...
@@ -943,10 +944,10 @@ my_bool thr_upgrade_write_delay_lock(THR_LOCK_DATA *data)
DBUG_ENTER
(
"thr_upgrade_write_delay_lock"
);
pthread_mutex_lock
(
&
lock
->
mutex
);
if
(
data
->
type
==
TL_UNLOCK
||
data
->
type
==
TL_WRITE
)
/* Aborted */
if
(
data
->
type
==
TL_UNLOCK
||
data
->
type
>=
TL_WRITE_LOW_PRIORITY
)
{
pthread_mutex_unlock
(
&
lock
->
mutex
);
DBUG_RETURN
(
data
->
type
==
TL_UNLOCK
);
DBUG_RETURN
(
data
->
type
==
TL_UNLOCK
);
/* Test if Aborted */
}
check_locks
(
lock
,
"before upgrading lock"
,
0
);
/* TODO: Upgrade to TL_WRITE_CONCURRENT_INSERT in some cases */
...
...
sql/mysqld.cc
View file @
5a8e734b
...
...
@@ -3563,6 +3563,7 @@ static void get_options(int argc,char **argv)
break
;
case
OPT_LOW_PRIORITY_UPDATES
:
thd_startup_options
|=
OPTION_LOW_PRIORITY_UPDATES
;
thr_upgraded_concurrent_insert_lock
=
TL_WRITE_LOW_PRIORITY
;
low_priority_updates
=
1
;
break
;
case
OPT_BOOTSTRAP
:
...
...
sql/sql_insert.cc
View file @
5a8e734b
...
...
@@ -871,6 +871,7 @@ static pthread_handler_decl(handle_delayed_insert,arg)
/* Add thread to THD list so that's it's visible in 'show processlist' */
pthread_mutex_lock
(
&
LOCK_thread_count
);
thd
->
thread_id
=
thread_id
++
;
thd
->
end_time
();
threads
.
append
(
thd
);
pthread_mutex_unlock
(
&
LOCK_thread_count
);
...
...
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