---TRANSACTION 108A468, ACTIVE 120653 sec
mysql tables in use 7, locked 0
MySQL thread id 189440, OS thread handle 0x795f0f75d700, query id 78664538 81.177.174.10 gb_tmt Sending data
SELECT product_id from products_attr_products WHERE (attr_value LIKE "%" AND attr_id=25) AND product_id IN (SELECT product_id from products_attr_products WHERE (attr_value LIKE "%" AND attr_id=24) AND product_id IN (SELECT product_id from products_attr_products WHERE (attr_value LIKE "%" AND attr_id=23) AND product_id IN (SELECT product_id from products_attr_products WHERE (attr_value LIKE "%" AND attr_id=22) AND product_id IN (SELECT product_id from products_attr_products WHERE (attr_value LIKE "%" AND attr_id=21) AND product_id IN (SELECT product_id from products_attr_products WHERE (attr_va
Trx read view will not see trx with id >= 108A469, sees < 108A469
Is it normal to have transactions active for so long time? had you got similar ones in 5.1.x?
Assertion failure happened in the dict_index_remove_from_cache() function that has this 600 seconds limit hardcoded:
for (;;) { ulint ref_count = btr_search_info_get_ref_count(info, index->id);
if (ref_count == 0) { break;
}
/* Sleep for 10ms before trying again. */ os_thread_sleep(10000); ++retries;
if (retries % 500 == 0) { /* No luck after 5 seconds of wait. */ fprintf(stderr, "InnoDB: Error: Waited for" " %lu secs for hash index" " ref_count (%lu) to drop" " to 0.\n" "index: \"%s\"" " table: \"%s\"\n", retries/100, ref_count, index->name, table->name);
}
/* To avoid a hang here we commit suicide if the ref_count doesn't drop to zero in 600 seconds. */
if (retries >= 60000) { ut_error;
}
}
Not sure what to do with this, if only make adaptive indexing smaller or switch it off entirely.
This is suspicious in your log:
---TRANSACTION 108A468, ACTIVE 120653 sec attr_products WHERE (attr_value LIKE "%" AND attr_id=25) AND product_id IN (SELECT product_id from products_ attr_products WHERE (attr_value LIKE "%" AND attr_id=24) AND product_id IN (SELECT product_id from products_ attr_products WHERE (attr_value LIKE "%" AND attr_id=23) AND product_id IN (SELECT product_id from products_ attr_products WHERE (attr_value LIKE "%" AND attr_id=22) AND product_id IN (SELECT product_id from products_ attr_products WHERE (attr_value LIKE "%" AND attr_id=21) AND product_id IN (SELECT product_id from products_ attr_products WHERE (attr_va
mysql tables in use 7, locked 0
MySQL thread id 189440, OS thread handle 0x795f0f75d700, query id 78664538 81.177.174.10 gb_tmt Sending data
SELECT product_id from products_
Trx read view will not see trx with id >= 108A469, sees < 108A469
Is it normal to have transactions active for so long time? had you got similar ones in 5.1.x?
Assertion failure happened in the dict_index_ remove_ from_cache( ) function that has this 600 seconds limit hardcoded:
for (;;) {
ulint ref_count = btr_search_ info_get_ ref_count( info, index->id);
break;
if (ref_count == 0) {
}
/* Sleep for 10ms before trying again. */
os_thread_ sleep(10000) ;
++retries;
if (retries % 500 == 0) {
/* No luck after 5 seconds of wait. */
fprintf( stderr, "InnoDB: Error: Waited for"
" %lu secs for hash index"
" ref_count (%lu) to drop"
" to 0.\n"
"index: \"%s\""
" table: \"%s\"\n",
retries/ 100,
ref_ count,
index- >name,
table- >name);
}
/* To avoid a hang here we commit suicide if the
ref_count doesn't drop to zero in 600 seconds. */
ut_error;
if (retries >= 60000) {
}
}
Not sure what to do with this, if only make adaptive indexing smaller or switch it off entirely.