Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Done
-
None
-
None
Description
Motivation
Reorganization of processing of RO transaction requires choosing a specific timestamp for an implicit RO SQL transaction.
Implementation notes
- Observable timestamp is passed through API and propagate to SQL engine.
- SQL uses the observable timestamp when it has to start RO transaction (
IGNITE-19887is used to start RO transaction with specified observable timestamp). - Read timestamp, that is got through transaction API ReadOnlyTransactionImpl#readTimestamp, should to be available for invoking side.
Definition of done
- Select in an implicit transaction should execute with an observable timestamp (see TODO in ClientSqlExecuteRequest). A read timestamp, which is used for RO transaction calculation, returns to the invoking side.
Attachments
Issue Links
- blocks
-
IGNITE-20232 Java client: Propagate observable timestamp to sql engine using internal API
- Open
-
IGNITE-19888 Java client: Track observable timestamp
- Resolved
-
IGNITE-19889 Implement observable timestamp on server
- Resolved
-
IGNITE-20056 .NET: Thin 3.0: Track observable timestamp
- Resolved
-
IGNITE-20057 C++ client: Track observable timestamp
- Resolved
-
IGNITE-20233 jdbc: Propagate observable timestamp to sql-engine.
- Resolved
- is blocked by
-
IGNITE-19887 Transfer observable timestamp to read-only transaction
- Resolved
- links to