HBASE-19835 Use explicit casting to avoid side effects

Signed-off-by: tedyu <yuzhihong@gmail.com>
This commit is contained in:
Aman Poonia 2018-01-21 22:21:15 +05:30 committed by tedyu
parent c93ba37dfc
commit bc080e7500
13 changed files with 58 additions and 68 deletions

View File

@ -47,7 +47,7 @@ import org.slf4j.LoggerFactory;
@InterfaceAudience.Public @InterfaceAudience.Public
public class Append extends Mutation { public class Append extends Mutation {
private static final Logger LOG = LoggerFactory.getLogger(Append.class); private static final Logger LOG = LoggerFactory.getLogger(Append.class);
private static final long HEAP_OVERHEAD = ClassSize.REFERENCE + ClassSize.TIMERANGE; private static final long HEAP_OVERHEAD = (long)ClassSize.REFERENCE + ClassSize.TIMERANGE;
private TimeRange tr = new TimeRange(); private TimeRange tr = new TimeRange();
/** /**

View File

@ -66,7 +66,7 @@ public abstract class Mutation extends OperationWithAttributes implements Row, C
HeapSize { HeapSize {
public static final long MUTATION_OVERHEAD = ClassSize.align( public static final long MUTATION_OVERHEAD = ClassSize.align(
// This // This
ClassSize.OBJECT + (long)ClassSize.OBJECT +
// row + OperationWithAttributes.attributes // row + OperationWithAttributes.attributes
2 * ClassSize.REFERENCE + 2 * ClassSize.REFERENCE +
// Timestamp // Timestamp
@ -791,10 +791,10 @@ public abstract class Mutation extends OperationWithAttributes implements Row, C
private static final class CellWrapper implements ExtendedCell { private static final class CellWrapper implements ExtendedCell {
private static final long FIXED_OVERHEAD = ClassSize.align( private static final long FIXED_OVERHEAD = ClassSize.align(
ClassSize.OBJECT // object header (long)ClassSize.OBJECT // object header
+ KeyValue.TIMESTAMP_SIZE // timestamp + KeyValue.TIMESTAMP_SIZE // timestamp
+ Bytes.SIZEOF_LONG // sequence id + Bytes.SIZEOF_LONG // sequence id
+ 1 * ClassSize.REFERENCE); // references to cell + 1L * ClassSize.REFERENCE); // references to cell
private final Cell cell; private final Cell cell;
private long sequenceId; private long sequenceId;
private long timestamp; private long timestamp;

View File

@ -27,7 +27,7 @@ import org.apache.yetus.audience.InterfaceAudience;
public class IndividualBytesFieldCell implements ExtendedCell { public class IndividualBytesFieldCell implements ExtendedCell {
private static final long FIXED_OVERHEAD = ClassSize.align( // do alignment(padding gap) private static final long FIXED_OVERHEAD = ClassSize.align( // do alignment(padding gap)
ClassSize.OBJECT // object header (long)ClassSize.OBJECT // object header
+ KeyValue.TIMESTAMP_TYPE_SIZE // timestamp and type + KeyValue.TIMESTAMP_TYPE_SIZE // timestamp and type
+ Bytes.SIZEOF_LONG // sequence id + Bytes.SIZEOF_LONG // sequence id
+ 5 * ClassSize.REFERENCE); // references to all byte arrays: row, family, qualifier, value, tags + 5 * ClassSize.REFERENCE); // references to all byte arrays: row, family, qualifier, value, tags

View File

@ -1783,7 +1783,7 @@ public final class PrivateCellUtil {
FirstOnRowCell.FIXED_HEAPSIZE FirstOnRowCell.FIXED_HEAPSIZE
+ Bytes.SIZEOF_BYTE // flength + Bytes.SIZEOF_BYTE // flength
+ Bytes.SIZEOF_INT * 3 // foffset, qoffset, qlength + Bytes.SIZEOF_INT * 3 // foffset, qoffset, qlength
+ ClassSize.REFERENCE * 2; // fArray, qArray + (long)ClassSize.REFERENCE * 2; // fArray, qArray
private final byte[] fArray; private final byte[] fArray;
private final int foffset; private final int foffset;
private final byte flength; private final byte flength;
@ -1944,7 +1944,7 @@ public final class PrivateCellUtil {
} }
private static class LastOnRowColCell extends LastOnRowCell { private static class LastOnRowColCell extends LastOnRowCell {
private static final long FIXED_OVERHEAD = LastOnRowCell.FIXED_OVERHEAD private static final long FIXED_OVERHEAD = (long)LastOnRowCell.FIXED_OVERHEAD
+ ClassSize.REFERENCE * 2 // fArray and qArray + ClassSize.REFERENCE * 2 // fArray and qArray
+ Bytes.SIZEOF_INT * 3 // foffset, qoffset, qlength + Bytes.SIZEOF_INT * 3 // foffset, qoffset, qlength
+ Bytes.SIZEOF_BYTE; // flength + Bytes.SIZEOF_BYTE; // flength

View File

@ -57,7 +57,7 @@ public class CompactionPipeline {
private static final Logger LOG = LoggerFactory.getLogger(CompactionPipeline.class); private static final Logger LOG = LoggerFactory.getLogger(CompactionPipeline.class);
public final static long FIXED_OVERHEAD = ClassSize public final static long FIXED_OVERHEAD = ClassSize
.align(ClassSize.OBJECT + (3 * ClassSize.REFERENCE) + Bytes.SIZEOF_LONG); .align((long)ClassSize.OBJECT + (3 * ClassSize.REFERENCE) + Bytes.SIZEOF_LONG);
public final static long DEEP_OVERHEAD = FIXED_OVERHEAD + (2 * ClassSize.LINKEDLIST); public final static long DEEP_OVERHEAD = FIXED_OVERHEAD + (2 * ClassSize.LINKEDLIST);
private final RegionServicesForStores region; private final RegionServicesForStores region;

View File

@ -447,7 +447,7 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
} }
static final long HEAP_SIZE = ClassSize.align( static final long HEAP_SIZE = ClassSize.align(
ClassSize.OBJECT + 5 * Bytes.SIZEOF_BOOLEAN); (long)ClassSize.OBJECT + 5 * Bytes.SIZEOF_BOOLEAN);
} }
/** /**
@ -7877,7 +7877,7 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver, Regi
} }
public static final long FIXED_OVERHEAD = ClassSize.align( public static final long FIXED_OVERHEAD = ClassSize.align(
ClassSize.OBJECT + (long)ClassSize.OBJECT +
ClassSize.ARRAY + ClassSize.ARRAY +
50 * ClassSize.REFERENCE + 3 * Bytes.SIZEOF_INT + 50 * ClassSize.REFERENCE + 3 * Bytes.SIZEOF_INT +
(14 * Bytes.SIZEOF_LONG) + (14 * Bytes.SIZEOF_LONG) +

View File

@ -42,7 +42,6 @@ import java.util.concurrent.ExecutorCompletionService;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.locks.ReentrantLock;
import java.util.concurrent.locks.ReentrantReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock;
import java.util.function.Predicate; import java.util.function.Predicate;
@ -150,8 +149,8 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
volatile boolean forceMajor = false; volatile boolean forceMajor = false;
/* how many bytes to write between status checks */ /* how many bytes to write between status checks */
static int closeCheckInterval = 0; static int closeCheckInterval = 0;
private AtomicLong storeSize = new AtomicLong(); private volatile long storeSize = 0L;
private AtomicLong totalUncompressedBytes = new AtomicLong(); private volatile long totalUncompressedBytes = 0L;
/** /**
* RWLock for store operations. * RWLock for store operations.
@ -210,13 +209,13 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
private int compactionCheckMultiplier; private int compactionCheckMultiplier;
protected Encryption.Context cryptoContext = Encryption.Context.NONE; protected Encryption.Context cryptoContext = Encryption.Context.NONE;
private AtomicLong flushedCellsCount = new AtomicLong(); private volatile long flushedCellsCount = 0;
private AtomicLong compactedCellsCount = new AtomicLong(); private volatile long compactedCellsCount = 0;
private AtomicLong majorCompactedCellsCount = new AtomicLong(); private volatile long majorCompactedCellsCount = 0;
private AtomicLong flushedCellsSize = new AtomicLong(); private volatile long flushedCellsSize = 0;
private AtomicLong flushedOutputFileSize = new AtomicLong(); private volatile long flushedOutputFileSize = 0;
private AtomicLong compactedCellsSize = new AtomicLong(); private volatile long compactedCellsSize = 0;
private AtomicLong majorCompactedCellsSize = new AtomicLong(); private volatile long majorCompactedCellsSize = 0;
/** /**
* Constructor * Constructor
@ -545,9 +544,8 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
HStoreFile storeFile = completionService.take().get(); HStoreFile storeFile = completionService.take().get();
if (storeFile != null) { if (storeFile != null) {
long length = storeFile.getReader().length(); long length = storeFile.getReader().length();
this.storeSize.addAndGet(length); this.storeSize += length;
this.totalUncompressedBytes this.totalUncompressedBytes += storeFile.getReader().getTotalUncompressedBytes();
.addAndGet(storeFile.getReader().getTotalUncompressedBytes());
LOG.debug("loaded {}", storeFile); LOG.debug("loaded {}", storeFile);
results.add(storeFile); results.add(storeFile);
} }
@ -846,8 +844,8 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
private void bulkLoadHFile(HStoreFile sf) throws IOException { private void bulkLoadHFile(HStoreFile sf) throws IOException {
StoreFileReader r = sf.getReader(); StoreFileReader r = sf.getReader();
this.storeSize.addAndGet(r.length()); this.storeSize += r.length();
this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes()); this.totalUncompressedBytes += r.getTotalUncompressedBytes();
// Append the new storefile into the list // Append the new storefile into the list
this.lock.writeLock().lock(); this.lock.writeLock().lock();
@ -1023,8 +1021,8 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
HStoreFile sf = createStoreFileAndReader(dstPath); HStoreFile sf = createStoreFileAndReader(dstPath);
StoreFileReader r = sf.getReader(); StoreFileReader r = sf.getReader();
this.storeSize.addAndGet(r.length()); this.storeSize += r.length();
this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes()); this.totalUncompressedBytes += r.getTotalUncompressedBytes();
if (LOG.isInfoEnabled()) { if (LOG.isInfoEnabled()) {
LOG.info("Added " + sf + ", entries=" + r.getEntries() + LOG.info("Added " + sf + ", entries=" + r.getEntries() +
@ -1375,11 +1373,11 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
writeCompactionWalRecord(filesToCompact, sfs); writeCompactionWalRecord(filesToCompact, sfs);
replaceStoreFiles(filesToCompact, sfs); replaceStoreFiles(filesToCompact, sfs);
if (cr.isMajor()) { if (cr.isMajor()) {
majorCompactedCellsCount.addAndGet(getCompactionProgress().totalCompactingKVs); majorCompactedCellsCount += getCompactionProgress().totalCompactingKVs;
majorCompactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize); majorCompactedCellsSize += getCompactionProgress().totalCompactedSize;
} else { } else {
compactedCellsCount.addAndGet(getCompactionProgress().totalCompactingKVs); compactedCellsCount += getCompactionProgress().totalCompactingKVs;
compactedCellsSize.addAndGet(getCompactionProgress().totalCompactedSize); compactedCellsSize += getCompactionProgress().totalCompactedSize;
} }
long outputBytes = getTotalSize(sfs); long outputBytes = getTotalSize(sfs);
@ -1451,9 +1449,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
this.lock.writeLock().lock(); this.lock.writeLock().lock();
try { try {
this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result); this.storeEngine.getStoreFileManager().addCompactionResults(compactedFiles, result);
synchronized (filesCompacting) { filesCompacting.removeAll(compactedFiles); // safe bc: lock.writeLock();
filesCompacting.removeAll(compactedFiles);
}
} finally { } finally {
this.lock.writeLock().unlock(); this.lock.writeLock().unlock();
} }
@ -1482,7 +1478,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
} }
} }
message.append("total size for store is ") message.append("total size for store is ")
.append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1)) .append(StringUtils.TraditionalBinaryPrefix.long2String(storeSize, "", 1))
.append(". This selection was in queue for ") .append(". This selection was in queue for ")
.append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime())) .append(StringUtils.formatTimeDiff(compactionStartTime, cr.getSelectionTime()))
.append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime)) .append(", and took ").append(StringUtils.formatTimeDiff(now, compactionStartTime))
@ -1776,8 +1772,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
completeCompaction(delSfs); completeCompaction(delSfs);
LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in " LOG.info("Completed removal of " + delSfs.size() + " unnecessary (expired) file(s) in "
+ this + " of " + this.getRegionInfo().getRegionNameAsString() + this + " of " + this.getRegionInfo().getRegionNameAsString()
+ "; total size for store is " + "; total size for store is " + TraditionalBinaryPrefix.long2String(storeSize, "", 1));
+ TraditionalBinaryPrefix.long2String(storeSize.get(), "", 1));
} }
public void cancelRequestedCompaction(CompactionContext compaction) { public void cancelRequestedCompaction(CompactionContext compaction) {
@ -1831,16 +1826,16 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
@VisibleForTesting @VisibleForTesting
protected void completeCompaction(Collection<HStoreFile> compactedFiles) protected void completeCompaction(Collection<HStoreFile> compactedFiles)
throws IOException { throws IOException {
this.storeSize.set(0L); this.storeSize = 0L;
this.totalUncompressedBytes.set(0L); this.totalUncompressedBytes = 0L;
for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) { for (HStoreFile hsf : this.storeEngine.getStoreFileManager().getStorefiles()) {
StoreFileReader r = hsf.getReader(); StoreFileReader r = hsf.getReader();
if (r == null) { if (r == null) {
LOG.warn("StoreFile {} has a null Reader", hsf); LOG.warn("StoreFile {} has a null Reader", hsf);
continue; continue;
} }
this.storeSize.addAndGet(r.length()); this.storeSize += r.length();
this.totalUncompressedBytes.addAndGet(r.getTotalUncompressedBytes()); this.totalUncompressedBytes += r.getTotalUncompressedBytes();
} }
} }
@ -1901,7 +1896,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
@Override @Override
public long getSize() { public long getSize() {
return storeSize.get(); return storeSize;
} }
public void triggerMajorCompaction() { public void triggerMajorCompaction() {
@ -2048,7 +2043,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
@Override @Override
public long getStoreSizeUncompressed() { public long getStoreSizeUncompressed() {
return this.totalUncompressedBytes.get(); return this.totalUncompressedBytes;
} }
@Override @Override
@ -2240,9 +2235,9 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
committedFiles.add(sf.getPath()); committedFiles.add(sf.getPath());
} }
HStore.this.flushedCellsCount.addAndGet(cacheFlushCount); HStore.this.flushedCellsCount += cacheFlushCount;
HStore.this.flushedCellsSize.addAndGet(cacheFlushSize); HStore.this.flushedCellsSize += cacheFlushSize;
HStore.this.flushedOutputFileSize.addAndGet(outputFileSize); HStore.this.flushedOutputFileSize += outputFileSize;
// Add new file to store files. Clear snapshot too while we have the Store write lock. // Add new file to store files. Clear snapshot too while we have the Store write lock.
return HStore.this.updateStorefiles(storeFiles, snapshot.getId()); return HStore.this.updateStorefiles(storeFiles, snapshot.getId());
@ -2275,9 +2270,8 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
StoreFileInfo storeFileInfo = fs.getStoreFileInfo(getColumnFamilyName(), file); StoreFileInfo storeFileInfo = fs.getStoreFileInfo(getColumnFamilyName(), file);
HStoreFile storeFile = createStoreFileAndReader(storeFileInfo); HStoreFile storeFile = createStoreFileAndReader(storeFileInfo);
storeFiles.add(storeFile); storeFiles.add(storeFile);
HStore.this.storeSize.addAndGet(storeFile.getReader().length()); HStore.this.storeSize += storeFile.getReader().length();
HStore.this.totalUncompressedBytes HStore.this.totalUncompressedBytes += storeFile.getReader().getTotalUncompressedBytes();
.addAndGet(storeFile.getReader().getTotalUncompressedBytes());
if (LOG.isInfoEnabled()) { if (LOG.isInfoEnabled()) {
LOG.info("Region: " + HStore.this.getRegionInfo().getEncodedName() + LOG.info("Region: " + HStore.this.getRegionInfo().getEncodedName() +
" added " + storeFile + ", entries=" + storeFile.getReader().getEntries() + " added " + storeFile + ", entries=" + storeFile.getReader().getEntries() +
@ -2308,11 +2302,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
@Override @Override
public boolean needsCompaction() { public boolean needsCompaction() {
List<HStoreFile> filesCompactingClone = null; return this.storeEngine.needsCompaction(this.filesCompacting);
synchronized (filesCompacting) {
filesCompactingClone = Lists.newArrayList(filesCompacting);
}
return this.storeEngine.needsCompaction(filesCompactingClone);
} }
/** /**
@ -2325,7 +2315,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
} }
public static final long FIXED_OVERHEAD = public static final long FIXED_OVERHEAD =
ClassSize.align(ClassSize.OBJECT + (26 * ClassSize.REFERENCE) + (2 * Bytes.SIZEOF_LONG) ClassSize.align((long)ClassSize.OBJECT + (17 * ClassSize.REFERENCE) + (11 * Bytes.SIZEOF_LONG)
+ (5 * Bytes.SIZEOF_INT) + (2 * Bytes.SIZEOF_BOOLEAN)); + (5 * Bytes.SIZEOF_INT) + (2 * Bytes.SIZEOF_BOOLEAN));
public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD public static final long DEEP_OVERHEAD = ClassSize.align(FIXED_OVERHEAD
@ -2364,37 +2354,37 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
@Override @Override
public long getFlushedCellsCount() { public long getFlushedCellsCount() {
return flushedCellsCount.get(); return flushedCellsCount;
} }
@Override @Override
public long getFlushedCellsSize() { public long getFlushedCellsSize() {
return flushedCellsSize.get(); return flushedCellsSize;
} }
@Override @Override
public long getFlushedOutputFileSize() { public long getFlushedOutputFileSize() {
return flushedOutputFileSize.get(); return flushedOutputFileSize;
} }
@Override @Override
public long getCompactedCellsCount() { public long getCompactedCellsCount() {
return compactedCellsCount.get(); return compactedCellsCount;
} }
@Override @Override
public long getCompactedCellsSize() { public long getCompactedCellsSize() {
return compactedCellsSize.get(); return compactedCellsSize;
} }
@Override @Override
public long getMajorCompactedCellsCount() { public long getMajorCompactedCellsCount() {
return majorCompactedCellsCount.get(); return majorCompactedCellsCount;
} }
@Override @Override
public long getMajorCompactedCellsSize() { public long getMajorCompactedCellsSize() {
return majorCompactedCellsSize.get(); return majorCompactedCellsSize;
} }
/** /**

View File

@ -48,7 +48,7 @@ import org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesti
public class MemStoreCompactor { public class MemStoreCompactor {
public static final long DEEP_OVERHEAD = ClassSize public static final long DEEP_OVERHEAD = ClassSize
.align(ClassSize.OBJECT + 4 * ClassSize.REFERENCE .align((long)ClassSize.OBJECT + 4 * ClassSize.REFERENCE
// compactingMemStore, versionedList, isInterrupted, strategy (the reference) // compactingMemStore, versionedList, isInterrupted, strategy (the reference)
// "action" is an enum and thus it is a class with static final constants, // "action" is an enum and thus it is a class with static final constants,
// so counting only the size of the reference to it and not the size of the internals // so counting only the size of the reference to it and not the size of the internals

View File

@ -291,7 +291,7 @@ public class MultiVersionConcurrencyControl {
} }
public static final long FIXED_SIZE = ClassSize.align( public static final long FIXED_SIZE = ClassSize.align(
ClassSize.OBJECT + (long)ClassSize.OBJECT +
2 * Bytes.SIZEOF_LONG + 2 * Bytes.SIZEOF_LONG +
2 * ClassSize.REFERENCE); 2 * ClassSize.REFERENCE);
} }

View File

@ -51,7 +51,7 @@ public class ScanInfo {
private final long preadMaxBytes; private final long preadMaxBytes;
private final boolean newVersionBehavior; private final boolean newVersionBehavior;
public static final long FIXED_OVERHEAD = ClassSize.align(ClassSize.OBJECT public static final long FIXED_OVERHEAD = ClassSize.align((long)ClassSize.OBJECT
+ (2 * ClassSize.REFERENCE) + (2 * Bytes.SIZEOF_INT) + (2 * ClassSize.REFERENCE) + (2 * Bytes.SIZEOF_INT)
+ (4 * Bytes.SIZEOF_LONG) + (4 * Bytes.SIZEOF_BOOLEAN)); + (4 * Bytes.SIZEOF_LONG) + (4 * Bytes.SIZEOF_BOOLEAN));

View File

@ -48,7 +48,7 @@ import org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesti
@InterfaceAudience.Private @InterfaceAudience.Private
public abstract class Segment { public abstract class Segment {
public final static long FIXED_OVERHEAD = ClassSize.align(ClassSize.OBJECT public final static long FIXED_OVERHEAD = ClassSize.align((long)ClassSize.OBJECT
+ 6 * ClassSize.REFERENCE // cellSet, comparator, memStoreLAB, dataSize, + 6 * ClassSize.REFERENCE // cellSet, comparator, memStoreLAB, dataSize,
// heapSize, and timeRangeTracker // heapSize, and timeRangeTracker
+ Bytes.SIZEOF_LONG // minSequenceId + Bytes.SIZEOF_LONG // minSequenceId

View File

@ -751,7 +751,7 @@ public class FSHLog extends AbstractFSWAL<Writer> {
} }
public static final long FIXED_OVERHEAD = ClassSize public static final long FIXED_OVERHEAD = ClassSize
.align(ClassSize.OBJECT + (5 * ClassSize.REFERENCE) + ClassSize.ATOMIC_INTEGER .align((long)ClassSize.OBJECT + (5 * ClassSize.REFERENCE) + ClassSize.ATOMIC_INTEGER
+ Bytes.SIZEOF_INT + (3 * Bytes.SIZEOF_LONG)); + Bytes.SIZEOF_INT + (3 * Bytes.SIZEOF_LONG));
/** /**

View File

@ -979,7 +979,7 @@ public class WALSplitter {
internify(entry); internify(entry);
entryBuffer.add(entry); entryBuffer.add(entry);
long incrHeap = entry.getEdit().heapSize() + long incrHeap = entry.getEdit().heapSize() +
ClassSize.align(2 * ClassSize.REFERENCE) + // WALKey pointers ClassSize.align(2L * ClassSize.REFERENCE) + // WALKey pointers
0; // TODO linkedlist entry 0; // TODO linkedlist entry
heapInBuffer += incrHeap; heapInBuffer += incrHeap;
return incrHeap; return incrHeap;