Percona Server with XtraDB

Buffer page I/O fix race condition in buf_LRU_remove_all_pages()

Reported by Laurynas Biveinis on 2013-02-05
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona Server
High
Laurynas Biveinis
5.1
Undecided
Unassigned
5.5
High
Laurynas Biveinis

Bug Description

I did not check the wrong code path fully through, but at least one defect is there and it might explain

InnoDB: Warning: hash index ref_count (182) is not zero after fil_discard_tablespace().
index: "idx1" table: "xx_xxxxx_xxxx/patient_pdups"

error messages in several bug reports (bug 1096324, bug 1086700).

buf_LRU_remove_all_pages() performs a dirty call to buf_page_get_io_fix(). Thus, buf_LRU_remove_all_pages() may attempt to remove I/O-fixed pages by buf_LRU_block_remove_hashed_page() which is clearly not intended.

Similar to bug 934377, bug 1110102, bug 1111211.

Related branches

tags: added: xtradb
Eric H (eric-hardway) wrote :

I am running Percona Version: '5.1.67rel14.3-log' with innodb_lazy_drop_table = 1 enabled.

And i am getting these errors.

I am hostin my cacti database on this instance.

CREATE TABLE `poller_output` (
  `local_data_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
  `rrd_name` varchar(19) NOT NULL DEFAULT '',
  `time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `output` text NOT NULL,
  PRIMARY KEY (`local_data_id`,`rrd_name`,`time`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

InnoDB: Warning: hash index ref_count (1) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (1) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (1) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (2) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (3) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (4) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (5) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (5) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (5) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (6) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (7) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (8) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"
InnoDB: Warning: hash index ref_count (8) is not zero after fil_discard_tablespace().
index: "PRIMARY" table: "cacti/poller_output"

Eric -

The issue you are experiencing is not related to this bug since you have the lazy drop table feature enabled. Please file a new bug so that your report is not lost. Thanks.

Also related: bug 1122462.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers