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
ca8251c6
Commit
ca8251c6
authored
Jul 06, 2003
by
heikki@hundin.mysql.fi
Browse files
Options
Browse Files
Download
Plain Diff
Merge heikki@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.0
parents
ee9237e0
e387dac0
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
26 additions
and
14 deletions
+26
-14
innobase/srv/srv0srv.c
innobase/srv/srv0srv.c
+23
-4
innobase/trx/trx0purge.c
innobase/trx/trx0purge.c
+3
-10
No files found.
innobase/srv/srv0srv.c
View file @
ca8251c6
...
@@ -3009,10 +3009,29 @@ background_loop:
...
@@ -3009,10 +3009,29 @@ background_loop:
srv_main_thread_op_info
=
(
char
*
)
"purging"
;
srv_main_thread_op_info
=
(
char
*
)
"purging"
;
/* Run a full purge */
n_pages_purged
=
1
;
last_flush_time
=
time
(
NULL
);
while
(
n_pages_purged
)
{
if
(
srv_fast_shutdown
&&
srv_shutdown_state
>
0
)
{
if
(
srv_fast_shutdown
&&
srv_shutdown_state
>
0
)
{
n_pages_purged
=
0
;
}
else
{
break
;
}
srv_main_thread_op_info
=
(
char
*
)
"purging"
;
n_pages_purged
=
trx_purge
();
n_pages_purged
=
trx_purge
();
current_time
=
time
(
NULL
);
if
(
difftime
(
current_time
,
last_flush_time
)
>
1
)
{
srv_main_thread_op_info
=
(
char
*
)
"flushing log"
;
log_buffer_flush_to_disk
();
last_flush_time
=
current_time
;
}
}
}
srv_main_thread_op_info
=
(
char
*
)
"reserving kernel mutex"
;
srv_main_thread_op_info
=
(
char
*
)
"reserving kernel mutex"
;
...
...
innobase/trx/trx0purge.c
View file @
ca8251c6
...
@@ -593,7 +593,7 @@ trx_purge_rseg_get_next_history_log(
...
@@ -593,7 +593,7 @@ trx_purge_rseg_get_next_history_log(
mutex_enter
(
&
(
rseg
->
mutex
));
mutex_enter
(
&
(
rseg
->
mutex
));
ut_a
d
(
rseg
->
last_page_no
!=
FIL_NULL
);
ut_a
(
rseg
->
last_page_no
!=
FIL_NULL
);
purge_sys
->
purge_trx_no
=
ut_dulint_add
(
rseg
->
last_trx_no
,
1
);
purge_sys
->
purge_trx_no
=
ut_dulint_add
(
rseg
->
last_trx_no
,
1
);
purge_sys
->
purge_undo_no
=
ut_dulint_zero
;
purge_sys
->
purge_undo_no
=
ut_dulint_zero
;
...
@@ -606,16 +606,9 @@ trx_purge_rseg_get_next_history_log(
...
@@ -606,16 +606,9 @@ trx_purge_rseg_get_next_history_log(
log_hdr
=
undo_page
+
rseg
->
last_offset
;
log_hdr
=
undo_page
+
rseg
->
last_offset
;
seg_hdr
=
undo_page
+
TRX_UNDO_SEG_HDR
;
seg_hdr
=
undo_page
+
TRX_UNDO_SEG_HDR
;
if
((
mach_read_from_2
(
log_hdr
+
TRX_UNDO_NEXT_LOG
)
==
0
)
/* Increase the purge page count by one for every handled log */
&&
(
mach_read_from_2
(
seg_hdr
+
TRX_UNDO_STATE
)
==
TRX_UNDO_TO_PURGE
))
{
/* This is the last log header on this page and the log
segment cannot be reused: we may increment the number of
pages handled */
purge_sys
->
n_pages_handled
++
;
purge_sys
->
n_pages_handled
++
;
}
prev_log_addr
=
trx_purge_get_log_from_hist
(
prev_log_addr
=
trx_purge_get_log_from_hist
(
flst_get_prev_addr
(
log_hdr
+
TRX_UNDO_HISTORY_NODE
,
flst_get_prev_addr
(
log_hdr
+
TRX_UNDO_HISTORY_NODE
,
...
...
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