diff options
Diffstat (limited to 'core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java')
-rw-r--r-- | core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java b/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java index 6283e69a02..b4cfbb6ad8 100644 --- a/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java +++ b/core/src/main/java/org/elasticsearch/action/support/replication/ReplicationRequest.java @@ -51,6 +51,8 @@ public abstract class ReplicationRequest<Request extends ReplicationRequest<Requ */ protected ShardId shardId; + long primaryTerm; + protected TimeValue timeout = DEFAULT_TIMEOUT; protected String index; @@ -148,6 +150,16 @@ public abstract class ReplicationRequest<Request extends ReplicationRequest<Requ return routedBasedOnClusterVersion; } + /** returns the primary term active at the time the operation was performed on the primary shard */ + public long primaryTerm() { + return primaryTerm; + } + + /** marks the primary term in which the operation was performed */ + public void primaryTerm(long term) { + primaryTerm = term; + } + @Override public ActionRequestValidationException validate() { ActionRequestValidationException validationException = null; @@ -169,6 +181,7 @@ public abstract class ReplicationRequest<Request extends ReplicationRequest<Requ timeout = TimeValue.readTimeValue(in); index = in.readString(); routedBasedOnClusterVersion = in.readVLong(); + primaryTerm = in.readVLong(); } @Override @@ -184,6 +197,7 @@ public abstract class ReplicationRequest<Request extends ReplicationRequest<Requ timeout.writeTo(out); out.writeString(index); out.writeVLong(routedBasedOnClusterVersion); + out.writeVLong(primaryTerm); } @Override |