Adding application state to lease copy
This commit is contained in:
parent
b335246a30
commit
ddaf714a09
4 changed files with 8 additions and 5 deletions
|
|
@ -102,13 +102,13 @@ public class Lease {
|
||||||
protected Lease(Lease lease) {
|
protected Lease(Lease lease) {
|
||||||
this(lease.leaseKey(), lease.leaseOwner(), lease.leaseCounter(), lease.concurrencyToken(),
|
this(lease.leaseKey(), lease.leaseOwner(), lease.leaseCounter(), lease.concurrencyToken(),
|
||||||
lease.lastCounterIncrementNanos(), lease.checkpoint(), lease.pendingCheckpoint(),
|
lease.lastCounterIncrementNanos(), lease.checkpoint(), lease.pendingCheckpoint(),
|
||||||
lease.ownerSwitchesSinceCheckpoint(), lease.parentShardIds());
|
lease.ownerSwitchesSinceCheckpoint(), lease.parentShardIds(), lease.pendingCheckpointState());
|
||||||
}
|
}
|
||||||
|
|
||||||
public Lease(final String leaseKey, final String leaseOwner, final Long leaseCounter,
|
public Lease(final String leaseKey, final String leaseOwner, final Long leaseCounter,
|
||||||
final UUID concurrencyToken, final Long lastCounterIncrementNanos,
|
final UUID concurrencyToken, final Long lastCounterIncrementNanos,
|
||||||
final ExtendedSequenceNumber checkpoint, final ExtendedSequenceNumber pendingCheckpoint,
|
final ExtendedSequenceNumber checkpoint, final ExtendedSequenceNumber pendingCheckpoint,
|
||||||
final Long ownerSwitchesSinceCheckpoint, final Set<String> parentShardIds) {
|
final Long ownerSwitchesSinceCheckpoint, final Set<String> parentShardIds, final byte[] pendingCheckpointState) {
|
||||||
this.leaseKey = leaseKey;
|
this.leaseKey = leaseKey;
|
||||||
this.leaseOwner = leaseOwner;
|
this.leaseOwner = leaseOwner;
|
||||||
this.leaseCounter = leaseCounter;
|
this.leaseCounter = leaseCounter;
|
||||||
|
|
@ -120,6 +120,7 @@ public class Lease {
|
||||||
if (parentShardIds != null) {
|
if (parentShardIds != null) {
|
||||||
this.parentShardIds.addAll(parentShardIds);
|
this.parentShardIds.addAll(parentShardIds);
|
||||||
}
|
}
|
||||||
|
this.pendingCheckpointState = pendingCheckpointState;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -139,6 +140,7 @@ public class Lease {
|
||||||
ownerSwitchesSinceCheckpoint(lease.ownerSwitchesSinceCheckpoint());
|
ownerSwitchesSinceCheckpoint(lease.ownerSwitchesSinceCheckpoint());
|
||||||
checkpoint(lease.checkpoint);
|
checkpoint(lease.checkpoint);
|
||||||
pendingCheckpoint(lease.pendingCheckpoint);
|
pendingCheckpoint(lease.pendingCheckpoint);
|
||||||
|
pendingCheckpointState(lease.pendingCheckpointState);
|
||||||
parentShardIds(lease.parentShardIds);
|
parentShardIds(lease.parentShardIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -969,7 +969,7 @@ public class HierarchicalShardSyncerTest {
|
||||||
parentShardIds.add(shard.adjacentParentShardId());
|
parentShardIds.add(shard.adjacentParentShardId());
|
||||||
}
|
}
|
||||||
return new Lease(shard.shardId(), leaseOwner, 0L, UUID.randomUUID(), 0L, checkpoint, null, 0L,
|
return new Lease(shard.shardId(), leaseOwner, 0L, UUID.randomUUID(), 0L, checkpoint, null, 0L,
|
||||||
parentShardIds);
|
parentShardIds, null);
|
||||||
}).collect(Collectors.toList());
|
}).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,9 +34,10 @@ public class LeaseBuilder {
|
||||||
private ExtendedSequenceNumber pendingCheckpoint;
|
private ExtendedSequenceNumber pendingCheckpoint;
|
||||||
private Long ownerSwitchesSinceCheckpoint = 0L;
|
private Long ownerSwitchesSinceCheckpoint = 0L;
|
||||||
private Set<String> parentShardIds = new HashSet<>();
|
private Set<String> parentShardIds = new HashSet<>();
|
||||||
|
private byte[] pendingCheckpointState;
|
||||||
|
|
||||||
public Lease build() {
|
public Lease build() {
|
||||||
return new Lease(leaseKey, leaseOwner, leaseCounter, concurrencyToken, lastCounterIncrementNanos,
|
return new Lease(leaseKey, leaseOwner, leaseCounter, concurrencyToken, lastCounterIncrementNanos,
|
||||||
checkpoint, pendingCheckpoint, ownerSwitchesSinceCheckpoint, parentShardIds);
|
checkpoint, pendingCheckpoint, ownerSwitchesSinceCheckpoint, parentShardIds, pendingCheckpointState);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -55,7 +55,7 @@ public class DynamoDBLeaseRenewerTest {
|
||||||
private LeaseRefresher leaseRefresher;
|
private LeaseRefresher leaseRefresher;
|
||||||
|
|
||||||
private static Lease newLease(String leaseKey) {
|
private static Lease newLease(String leaseKey) {
|
||||||
return new Lease(leaseKey, "LeaseOwner", 0L, UUID.randomUUID(), System.nanoTime(), null, null, null, new HashSet<>());
|
return new Lease(leaseKey, "LeaseOwner", 0L, UUID.randomUUID(), System.nanoTime(), null, null, null, new HashSet<>(), null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue