-
Notifications
You must be signed in to change notification settings - Fork 721
Snapshot time-related cleanups #1487
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Snapshot time-related cleanups #1487
Conversation
- Make m_earliest_snapshot_ts and m_read_opts protected fields in
Rdb_transaction class. To replace
their previous public uses, introduce new methods get_snapshot_timestamp &
create_explicit_snapshot; use has_snapshot in more places.
Remove unused return value for rdb_tx_acquire_snapshot.
- Factor out Rdb_transaction::on_finish for the common code in on_commit and
on_rollback methods.
- Delete move constructor and move assignment operator for
Rdb_compact_filter_factory class, replace "{}" with "= default" for other
special members.
- Extract the gnarly regexes to make SHOW ENGINE ROCKSDB TRANSACTION STATUS
output deterministic to a separate include file
mysql-test/suite/rocksdb/include/show_transaction_status.inc
|
@sunshine-Chun has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
| virtual void release_snapshot(TABLE_TYPE table_type) = 0; | ||
|
|
||
| bool has_snapshot(TABLE_TYPE table_type) const { | ||
| assert(m_read_opts[INTRINSIC_TMP].snapshot == nullptr); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey Laurynas, I wonder why the snapshot for intrinsic tmp table is always null?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Temp tables are always private to the owning connection and don't need to participate in isolation concerns
|
This pull request has been merged in 1888f30. |
Summary:
- Make m_earliest_snapshot_ts and m_read_opts protected fields in
Rdb_transaction class. To replace
their previous public uses, introduce new methods get_snapshot_timestamp &
create_explicit_snapshot; use has_snapshot in more places.
Remove unused return value for rdb_tx_acquire_snapshot.
- Factor out Rdb_transaction::on_finish for the common code in on_commit and
on_rollback methods.
- Delete move constructor and move assignment operator for
Rdb_compact_filter_factory class, replace "{}" with "= default" for other
special members.
- Extract the gnarly regexes to make SHOW ENGINE ROCKSDB TRANSACTION STATUS
output deterministic to a separate include file
mysql-test/suite/rocksdb/include/show_transaction_status.inc
Pull Request resolved: facebook#1487
GitHub Author: Laurynas Biveinis <laurynas.biveinis@gmail.com>
Test Plan: Imported from GitHub, without a `Test Plan:` line.
Reviewers: rpan, #mysql_eng
Reviewed By: rpan
Differential Revision: https://phabricator.intern.facebook.com/D61214541
Rdb_transaction class. To replace
their previous public uses, introduce new methods get_snapshot_timestamp &
create_explicit_snapshot; use has_snapshot in more places.
Remove unused return value for rdb_tx_acquire_snapshot.
on_rollback methods.
Rdb_compact_filter_factory class, replace "{}" with "= default" for other
special members.
output deterministic to a separate include file
mysql-test/suite/rocksdb/include/show_transaction_status.inc