List:Internals« Previous MessageNext Message »
From:Mikael Ronström Date:November 8 2005 12:02am
Subject:bk commit - 4.1 tree (mikael:...) BUG #12796
View as plain text  
Bug 12796: Record lost in HEAP table
Two handler objects were present, one was used for an insert and the 
other for a select. The state of the
statistics was local to the handler object and thus the other handler 
object didn't notice the insert.
Fix included:
1) Add a new variable key_stat_version to share object in HEAP handler, 
do ++ on this whenever statistics
needs an update (where key_stats_ok= FALSE previously)
2) Change key_stats_ok variable to key_stat_version (uint) which is 
assigned from share->key_stat_version
where previously key_stats_ok= TRUE;
3) Fix records_in_range to return records if (records <= 1)
4) Fix records_in_range to always return records >= 2 if not unique key 
and records >= 2.
5) Fixed unique key handling for HEAP table in records_in_range

This patch is temporary, it is not yet completely functional



Mikael Ronstrom, Senior Software Architect
MySQL AB, www.mysql.com

Jumpstart your cluster:
http://www.mysql.com/consulting/packaged/cluster.html
My blog:
http://mikaelronstrom.blogspot.com

Thread
bk commit - 4.1 tree (mikael:...) BUG #12796Mikael Ronström8 Nov