[ https://issues.apache.org/jira/browse/IGNITE-19886?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladislav Pyatkov updated IGNITE-19886: --------------------------------------- Description: *Motivation* The commit timestamp is generated in a transaction coordinator for a particular transaction at the time when the transaction is committed. Any other node cannot get the timestamp through API. A client node cannot be the transaction coordinator (because the role is server only), but the client has to use this timestamp to track observation one. *Implementation notes* Extend interface of {{InternalTransaction}} with method: {code} /** * Fixes transaction and returns a commit transaction timestamp. * * @param commit True when the transaction committed, false is rolled back. * @return Future with commit timestamp or {@code null} if timestamp is not specified for the transaction type. */ CompletableFuture<HybridTinmstamp> finish(boolean commit); {code} *Definition of done* Transaction commit timestamp can be got through API of {{InternalTransaction}}. was: *Motivation* The commit timestamp is generated in a transaction coordinator for a particular transaction at the time when the transaction is committed. Any other node cannot get the timestamp through API. A client node cannot be the transaction coordinator (because the role is server only), but the client has to use this timestamp to track observation one. *Implementation notes* Extend interface of {{InternalTransaction}} with method: {code} /** * Fixes transaction. * * @param commit True when the transaction committed, false is rolled back. * @return Future with commit timestamp or {@code null} if timestamp is not specified for the transaction type. */ CompletableFuture<HybridTinmstamp> finish(boolean commit); {code} *Definition of done* Transaction commit timestamp can be got through API of {{InternalTransaction}}. > Retrive commit timestamp > ------------------------ > > Key: IGNITE-19886 > URL: https://issues.apache.org/jira/browse/IGNITE-19886 > Project: Ignite > Issue Type: Improvement > Reporter: Vladislav Pyatkov > Priority: Major > Labels: ignite-3 > > *Motivation* > The commit timestamp is generated in a transaction coordinator for a > particular transaction at the time when the transaction is committed. Any > other node cannot get the timestamp through API. A client node cannot be the > transaction coordinator (because the role is server only), but the client has > to use this timestamp to track observation one. > *Implementation notes* > Extend interface of {{InternalTransaction}} with method: > {code} > /** > * Fixes transaction and returns a commit transaction timestamp. > * > * @param commit True when the transaction committed, false is rolled back. > * @return Future with commit timestamp or {@code null} if timestamp is not > specified for the transaction type. > */ > CompletableFuture<HybridTinmstamp> finish(boolean commit); > {code} > *Definition of done* > Transaction commit timestamp can be got through API of > {{InternalTransaction}}. -- This message was sent by Atlassian Jira (v8.20.10#820010)