1 package com.daffodilwoods.daffodildb.server.datasystem.indexsystem; 2 3 import com.daffodilwoods.daffodildb.server.datasystem.interfaces._DatabaseUser; 4 import com.daffodilwoods.daffodildb.server.datasystem.btree.BTreeNode; 5 import com.daffodilwoods.daffodildb.server.datasystem.persistentsystem.ClusterCharacteristics; 6 import com.daffodilwoods.daffodildb.utils.byteconverter.CCzufDpowfsufs; 7 import com.daffodilwoods.database.resource.DException; 8 import com.daffodilwoods.daffodildb.server.datasystem.interfaces._ClusterProvider; 9 10 public class DefaultBTreeControlCluster extends IndexBtreeControlCluster{ 11 12 public DefaultBTreeControlCluster(int address0,_ClusterProvider clusterProvider0) { 13 super(address0,clusterProvider0); 14 } 15 20 21 22 public void updateBTreeInfo(_DatabaseUser user,BTreeNode node, int btreeSize)throws DException{ 23 FixedBTreeCluster cluster = (FixedBTreeCluster)clusterProvider.getCluster(user,new ClusterCharacteristics(address,true)); 24 int rootClusterAddress = ((ClusterCharacteristics)node.getNodeKey()).getStartAddress(); 25 if(rootNodeAddress != rootClusterAddress){ 26 rootNodeAddress = rootClusterAddress; 27 cluster.updateBytes(versionHandler.CLUSTER_STARTPOINTER,CCzufDpowfsufs.getBytes(rootClusterAddress)); 28 } 29 cluster.updateBytes(versionHandler.CLUSTER_STARTPOINTER + 2 * versionHandler.LENGTH,CCzufDpowfsufs.getBytes((long)btreeSize)); 30 } 31 32 } 33 | Popular Tags |