protected ORawBuffer readRecord(final OCluster iClusterSegment, final ORecordId iRid, final boolean iAtomicLock) {
final long timer = OProfiler.getInstance().startChrono();
final boolean locked = lock.acquireSharedLock();
try {
final OPhysicalPosition ppos = iClusterSegment.getPhysicalPosition(iRid.clusterPosition, new OPhysicalPosition());
if (ppos == null)
return null;
return new ORawBuffer(data.readRecord(ppos.dataPosition), ppos.version, ppos.type);