diff options
4 files changed, 18 insertions, 4 deletions
diff --git a/src/third_party/wiredtiger/import.data b/src/third_party/wiredtiger/import.data index b907d93cd35..fd27d48203b 100644 --- a/src/third_party/wiredtiger/import.data +++ b/src/third_party/wiredtiger/import.data @@ -2,5 +2,5 @@ "vendor": "wiredtiger", "github": "wiredtiger/wiredtiger.git", "branch": "mongodb-master", - "commit": "2d48d69564f24dce5edf3384431b617194864a27" + "commit": "b6211d1f751d9d4eadf7f5c790505efd56bc24cc" } diff --git a/src/third_party/wiredtiger/src/include/session.h b/src/third_party/wiredtiger/src/include/session.h index b5a7479f763..a51284d4a0f 100644 --- a/src/third_party/wiredtiger/src/include/session.h +++ b/src/third_party/wiredtiger/src/include/session.h @@ -64,9 +64,10 @@ struct __wt_session_impl { u_int active; /* Non-zero if the session is in-use */ - const char *name; /* Name */ - const char *lastop; /* Last operation */ - uint32_t id; /* UID, offset in session array */ + const char *name; /* Name */ + const char *lastop; /* Last operation */ + const char *debug_8392; /* Debug string */ + uint32_t id; /* UID, offset in session array */ uint64_t cache_wait_us; /* Wait time for cache for current operation */ uint64_t operation_start_us; /* Operation start */ diff --git a/src/third_party/wiredtiger/src/os_posix/os_fs.c b/src/third_party/wiredtiger/src/os_posix/os_fs.c index 1ae6259e5d8..8b17146f784 100644 --- a/src/third_party/wiredtiger/src/os_posix/os_fs.c +++ b/src/third_party/wiredtiger/src/os_posix/os_fs.c @@ -612,6 +612,9 @@ __posix_file_write( "%s: handle-write: pwrite: failed to write %" WT_SIZET_FMT " bytes at offset %" PRIuMAX, file_handle->name, chunk, (uintmax_t)offset); + if (session->debug_8392 != NULL) + WT_RET(__wt_msg(session, "pwrite: %s: %s: wrote at offset %" PRIu64 " len %" PRIu64, + file_handle->name, session->debug_8392, (uint64_t)offset, (uint64_t)len)); } WT_STAT_CONN_INCRV(session, block_byte_write_syscall, len); return (0); diff --git a/src/third_party/wiredtiger/test/csuite/timestamp_abort/main.c b/src/third_party/wiredtiger/test/csuite/timestamp_abort/main.c index 22593ccc7c3..1f64a67af5f 100644 --- a/src/third_party/wiredtiger/test/csuite/timestamp_abort/main.c +++ b/src/third_party/wiredtiger/test/csuite/timestamp_abort/main.c @@ -284,6 +284,7 @@ thread_run(void *arg) uint64_t i, active_ts; char cbuf[MAX_VAL], lbuf[MAX_VAL], obuf[MAX_VAL]; char kname[64], tscfg[64], uri[128]; + char private[128]; bool durable_ahead_commit, use_prep; __wt_random_init(&rnd); @@ -291,6 +292,7 @@ thread_run(void *arg) memset(lbuf, 0, sizeof(lbuf)); memset(obuf, 0, sizeof(obuf)); memset(kname, 0, sizeof(kname)); + memset(private, 0, sizeof(private)); prepared_session = NULL; td = (THREAD_DATA *)arg; @@ -353,6 +355,8 @@ thread_run(void *arg) */ printf("Thread %" PRIu32 " starts at %" PRIu64 "\n", td->info, td->start); active_ts = 0; + if (stress) + ((WT_SESSION_IMPL *)session)->debug_8392 = private; for (i = td->start;; ++i) { testutil_check(session->begin_transaction(session, NULL)); if (use_prep) @@ -379,6 +383,9 @@ thread_run(void *arg) cur_shadow->set_key(cur_shadow, i + 1); } else { testutil_check(__wt_snprintf(kname, sizeof(kname), KEY_STRINGFORMAT, i)); + if (stress) + testutil_check( + __wt_snprintf(private, sizeof(private), "TID %" PRIu32 ":%s", td->info, kname)); cur_coll->set_key(cur_coll, kname); cur_local->set_key(cur_local, kname); cur_oplog->set_key(cur_oplog, kname); @@ -453,6 +460,9 @@ thread_run(void *arg) */ data.size = __wt_random(&rnd) % MAX_VAL; data.data = lbuf; + if (stress) + testutil_check( + __wt_snprintf(private, sizeof(private), "TID LOCAL %" PRIu32 ":%s", td->info, kname)); cur_local->set_value(cur_local, &data); testutil_check(cur_local->insert(cur_local)); |