org.apache.cassandra.db
Class CounterUpdateColumn

java.lang.Object
  extended by org.apache.cassandra.db.Column
      extended by org.apache.cassandra.db.CounterUpdateColumn
All Implemented Interfaces:
IColumn

public class CounterUpdateColumn
extends Column

A counter update while it hasn't been applied yet by the leader replica. Contains a single counter update. When applied by the leader replica, this is transformed to a relevant CounterColumn. This Column is a temporary data structure that should never be stored inside a memtable or an sstable.


Field Summary
 
Fields inherited from class org.apache.cassandra.db.Column
name, timestamp, value
 
Fields inherited from interface org.apache.cassandra.db.IColumn
MAX_NAME_LENGTH
 
Constructor Summary
CounterUpdateColumn(java.nio.ByteBuffer name, java.nio.ByteBuffer value, long timestamp)
           
CounterUpdateColumn(java.nio.ByteBuffer name, long value, long timestamp)
           
 
Method Summary
 long delta()
           
 IColumn diff(IColumn column)
           
 CounterColumn localCopy(ColumnFamilyStore cfs)
          clones the column for the row cache, interning column names and making copies of other underlying byte buffers
 IColumn localCopy(ColumnFamilyStore cfs, Allocator allocator)
          clones the column for the memtable, interning column names and making copies of other underlying byte buffers.
 IColumn reconcile(IColumn column, Allocator allocator)
           
 int serializationFlags()
           
 
Methods inherited from class org.apache.cassandra.db.Column
addColumn, addColumn, equals, getLocalDeletionTime, getMarkedForDeleteAt, getString, getSubColumn, getSubColumns, hasExpiredTombstones, hashCode, isLive, isMarkedForDelete, maxTimestamp, mostRecentLiveChangeAt, name, reconcile, serializedSize, serializer, size, timestamp, updateDigest, validateFields, validateName, value
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CounterUpdateColumn

public CounterUpdateColumn(java.nio.ByteBuffer name,
                           long value,
                           long timestamp)

CounterUpdateColumn

public CounterUpdateColumn(java.nio.ByteBuffer name,
                           java.nio.ByteBuffer value,
                           long timestamp)
Method Detail

delta

public long delta()

diff

public IColumn diff(IColumn column)
Specified by:
diff in interface IColumn
Overrides:
diff in class Column

reconcile

public IColumn reconcile(IColumn column,
                         Allocator allocator)
Specified by:
reconcile in interface IColumn
Overrides:
reconcile in class Column

serializationFlags

public int serializationFlags()
Specified by:
serializationFlags in interface IColumn
Overrides:
serializationFlags in class Column

localCopy

public CounterColumn localCopy(ColumnFamilyStore cfs)
Description copied from interface: IColumn
clones the column for the row cache, interning column names and making copies of other underlying byte buffers

Specified by:
localCopy in interface IColumn
Overrides:
localCopy in class Column

localCopy

public IColumn localCopy(ColumnFamilyStore cfs,
                         Allocator allocator)
Description copied from interface: IColumn
clones the column for the memtable, interning column names and making copies of other underlying byte buffers. Unlike the other localCopy, this uses Allocator to allocate values in contiguous memory regions, which helps avoid heap fragmentation.

Specified by:
localCopy in interface IColumn
Overrides:
localCopy in class Column


Copyright © 2011 The Apache Software Foundation