[ 
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)

Reply via email to