]> git.pld-linux.org Git - packages/mysql.git/blame - innodb_show_status.patch
- rel 2; update percona patches
[packages/mysql.git] / innodb_show_status.patch
CommitLineData
b4e1fa2c
AM
1# name : innodb_show_status.patch
2# introduced : 11 or before
3# maintainer : Yasufumi
4#
5#!!! notice !!!
6# Any small change to this file in the main branch
7# should be done or reviewed by the maintainer!
8diff -ruN a/storage/innobase/buf/buf0buf.c b/storage/innobase/buf/buf0buf.c
9--- a/storage/innobase/buf/buf0buf.c 2010-11-03 07:01:13.000000000 +0900
10+++ b/storage/innobase/buf/buf0buf.c 2010-12-03 15:07:31.786968193 +0900
adf0fb13 11@@ -4831,6 +4831,7 @@
d8778560
AM
12 }
13
14 total_info->pool_size += pool_info->pool_size;
15+ total_info->pool_size_bytes += pool_info->pool_size_bytes;
16 total_info->lru_len += pool_info->lru_len;
17 total_info->old_lru_len += pool_info->old_lru_len;
18 total_info->free_list_len += pool_info->free_list_len;
adf0fb13 19@@ -4894,6 +4895,8 @@
d8778560
AM
20
21 pool_info->pool_size = buf_pool->curr_size;
22
23+ pool_info->pool_size_bytes = buf_pool->curr_pool_size;
24+
25 pool_info->lru_len = UT_LIST_GET_LEN(buf_pool->LRU);
26
27 pool_info->old_lru_len = buf_pool->LRU_old_len;
adf0fb13 28@@ -5010,14 +5013,16 @@
d8778560 29 ut_ad(pool_info);
b4e1fa2c
AM
30
31 fprintf(file,
32- "Buffer pool size %lu\n"
33- "Free buffers %lu\n"
34- "Database pages %lu\n"
35- "Old database pages %lu\n"
36- "Modified db pages %lu\n"
37+ "Buffer pool size %lu\n"
38+ "Buffer pool size, bytes %lu\n"
39+ "Free buffers %lu\n"
40+ "Database pages %lu\n"
41+ "Old database pages %lu\n"
42+ "Modified db pages %lu\n"
43 "Pending reads %lu\n"
44 "Pending writes: LRU %lu, flush list %lu, single page %lu\n",
d8778560
AM
45 pool_info->pool_size,
46+ pool_info->pool_size_bytes,
47 pool_info->free_list_len,
48 pool_info->lru_len,
49 pool_info->old_lru_len,
b4e1fa2c
AM
50diff -ruN a/storage/innobase/buf/buf0flu.c b/storage/innobase/buf/buf0flu.c
51--- a/storage/innobase/buf/buf0flu.c 2010-12-03 20:58:26.000000000 +0300
52+++ b/storage/innobase/buf/buf0flu.c 2011-01-07 03:37:41.000000000 +0300
53@@ -75,7 +75,7 @@
54 static buf_flush_stat_t buf_flush_stat_sum;
55
56 /** Number of pages flushed through non flush_list flushes. */
57-static ulint buf_lru_flush_page_count = 0;
58+// static ulint buf_lru_flush_page_count = 0;
59
60 /* @} */
61
62diff -ruN a/storage/innobase/fil/fil0fil.c b/storage/innobase/fil/fil0fil.c
63--- a/storage/innobase/fil/fil0fil.c 2010-11-03 07:01:13.000000000 +0900
64+++ b/storage/innobase/fil/fil0fil.c 2010-12-03 15:07:31.790357112 +0900
adf0fb13 65@@ -4888,3 +4888,30 @@
b4e1fa2c
AM
66
67 fil_system = NULL;
68 }
69+
70+/*************************************************************************
71+Return local hash table informations. */
72+
73+ulint
74+fil_system_hash_cells(void)
75+/*=======================*/
76+{
77+ if (fil_system) {
78+ return (fil_system->spaces->n_cells
79+ + fil_system->name_hash->n_cells);
80+ } else {
81+ return 0;
82+ }
83+}
84+
85+ulint
86+fil_system_hash_nodes(void)
87+/*=======================*/
88+{
89+ if (fil_system) {
90+ return (UT_LIST_GET_LEN(fil_system->space_list)
91+ * (sizeof(fil_space_t) + MEM_BLOCK_HEADER_SIZE));
92+ } else {
93+ return 0;
94+ }
95+}
96diff -ruN a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
97--- a/storage/innobase/handler/ha_innodb.cc 2010-12-03 15:06:58.727955654 +0900
98+++ b/storage/innobase/handler/ha_innodb.cc 2010-12-03 15:07:31.799376984 +0900
adf0fb13 99@@ -603,6 +603,8 @@
b4e1fa2c
AM
100 (char*) &export_vars.innodb_buffer_pool_pages_dirty, SHOW_LONG},
101 {"buffer_pool_pages_flushed",
102 (char*) &export_vars.innodb_buffer_pool_pages_flushed, SHOW_LONG},
103+ {"buffer_pool_pages_LRU_flushed",
104+ (char*) &export_vars.innodb_buffer_pool_pages_LRU_flushed, SHOW_LONG},
105 {"buffer_pool_pages_free",
106 (char*) &export_vars.innodb_buffer_pool_pages_free, SHOW_LONG},
107 #ifdef UNIV_DEBUG
adf0fb13 108@@ -11081,6 +11083,16 @@
b4e1fa2c
AM
109 "Force InnoDB to not use next-key locking, to use only row-level locking.",
110 NULL, NULL, FALSE);
111
112+static MYSQL_SYSVAR_ULONG(show_verbose_locks, srv_show_verbose_locks,
113+ PLUGIN_VAR_OPCMDARG,
114+ "Whether to show records locked in SHOW INNODB STATUS.",
115+ NULL, NULL, 0, 0, 1, 0);
116+
117+static MYSQL_SYSVAR_ULONG(show_locks_held, srv_show_locks_held,
118+ PLUGIN_VAR_RQCMDARG,
119+ "Number of locks held to print for each InnoDB transaction in SHOW INNODB STATUS.",
120+ NULL, NULL, 10, 0, 1000, 0);
121+
122 #ifdef UNIV_LOG_ARCHIVE
123 static MYSQL_SYSVAR_STR(log_arch_dir, innobase_log_arch_dir,
124 PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
adf0fb13 125@@ -11268,7 +11280,7 @@
b4e1fa2c
AM
126
127 static MYSQL_SYSVAR_STR(version, innodb_version_str,
128 PLUGIN_VAR_NOCMDOPT | PLUGIN_VAR_READONLY,
129- "InnoDB version", NULL, NULL, INNODB_VERSION_STR);
130+ "Percona-InnoDB-plugin version", NULL, NULL, INNODB_VERSION_STR);
131
132 static MYSQL_SYSVAR_BOOL(use_sys_malloc, srv_use_sys_malloc,
133 PLUGIN_VAR_NOCMDARG | PLUGIN_VAR_READONLY,
adf0fb13 134@@ -11361,6 +11373,8 @@
b4e1fa2c
AM
135 MYSQL_SYSVAR(thread_concurrency),
136 MYSQL_SYSVAR(thread_sleep_delay),
137 MYSQL_SYSVAR(autoinc_lock_mode),
138+ MYSQL_SYSVAR(show_verbose_locks),
139+ MYSQL_SYSVAR(show_locks_held),
140 MYSQL_SYSVAR(version),
141 MYSQL_SYSVAR(use_sys_malloc),
142 MYSQL_SYSVAR(use_native_aio),
d8778560
AM
143diff -ruN a/storage/innobase/include/buf0buf.h b/storage/innobase/include/buf0buf.h
144--- a/storage/innobase/include/buf0buf.h 2011-01-20 07:37:08.000000000 +0900
145+++ b/storage/innobase/include/buf0buf.h 2011-02-14 15:25:20.859126532 +0900
adf0fb13 146@@ -125,6 +125,7 @@
d8778560
AM
147 /* General buffer pool info */
148 ulint pool_unique_id; /*!< Buffer Pool ID */
149 ulint pool_size; /*!< Buffer Pool size in pages */
150+ ulint pool_size_bytes;
151 ulint lru_len; /*!< Length of buf_pool->LRU */
152 ulint old_lru_len; /*!< buf_pool->LRU_old_len */
153 ulint free_list_len; /*!< Length of buf_pool->free list */
b4e1fa2c
AM
154diff -ruN a/storage/innobase/include/fil0fil.h b/storage/innobase/include/fil0fil.h
155--- a/storage/innobase/include/fil0fil.h 2010-11-03 07:01:13.000000000 +0900
156+++ b/storage/innobase/include/fil0fil.h 2010-12-03 15:07:31.812028575 +0900
157@@ -726,6 +726,17 @@
158 /*============================*/
159 ulint id); /*!< in: space id */
160
161+/*************************************************************************
162+Return local hash table informations. */
163+
164+ulint
165+fil_system_hash_cells(void);
166+/*========================*/
167+
168+ulint
169+fil_system_hash_nodes(void);
170+/*========================*/
171+
172 typedef struct fil_space_struct fil_space_t;
173
174 #endif
175diff -ruN a/storage/innobase/include/read0read.h b/storage/innobase/include/read0read.h
176--- a/storage/innobase/include/read0read.h 2010-12-04 02:58:26.000000000 +0900
177+++ b/storage/innobase/include/read0read.h 2011-01-21 19:35:44.127631727 +0900
178@@ -88,6 +88,7 @@
179 void
180 read_view_print(
181 /*============*/
182+ FILE* file,
183 const read_view_t* view); /*!< in: read view */
184 /*********************************************************************//**
185 Create a consistent cursor view for mysql to be used in cursors. In this
186diff -ruN a/storage/innobase/include/srv0srv.h b/storage/innobase/include/srv0srv.h
187--- a/storage/innobase/include/srv0srv.h 2010-11-03 07:01:13.000000000 +0900
188+++ b/storage/innobase/include/srv0srv.h 2010-12-03 15:07:31.813958103 +0900
adf0fb13 189@@ -142,6 +142,9 @@
b4e1fa2c
AM
190 extern char srv_adaptive_flushing;
191
192
193+extern ulint srv_show_locks_held;
194+extern ulint srv_show_verbose_locks;
195+
196 /* The sort order table of the MySQL latin1_swedish_ci character set
197 collation */
198 extern const byte* srv_latin1_ordering;
adf0fb13 199@@ -323,6 +326,8 @@
b4e1fa2c
AM
200 buffer pool to disk */
201 extern ulint srv_buf_pool_flushed;
202
203+extern ulint buf_lru_flush_page_count;
204+
205 /** Number of buffer pool reads that led to the
206 reading of a disk page */
207 extern ulint srv_buf_pool_reads;
adf0fb13 208@@ -702,6 +707,7 @@
b4e1fa2c
AM
209 ulint innodb_buffer_pool_reads; /*!< srv_buf_pool_reads */
210 ulint innodb_buffer_pool_wait_free; /*!< srv_buf_pool_wait_free */
211 ulint innodb_buffer_pool_pages_flushed; /*!< srv_buf_pool_flushed */
212+ ulint innodb_buffer_pool_pages_LRU_flushed; /*!< buf_lru_flush_page_count */
213 ulint innodb_buffer_pool_write_requests;/*!< srv_buf_pool_write_requests */
214 ulint innodb_buffer_pool_read_ahead; /*!< srv_read_ahead */
215 ulint innodb_buffer_pool_read_ahead_evicted;/*!< srv_read_ahead evicted*/
b4e1fa2c
AM
216diff -ruN a/storage/innobase/lock/lock0lock.c b/storage/innobase/lock/lock0lock.c
217--- a/storage/innobase/lock/lock0lock.c 2010-11-03 07:01:13.000000000 +0900
218+++ b/storage/innobase/lock/lock0lock.c 2010-12-03 15:07:31.819023998 +0900
d8778560 219@@ -4374,6 +4374,7 @@
b4e1fa2c
AM
220
221 putc('\n', file);
222
223+ if ( srv_show_verbose_locks ) {
224 block = buf_page_try_get(space, page_no, &mtr);
225
226 for (i = 0; i < lock_rec_get_n_bits(lock); ++i) {
d8778560 227@@ -4400,6 +4401,7 @@
b4e1fa2c
AM
228
229 putc('\n', file);
230 }
231+ }
232
233 mtr_commit(&mtr);
234 if (UNIV_LIKELY_NULL(heap)) {
d8778560 235@@ -4583,7 +4585,7 @@
b4e1fa2c
AM
236 }
237 }
238
239- if (!srv_print_innodb_lock_monitor) {
240+ if (!srv_print_innodb_lock_monitor && !srv_show_locks_held) {
241 nth_trx++;
242 goto loop;
243 }
d8778560 244@@ -4655,8 +4657,8 @@
b4e1fa2c
AM
245
246 nth_lock++;
247
248- if (nth_lock >= 10) {
249- fputs("10 LOCKS PRINTED FOR THIS TRX:"
250+ if (nth_lock >= srv_show_locks_held) {
251+ fputs("TOO MANY LOCKS PRINTED FOR THIS TRX:"
252 " SUPPRESSING FURTHER PRINTS\n",
253 file);
254
255diff -ruN a/storage/innobase/read/read0read.c b/storage/innobase/read/read0read.c
256--- a/storage/innobase/read/read0read.c 2010-12-04 02:58:26.000000000 +0900
257+++ b/storage/innobase/read/read0read.c 2011-01-21 19:37:08.292650181 +0900
258@@ -357,34 +357,35 @@
259 void
260 read_view_print(
261 /*============*/
262+ FILE* file,
263 const read_view_t* view) /*!< in: read view */
264 {
265 ulint n_ids;
266 ulint i;
267
268 if (view->type == VIEW_HIGH_GRANULARITY) {
269- fprintf(stderr,
270+ fprintf(file,
271 "High-granularity read view undo_n:o %llu\n",
272 (ullint) view->undo_no);
273 } else {
274- fprintf(stderr, "Normal read view\n");
275+ fprintf(file, "Normal read view\n");
276 }
277
278- fprintf(stderr, "Read view low limit trx n:o " TRX_ID_FMT "\n",
279+ fprintf(file, "Read view low limit trx n:o " TRX_ID_FMT "\n",
280 (ullint) view->low_limit_no);
281
282- fprintf(stderr, "Read view up limit trx id " TRX_ID_FMT "\n",
283+ fprintf(file, "Read view up limit trx id " TRX_ID_FMT "\n",
284 (ullint) view->up_limit_id);
285
286- fprintf(stderr, "Read view low limit trx id " TRX_ID_FMT "\n",
287+ fprintf(file, "Read view low limit trx id " TRX_ID_FMT "\n",
288 (ullint) view->low_limit_id);
289
290- fprintf(stderr, "Read view individually stored trx ids:\n");
291+ fprintf(file, "Read view individually stored trx ids:\n");
292
293 n_ids = view->n_trx_ids;
294
295 for (i = 0; i < n_ids; i++) {
296- fprintf(stderr, "Read view trx id " TRX_ID_FMT "\n",
297+ fprintf(file, "Read view trx id " TRX_ID_FMT "\n",
298 (ullint) read_view_get_nth_trx_id(view, i));
299 }
300 }
301diff -ruN a/storage/innobase/srv/srv0srv.c b/storage/innobase/srv/srv0srv.c
302--- a/storage/innobase/srv/srv0srv.c 2010-11-03 07:01:13.000000000 +0900
303+++ b/storage/innobase/srv/srv0srv.c 2010-12-03 15:07:31.824022673 +0900
adf0fb13 304@@ -83,6 +83,7 @@
b4e1fa2c
AM
305 #include "ha_prototypes.h"
306 #include "trx0i_s.h"
307 #include "os0sync.h" /* for HAVE_ATOMIC_BUILTINS */
308+#include "read0read.h"
309 #include "mysql/plugin.h"
310 #include "mysql/service_thd_wait.h"
311
adf0fb13 312@@ -188,6 +189,9 @@
b4e1fa2c
AM
313 the checkpoints. */
314 UNIV_INTERN char srv_adaptive_flushing = TRUE;
315
316+UNIV_INTERN ulint srv_show_locks_held = 10;
317+UNIV_INTERN ulint srv_show_verbose_locks = 0;
318+
319 /** Maximum number of times allowed to conditionally acquire
320 mutex before switching to blocking wait on the mutex */
321 #define MAX_MUTEX_NOWAIT 20
adf0fb13 322@@ -314,6 +318,7 @@
b4e1fa2c
AM
323 /* variable to count the number of pages that were written from buffer
324 pool to the disk */
325 UNIV_INTERN ulint srv_buf_pool_flushed = 0;
326+UNIV_INTERN ulint buf_lru_flush_page_count = 0;
327
328 /** Number of buffer pool reads that led to the
329 reading of a disk page */
adf0fb13 330@@ -1823,6 +1828,13 @@
b4e1fa2c
AM
331 ulint n_reserved;
332 ibool ret;
333
334+ ulint btr_search_sys_subtotal;
335+ ulint lock_sys_subtotal;
336+ ulint recv_sys_subtotal;
337+
338+ ulint i;
339+ trx_t* trx;
340+
341 mutex_enter(&srv_innodb_monitor_mutex);
342
343 current_time = time(NULL);
adf0fb13 344@@ -1871,31 +1883,6 @@
b4e1fa2c
AM
345
346 mutex_exit(&dict_foreign_err_mutex);
347
348- /* Only if lock_print_info_summary proceeds correctly,
349- before we call the lock_print_info_all_transactions
350- to print all the lock information. */
351- ret = lock_print_info_summary(file, nowait);
352-
353- if (ret) {
354- if (trx_start) {
355- long t = ftell(file);
356- if (t < 0) {
357- *trx_start = ULINT_UNDEFINED;
358- } else {
359- *trx_start = (ulint) t;
360- }
361- }
362- lock_print_info_all_transactions(file);
363- if (trx_end) {
364- long t = ftell(file);
365- if (t < 0) {
366- *trx_end = ULINT_UNDEFINED;
367- } else {
368- *trx_end = (ulint) t;
369- }
370- }
371- }
372-
373 fputs("--------\n"
374 "FILE I/O\n"
375 "--------\n", file);
adf0fb13 376@@ -1926,10 +1913,78 @@
b4e1fa2c
AM
377 "BUFFER POOL AND MEMORY\n"
378 "----------------------\n", file);
379 fprintf(file,
380- "Total memory allocated " ULINTPF
381- "; in additional pool allocated " ULINTPF "\n",
382- ut_total_allocated_memory,
383- mem_pool_get_reserved(mem_comm_pool));
384+ "Total memory allocated " ULINTPF
385+ "; in additional pool allocated " ULINTPF "\n",
386+ ut_total_allocated_memory,
387+ mem_pool_get_reserved(mem_comm_pool));
388+ /* Calcurate reserved memories */
389+ if (btr_search_sys && btr_search_sys->hash_index->heap) {
390+ btr_search_sys_subtotal = mem_heap_get_size(btr_search_sys->hash_index->heap);
391+ } else {
392+ btr_search_sys_subtotal = 0;
393+ for (i=0; i < btr_search_sys->hash_index->n_mutexes; i++) {
394+ btr_search_sys_subtotal += mem_heap_get_size(btr_search_sys->hash_index->heaps[i]);
395+ }
396+ }
397+
398+ lock_sys_subtotal = 0;
399+ if (trx_sys) {
400+ mutex_enter(&kernel_mutex);
401+ trx = UT_LIST_GET_FIRST(trx_sys->mysql_trx_list);
402+ while (trx) {
403+ lock_sys_subtotal += ((trx->lock_heap) ? mem_heap_get_size(trx->lock_heap) : 0);
404+ trx = UT_LIST_GET_NEXT(mysql_trx_list, trx);
405+ }
406+ mutex_exit(&kernel_mutex);
407+ }
408+
409+ recv_sys_subtotal = ((recv_sys && recv_sys->addr_hash)
410+ ? mem_heap_get_size(recv_sys->heap) : 0);
411+
412+ fprintf(file,
413+ "Internal hash tables (constant factor + variable factor)\n"
414+ " Adaptive hash index %lu \t(%lu + %lu)\n"
415+ " Page hash %lu (buffer pool 0 only)\n"
416+ " Dictionary cache %lu \t(%lu + %lu)\n"
417+ " File system %lu \t(%lu + %lu)\n"
418+ " Lock system %lu \t(%lu + %lu)\n"
adf0fb13 419+ " Recovery system %lu \t(%lu + %lu)\n",
b4e1fa2c
AM
420+
421+ (ulong) (btr_search_sys
422+ ? (btr_search_sys->hash_index->n_cells * sizeof(hash_cell_t)) : 0)
423+ + btr_search_sys_subtotal,
424+ (ulong) (btr_search_sys
425+ ? (btr_search_sys->hash_index->n_cells * sizeof(hash_cell_t)) : 0),
426+ (ulong) btr_search_sys_subtotal,
427+
428+ (ulong) (buf_pool_from_array(0)->page_hash->n_cells * sizeof(hash_cell_t)),
429+
430+ (ulong) (dict_sys ? ((dict_sys->table_hash->n_cells
431+ + dict_sys->table_id_hash->n_cells
432+ ) * sizeof(hash_cell_t)
433+ + dict_sys->size) : 0),
434+ (ulong) (dict_sys ? ((dict_sys->table_hash->n_cells
435+ + dict_sys->table_id_hash->n_cells
436+ ) * sizeof(hash_cell_t)) : 0),
437+ (ulong) (dict_sys ? (dict_sys->size) : 0),
438+
439+ (ulong) (fil_system_hash_cells() * sizeof(hash_cell_t)
440+ + fil_system_hash_nodes()),
441+ (ulong) (fil_system_hash_cells() * sizeof(hash_cell_t)),
442+ (ulong) fil_system_hash_nodes(),
443+
444+ (ulong) ((lock_sys ? (lock_sys->rec_hash->n_cells * sizeof(hash_cell_t)) : 0)
445+ + lock_sys_subtotal),
446+ (ulong) (lock_sys ? (lock_sys->rec_hash->n_cells * sizeof(hash_cell_t)) : 0),
447+ (ulong) lock_sys_subtotal,
448+
449+ (ulong) (((recv_sys && recv_sys->addr_hash)
450+ ? (recv_sys->addr_hash->n_cells * sizeof(hash_cell_t)) : 0)
451+ + recv_sys_subtotal),
452+ (ulong) ((recv_sys && recv_sys->addr_hash)
453+ ? (recv_sys->addr_hash->n_cells * sizeof(hash_cell_t)) : 0),
adf0fb13 454+ (ulong) recv_sys_subtotal);
b4e1fa2c
AM
455+
456 fprintf(file, "Dictionary memory allocated " ULINTPF "\n",
457 dict_sys->size);
458
adf0fb13 459@@ -1945,6 +2000,16 @@
b4e1fa2c
AM
460 fprintf(file, "%lu read views open inside InnoDB\n",
461 UT_LIST_GET_LEN(trx_sys->view_list));
462
463+ if (UT_LIST_GET_LEN(trx_sys->view_list)) {
464+ read_view_t* view = UT_LIST_GET_LAST(trx_sys->view_list);
465+
466+ if (view) {
467+ fprintf(file, "---OLDEST VIEW---\n");
468+ read_view_print(file, view);
469+ fprintf(file, "-----------------\n");
470+ }
471+ }
472+
473 n_reserved = fil_space_get_n_reserved_extents(0);
474 if (n_reserved > 0) {
475 fprintf(file,
adf0fb13 476@@ -1988,6 +2053,31 @@
b4e1fa2c
AM
477 srv_n_rows_deleted_old = srv_n_rows_deleted;
478 srv_n_rows_read_old = srv_n_rows_read;
479
480+ /* Only if lock_print_info_summary proceeds correctly,
481+ before we call the lock_print_info_all_transactions
482+ to print all the lock information. */
483+ ret = lock_print_info_summary(file, nowait);
484+
485+ if (ret) {
486+ if (trx_start) {
487+ long t = ftell(file);
488+ if (t < 0) {
489+ *trx_start = ULINT_UNDEFINED;
490+ } else {
491+ *trx_start = (ulint) t;
492+ }
493+ }
494+ lock_print_info_all_transactions(file);
495+ if (trx_end) {
496+ long t = ftell(file);
497+ if (t < 0) {
498+ *trx_end = ULINT_UNDEFINED;
499+ } else {
500+ *trx_end = (ulint) t;
501+ }
502+ }
503+ }
504+
505 fputs("----------------------------\n"
506 "END OF INNODB MONITOR OUTPUT\n"
507 "============================\n", file);
adf0fb13 508@@ -2031,6 +2121,7 @@
b4e1fa2c
AM
509 = srv_buf_pool_write_requests;
510 export_vars.innodb_buffer_pool_wait_free = srv_buf_pool_wait_free;
511 export_vars.innodb_buffer_pool_pages_flushed = srv_buf_pool_flushed;
512+ export_vars.innodb_buffer_pool_pages_LRU_flushed = buf_lru_flush_page_count;
513 export_vars.innodb_buffer_pool_reads = srv_buf_pool_reads;
514 export_vars.innodb_buffer_pool_read_ahead
515 = stat.n_ra_pages_read;
516diff -ruN a/storage/innobase/sync/sync0arr.c b/storage/innobase/sync/sync0arr.c
517--- a/storage/innobase/sync/sync0arr.c 2010-11-03 07:01:13.000000000 +0900
518+++ b/storage/innobase/sync/sync0arr.c 2010-12-03 15:07:31.826041368 +0900
adf0fb13 519@@ -478,7 +478,7 @@
b4e1fa2c
AM
520
521 fprintf(file,
522 "--Thread %lu has waited at %s line %lu"
523- " for %.2f seconds the semaphore:\n",
524+ " for %#.5g seconds the semaphore:\n",
adf0fb13
AM
525 (ulong) os_thread_pf(cell->thread),
526 innobase_basename(cell->file), (ulong) cell->line,
b4e1fa2c 527 difftime(time(NULL), cell->reservation_time));
b4e1fa2c
AM
528diff -ruN a/storage/innobase/trx/trx0purge.c b/storage/innobase/trx/trx0purge.c
529--- a/storage/innobase/trx/trx0purge.c 2010-12-04 02:58:26.000000000 +0900
530+++ b/storage/innobase/trx/trx0purge.c 2011-01-21 19:40:42.086683671 +0900
11822e22 531@@ -1212,7 +1212,7 @@
b4e1fa2c
AM
532 /*=====================*/
533 {
534 fprintf(stderr, "InnoDB: Purge system view:\n");
535- read_view_print(purge_sys->view);
536+ read_view_print(stderr, purge_sys->view);
537
538 fprintf(stderr, "InnoDB: Purge trx n:o " TRX_ID_FMT
539 ", undo n:o " TRX_ID_FMT "\n",
This page took 0.341977 seconds and 4 git commands to generate.