@InterfaceAudience.Public @InterfaceStability.Stable public class Increment extends Mutation implements Comparable<Row>
This operation ensures atomicity to readers. Increments are done under a single row lock, so write operations to a row are synchronized, and readers are guaranteed to see this operation fully completed.
To increment columns of a row, instantiate an Increment object with the row
to increment. At least one column to increment must be specified using the
addColumn(byte[], byte[], long) method.
durability, familyMap, MUTATION_OVERHEAD, RETURN_RESULTS, row, tsID_ATRIBUTE| Constructor and Description |
|---|
Increment(byte[] row)
Create a Increment operation for the specified row.
|
Increment(byte[] row,
int offset,
int length)
Create a Increment operation for the specified row.
|
Increment(Increment i)
Copy constructor
|
| Modifier and Type | Method and Description |
|---|---|
Increment |
add(Cell cell)
Add the specified KeyValue to this operation.
|
Increment |
addColumn(byte[] family,
byte[] qualifier,
long amount)
Increment the column from the specific family with the specified qualifier
by the specified amount.
|
int |
compareTo(Row i) |
boolean |
equals(Object obj) |
protected long |
extraHeapSize()
Subclasses should override this method to add the heap size of their own fields.
|
Map<byte[],NavigableMap<byte[],Long>> |
getFamilyMapOfLongs()
Before 0.95, when you called Increment#getFamilyMap(), you got back
a map of families to a list of Longs.
|
TimeRange |
getTimeRange()
Gets the TimeRange used for this increment.
|
boolean |
hasFamilies()
Method for checking if any families have been inserted into this Increment
|
int |
hashCode() |
boolean |
isReturnResults() |
int |
numFamilies()
Method for retrieving the number of families to increment from
|
Increment |
setACL(Map<String,Permission> perms) |
Increment |
setACL(String user,
Permission perms) |
Increment |
setAttribute(String name,
byte[] value)
Sets an attribute.
|
Increment |
setCellVisibility(CellVisibility expression)
Sets the visibility expression associated with cells in this Mutation.
|
Increment |
setClusterIds(List<UUID> clusterIds)
Marks that the clusters with the given clusterIds have consumed the mutation
|
Increment |
setDurability(Durability d)
Set the durability for this mutation
|
Increment |
setFamilyCellMap(NavigableMap<byte[],List<Cell>> map)
Method for setting the put's familyMap
|
Increment |
setFamilyMap(NavigableMap<byte[],List<KeyValue>> map)
Deprecated.
|
Increment |
setId(String id)
This method allows you to set an identifier on an operation.
|
Increment |
setPriority(int priority) |
Increment |
setReturnResults(boolean returnResults) |
Increment |
setTimeRange(long minStamp,
long maxStamp)
Sets the TimeRange to be used on the Get for this increment.
|
Increment |
setTTL(long ttl)
Set the TTL desired for the result of the mutation, in milliseconds.
|
Increment |
setWriteToWAL(boolean write)
Deprecated.
|
String |
toString()
Produces a string representation of this Operation.
|
cellScanner, getACL, getCellVisibility, getClusterIds, getDurability, getFamilyCellMap, getFamilyMap, getFingerprint, getRow, getTimeStamp, getTTL, getWriteToWAL, heapSize, isEmpty, size, toMapgetAttribute, getAttributeSize, getAttributesMap, getId, getPrioritypublic Increment(byte[] row)
At least one column must be incremented.
row - row key (we will make a copy of this).public Increment(byte[] row,
int offset,
int length)
At least one column must be incremented.
row - row key (we will make a copy of this).public Increment(Increment i)
i - public Increment add(Cell cell) throws IOException
cell - individual CellIOException - epublic Increment addColumn(byte[] family, byte[] qualifier, long amount)
Overrides previous calls to addColumn for this family and qualifier.
family - family namequalifier - column qualifieramount - amount to increment bypublic TimeRange getTimeRange()
public Increment setTimeRange(long minStamp, long maxStamp) throws IOException
This is useful for when you have counters that only last for specific periods of time (ie. counters that are partitioned by time). By setting the range of valid times for this increment, you can potentially gain some performance with a more optimal Get operation.
This range is used as [minStamp, maxStamp).
minStamp - minimum timestamp value, inclusivemaxStamp - maximum timestamp value, exclusiveIOException - if invalid time rangepublic Increment setReturnResults(boolean returnResults)
setReturnResults in class MutationreturnResults - True (default) if the increment operation should return the results. A
client that is not interested in the result can save network bandwidth setting this
to false.public boolean isReturnResults()
isReturnResults in class Mutationpublic int numFamilies()
numFamilies in class Mutationpublic boolean hasFamilies()
public Map<byte[],NavigableMap<byte[],Long>> getFamilyMapOfLongs()
Mutation.getFamilyCellMap() returns
families by list of Cells. This method has been added so you can have the
old behavior.public String toString()
Operationpublic int compareTo(Row i)
compareTo in interface Comparable<Row>compareTo in class Mutationprotected long extraHeapSize()
MutationextraHeapSize in class Mutationpublic Increment setAttribute(String name, byte[] value)
AttributessetAttribute in interface AttributessetAttribute in class OperationWithAttributesname - attribute namevalue - attribute valuepublic Increment setId(String id)
OperationWithAttributessetId in class OperationWithAttributesid - id to set for the scan@Deprecated public Increment setWriteToWAL(boolean write)
MutationMutation.setDurability(Durability)setWriteToWAL in class Mutationwrite - true if edits should be written to WAL, false if notpublic Increment setDurability(Durability d)
MutationsetDurability in class Mutationpublic Increment setFamilyCellMap(NavigableMap<byte[],List<Cell>> map)
MutationsetFamilyCellMap in class Mutation@Deprecated public Increment setFamilyMap(NavigableMap<byte[],List<KeyValue>> map)
MutationsetFamilyMap in class Mutationpublic Increment setClusterIds(List<UUID> clusterIds)
MutationsetClusterIds in class MutationclusterIds - of the clusters that have consumed the mutationpublic Increment setCellVisibility(CellVisibility expression)
MutationsetCellVisibility in class Mutationpublic Increment setACL(String user, Permission perms)
public Increment setACL(Map<String,Permission> perms)
public Increment setTTL(long ttl)
Mutationpublic Increment setPriority(int priority)
setPriority in class OperationWithAttributesCopyright © 2007–2019 The Apache Software Foundation. All rights reserved.