diff options
Diffstat (limited to 'src/third_party/wiredtiger/src/session/session_api.c')
-rw-r--r-- | src/third_party/wiredtiger/src/session/session_api.c | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/src/third_party/wiredtiger/src/session/session_api.c b/src/third_party/wiredtiger/src/session/session_api.c index 03827e3e76d..871b3945ec9 100644 --- a/src/third_party/wiredtiger/src/session/session_api.c +++ b/src/third_party/wiredtiger/src/session/session_api.c @@ -1748,7 +1748,8 @@ err: /* * __session_timestamp_transaction -- - * WT_SESSION->timestamp_transaction method. + * WT_SESSION->timestamp_transaction method. Also see __session_timestamp_transaction_uint if + * config parsing is a performance issue. */ static int __session_timestamp_transaction(WT_SESSION *wt_session, const char *config) @@ -1770,6 +1771,24 @@ err: } /* + * __session_timestamp_transaction_uint -- + * WT_SESSION->timestamp_transaction_uint method. + */ +static int +__session_timestamp_transaction_uint(WT_SESSION *wt_session, WT_TS_TXN_TYPE which, uint64_t ts) +{ + WT_DECL_RET; + WT_SESSION_IMPL *session; + + session = (WT_SESSION_IMPL *)wt_session; + SESSION_API_CALL_PREPARE_ALLOWED_NOCONF(session, timestamp_transaction_uint); + + ret = __wt_txn_set_timestamp_uint(session, which, (wt_timestamp_t)ts); +err: + API_END_RET(session, ret); +} + +/* * __session_query_timestamp -- * WT_SESSION->query_timestamp method. */ @@ -1962,8 +1981,9 @@ __open_session(WT_CONNECTION_IMPL *conn, WT_EVENT_HANDLER *event_handler, const __session_log_printf, __session_rename, __session_reset, __session_salvage, __session_truncate, __session_upgrade, __session_verify, __session_begin_transaction, __session_commit_transaction, __session_prepare_transaction, __session_reset_snapshot, - __session_rollback_transaction, __session_timestamp_transaction, __session_query_timestamp, - __session_checkpoint, __session_transaction_pinned_range, __wt_session_breakpoint}, + __session_rollback_transaction, __session_timestamp_transaction, + __session_timestamp_transaction_uint, __session_query_timestamp, __session_checkpoint, + __session_transaction_pinned_range, __wt_session_breakpoint}, stds_readonly = {NULL, NULL, __session_close, __session_reconfigure, __session_flush_tier, __wt_session_strerror, __session_open_cursor, __session_alter_readonly, __session_create_readonly, __wt_session_compact_readonly, __session_drop_readonly, @@ -1972,7 +1992,8 @@ __open_session(WT_CONNECTION_IMPL *conn, WT_EVENT_HANDLER *event_handler, const __session_truncate_readonly, __session_upgrade_readonly, __session_verify, __session_begin_transaction, __session_commit_transaction, __session_prepare_transaction_readonly, __session_reset_snapshot, - __session_rollback_transaction, __session_timestamp_transaction, __session_query_timestamp, + __session_rollback_transaction, __session_timestamp_transaction, + __session_timestamp_transaction_uint, __session_query_timestamp, __session_checkpoint_readonly, __session_transaction_pinned_range, __wt_session_breakpoint}; WT_DECL_RET; WT_SESSION_IMPL *session, *session_ret; |