func (a *uint32IndexNodeAdapter) SetRoot(node bplustree.Node) {
	cb := a.repo.ControlBlock()

	nodeID := uint16(node.ID().(Uint16ID))
	log.Infof("IDX_SET_ROOT %d", nodeID)
	node.SetParentID(Uint16ID(0))

	cb.SetIndexRootBlockID(nodeID)
	a.buffer.MarkAsDirty(cb.DataBlockID())
}
func (a *uint32IndexNodeAdapter) IsRoot(node bplustree.Node) bool {
	return uint16(node.ParentID().(Uint16ID)) == 0
}
func (a *uint32IndexNodeAdapter) Free(node bplustree.Node) {
	nodeID := uint16(node.ID().(Uint16ID))
	log.Infof("IDX_FREE nodeID=%d", nodeID)
	dataBlocksMap := &dataBlocksMap{a.buffer}
	dataBlocksMap.MarkAsFree(nodeID)
}