Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
We need to add a new top level page to explain transactions and their behavior from the user point of view:
- How to configure a new/existing table to be transactional (CREATE TABLE and ALTER TABLE ... TRANSACTIONAL=true). Also that it's currently a one-way street - you cannot make a transactional table non transactional (PHOENIX-2439).
- Transaction implicitly started when first statement run against a transactional table
- Indexes on transactional table are transactional with data table.
- Exception raised if transaction committed that conflicts (at row level) with other committed transaction.
- Queries do not see commits of other transactions until transaction is ended (rolled back or committed).
- Transaction will see their own updates (read-your-own-write behavior).
- Requires that transaction manager is started (and how to start it).
- Various configuration options specific to transactions
- Invalid list - how it can potentially grow and how to manually clear it if necessary.
- Unsupported behavior: for example, certain TTL behavior, no SCN.
We also need to adjust existing web pages that currently says we don't support full ACID and promote this new capability.