Skip to content
  • Debarun Banerjee's avatar
    e5771fc5
    BUG#21871451 INNODB: FAILING ASSERTION: !(&BUF_POOL->MUTEX) · e5771fc5
    Debarun Banerjee authored
    
    
    Problem :
    ---------
    While selecting from INFORMATION_SCHEMA.INNODB_CMPMEM with option
    big-tables=1, the fetched rows are filled into temp table by the
    sql function schema_table_store_record().
    
    Innodb i_s_cmpmem_fill_low() calls the record store callback while
    holding buf_pool_mutex. The issue started occurring when we started
    to use InnoDB intrinsic table to store the records instead of heap
    engine. We re-enter InnoDB to insert record into intrinsic table
    while holding buf_pool_mutex and hit ASSERT.
    
    Solution :
    ----------
    Acquire buf_pool_mutex and store records locally and call the store
    callback after releasing buf_pool_mutex.
    
    Reviewed-by: default avatarMarko Makela <marko.makela@oracle.com>
    
    RB: 10339
    e5771fc5
    BUG#21871451 INNODB: FAILING ASSERTION: !(&BUF_POOL->MUTEX)
    Debarun Banerjee authored
    
    
    Problem :
    ---------
    While selecting from INFORMATION_SCHEMA.INNODB_CMPMEM with option
    big-tables=1, the fetched rows are filled into temp table by the
    sql function schema_table_store_record().
    
    Innodb i_s_cmpmem_fill_low() calls the record store callback while
    holding buf_pool_mutex. The issue started occurring when we started
    to use InnoDB intrinsic table to store the records instead of heap
    engine. We re-enter InnoDB to insert record into intrinsic table
    while holding buf_pool_mutex and hit ASSERT.
    
    Solution :
    ----------
    Acquire buf_pool_mutex and store records locally and call the store
    callback after releasing buf_pool_mutex.
    
    Reviewed-by: default avatarMarko Makela <marko.makela@oracle.com>
    
    RB: 10339
Loading