Yet another Hammer crash
Matthew Dillon
dillon at apollo.backplane.com
Thu Jul 10 13:06:17 PDT 2008
:I'll provide a dump if needed.
:
:panic(c051dc97,c0540bb7,c050506a,c2dcd000,cb281ae0) at panic+0x9f
:hammer_cursor_removed_node(cb281ae0,c8e55eb0,3,c8e55eb0,cad9cac4) at
:hammer_cursor_removed_node+0x72 btree_remove
:...
:--
:Gergo Szakal MD <bastyaelvtars at gmail.com>
Got it. It's a bug in the cursor recovery code that I added to
support mirror propagation. It's basically saying: "HEY MATT! YOU
FORGOT TO CALL hammer_cursor_deleted_element() SOMEWHERE!".
And indeed, that is what happened. I call it properly when an
element is deleted from a leaf in the B-Tree, but not when a
leaf becomes empty and is deleted from its parent internal node.
So cursors sitting in deadlock recovery on that internal node
were not being updated.
I'll commit a fix today, soon as I track down the bug Michael's
CR program revealed.
-Matt
Matthew Dillon
<dillon at backplane.com>
More information about the Bugs
mailing list