1 21 22 package org.apache.derby.impl.store.access.btree.index; 23 24 import org.apache.derby.iapi.services.sanity.SanityManager; 25 26 import org.apache.derby.iapi.error.StandardException; 27 28 import org.apache.derby.iapi.store.access.conglomerate.TransactionManager; 29 30 import org.apache.derby.iapi.store.access.ConglomerateController; 31 import org.apache.derby.iapi.types.RowLocation; 32 import org.apache.derby.iapi.store.access.TransactionController; 33 34 import org.apache.derby.iapi.store.raw.FetchDescriptor; 35 import org.apache.derby.iapi.store.raw.LockingPolicy; 36 import org.apache.derby.iapi.store.raw.Page; 37 import org.apache.derby.iapi.store.raw.RecordHandle; 38 import org.apache.derby.iapi.store.raw.Transaction; 39 40 import org.apache.derby.iapi.types.DataValueDescriptor; 41 42 import org.apache.derby.impl.store.access.btree.BTree; 43 import org.apache.derby.impl.store.access.btree.BTreeLockingPolicy; 44 import org.apache.derby.impl.store.access.btree.BTreeRowPosition; 45 import org.apache.derby.impl.store.access.btree.ControlRow; 46 import org.apache.derby.impl.store.access.btree.LeafControlRow; 47 import org.apache.derby.impl.store.access.btree.OpenBTree; 48 import org.apache.derby.impl.store.access.btree.WaitError; 49 50 61 62 class B2IRowLocking1 extends B2IRowLocking2 implements BTreeLockingPolicy 63 { 64 68 69 73 B2IRowLocking1( 74 Transaction rawtran, 75 int lock_level, 76 LockingPolicy locking_policy, 77 ConglomerateController base_cc, 78 OpenBTree open_btree) 79 { 80 super(rawtran, lock_level, locking_policy, base_cc, open_btree); 81 } 82 83 84 88 89 90 109 110 111 112 141 public boolean lockScanRow( 142 OpenBTree open_btree, 143 BTree btree, 144 BTreeRowPosition pos, 145 boolean request_scan_lock, 146 FetchDescriptor lock_fetch_desc, 147 DataValueDescriptor[] lock_template, 148 RowLocation lock_row_loc, 149 boolean previous_key_lock, 150 boolean forUpdate, 151 int lock_operation) 152 throws StandardException 153 { 154 return( 158 _lockScanRow( 159 open_btree, 160 btree, 161 pos, 162 (forUpdate && !previous_key_lock), request_scan_lock, 164 lock_fetch_desc, lock_template, lock_row_loc, 165 previous_key_lock, 166 forUpdate, 167 lock_operation)); 168 } 169 170 181 public void unlockScanRecordAfterRead( 182 BTreeRowPosition pos, 183 boolean forUpdate) 184 throws StandardException 185 { 186 if (forUpdate) 187 { 188 super.unlockScanRecordAfterRead(pos, forUpdate); 189 } 190 } 191 192 205 206 } 207 | Popular Tags |