Bug #38167 maria crash recovery got stuck at 80%
Submitted: 16 Jul 2008 9:50 Modified: 4 Jul 2013 7:45
Reporter: Shane Bester (Platinum Quality Contributor) Email Updates:
Status: Unsupported Impact on me:
None 
Category:MySQL Server: Maria storage engine Severity:S3 (Non-critical)
Version:5.1.25-maria-alpha-debug OS:Microsoft Windows
Assigned to: CPU Architecture:Any

[16 Jul 2008 9:50] Shane Bester
Description:
after a crash, maria recovery got stuck:
Been sitting here doing nothing for over an hour:

E:\builds\bzr\mysql-maria\sql\debug>mysqld --console --skip-grant-tables --skip-name-
080716 10:43:59 [Warning] No argument was provided to --log-bin, and --log-bin-index
080716 10:43:59  InnoDB: Started; log sequence number 0 42300897
080716 10:43:59 [Note] mysqld: Maria engine: starting recovery
recovered pages: 0% 10% 20% 30% 40% 50% 60% 70% 80%

Stack trace of the thread:

kernel32.dll!ReleaseSemaphore
kernel32.dll!WaitForMultipleObjects
mysqld.exe!pthread_cond_timedwait
mysqld.exe!pthread_cond_wait
mysqld.exe!read_block
mysqld.exe!pagecache_read
mysqld.exe!_ma_apply_redo_free_head_or_tail
mysqld.exe!exec_REDO_LOGREC_REDO_FREE_HEAD_OR_TAIL
mysqld.exe!display_and_apply_record
mysqld.exe!run_redo_phase
mysqld.exe!maria_apply_log
mysqld.exe!maria_recovery_from_log
mysqld.exe!ha_maria_init
mysqld.exe!ha_initialize_handlerton
mysqld.exe!plugin_initialize
mysqld.exe!plugin_init
mysqld.exe!init_server_components
mysqld.exe!win_main
mysqld.exe!mysql_service
mysqld.exe!main
mysqld.exe!__tmainCRTStartup
mysqld.exe!mainCRTStartup

in read_block() we have this loop where it's stuck:

wqueue_add_to_queue(&block->wqueue[COND_FOR_REQUESTED], thread);
do
 {
    DBUG_PRINT("read_block: wait",
       ("suspend thread %ld", thread->id));
   pagecache_pthread_cond_wait(&thread->suspend,
                &pagecache->cache_lock);
}
while (thread->next);

How to repeat:
no idea
[16 Jul 2008 9:52] Shane Bester
full stack trace and variables.

Attachment: bug38167_debug_info.txt (text/plain), 9.86 KiB.

[16 Jul 2008 11:28] Shane Bester
last few lines of debug trace during looping

Attachment: bug_last_3800_lines_debug_trace.txt (text/plain), 363.53 KiB.

[20 Jul 2008 20:17] Guilhem Bichot
Hi Shane. If it's still time, could you please upload the Maria log and control files and the tables at the time of this stuck recovery? Maybe if we had these files, we could start recovery on our local machines and see it be stuck again.
[17 Aug 2008 23:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".