slfan1989 commented on code in PR #5443:
URL: https://github.com/apache/hadoop/pull/5443#discussion_r1122958706
##########
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/token/delegation/AbstractDelegationTokenSecretManager.java:
##########
@@ -419,31 +427,32 @@ public synchronized void addPersistedDelegationToken(
}
}
- /**
- * Update the current master key
- * This is called once by startThreads before tokenRemoverThread is created,
+ /**
+ * Update the current master key
+ * This is called once by startThreads before tokenRemoverThread is created,
* and only by tokenRemoverThread afterwards.
*/
- private void updateCurrentKey() throws IOException {
+ protected void updateCurrentKey() throws IOException {
LOG.info("Updating the current master key for generating delegation
tokens");
/* Create a new currentKey with an estimated expiry date. */
int newCurrentId;
synchronized (this) {
- newCurrentId = incrementCurrentKeyId();
+ newCurrentId = generateNewKeyId();
Review Comment:
> yes but there is no requirement to only increment keys 1 by 1. we only
require to generate new unique keys. hence the name change to clearly reflect
that requirement.
The performance of the database (Mysql) should be better, increase one by
one, the performance should be ok.
ZK We are applying for multiple ids at one time.
Users can configure the parameter
`zk-dt-secret-manager.token.seqnum.batch.size` to apply for multiple
`sequenceNum` at a time.
ZookeeperFederationStateStore#incrSharedCount
```
private int incrSharedCount(SharedCount sharedCount, int batchSize)
throws Exception {
while (true) {
// Loop until we successfully increment the counter
VersionedValue<Integer> versionedValue =
sharedCount.getVersionedValue();
if (sharedCount.trySetCount(versionedValue, versionedValue.getValue()
+ batchSize)) {
return versionedValue.getValue();
}
}
}
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]