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) }