/** * Non-transactional insert of a blank value. Caller must hold shared commmit lock and * have verified that insert is a valid operation. * * @param leaf leaf frame, latched exclusively, which is released by this * method if an exception is thrown * @param node frame node, not split, dirtied * @param vlength length of blank value * @return replacement node, latched */ final Node insertBlank(CursorFrame leaf, Node node, long vlength) throws IOException { byte[] key = mKey; try { node.insertBlankLeafEntry(leaf, mTree, ~leaf.mNodePos, key, vlength); } catch (Throwable e) { node.releaseExclusive(); throw e; } // Releases latch if an exception is thrown. return postInsert(leaf, node, key); }
/** * Non-transactional insert of a blank value. Caller must hold shared commmit lock and * have verified that insert is a valid operation. * * @param leaf leaf frame, latched exclusively, which is released by this * method if an exception is thrown * @param node frame node, not split, dirtied * @param vlength length of blank value * @return replacement node, latched */ final Node insertBlank(CursorFrame leaf, Node node, long vlength) throws IOException { byte[] key = mKey; try { node.insertBlankLeafEntry(leaf, mTree, ~leaf.mNodePos, key, vlength); } catch (Throwable e) { node.releaseExclusive(); throw e; } // Releases latch if an exception is thrown. return postInsert(leaf, node, key); }
/** * Non-transactional insert of a blank value. Caller must hold shared commmit lock and * have verified that insert is a valid operation. * * @param leaf leaf frame, latched exclusively, which is released by this * method if an exception is thrown * @param node frame node, not split, dirtied * @param vlength length of blank value * @return replacement node, latched */ final Node insertBlank(CursorFrame leaf, Node node, long vlength) throws IOException { byte[] key = mKey; try { node.insertBlankLeafEntry(leaf, mTree, ~leaf.mNodePos, key, vlength); } catch (Throwable e) { node.releaseExclusive(); throw e; } // Releases latch if an exception is thrown. return postInsert(leaf, node, key); }