diff --git a/src/block_cache/block_io.c b/src/block_cache/block_io.c
index f1fd11e4e..b2cb09be2 100644
--- a/src/block_cache/block_io.c
+++ b/src/block_cache/block_io.c
@@ -211,7 +211,7 @@ verify:
         if (tmp == NULL)
             WT_ERR(__wt_scr_alloc(session, 4 * 1024, &tmp));
         WT_ERR(bm->addr_string(bm, session, tmp, addr, addr_size));
-        WT_ERR(__wt_verify_dsk(session, tmp->data, buf));
+        WT_ERR(__wt_verify_dsk_non_fatal(session, tmp->data, buf));
     }
 
 err:
diff --git a/src/btree/bt_discard.c b/src/btree/bt_discard.c
index b5408d29e..2d8bdf626 100644
--- a/src/btree/bt_discard.c
+++ b/src/btree/bt_discard.c
@@ -60,6 +60,10 @@ __wt_page_out(WT_SESSION_IMPL *session, WT_PAGE **pagep)
     WT_PAGE *page;
     WT_PAGE_HEADER *dsk;
     WT_PAGE_MODIFY *mod;
+#ifdef HAVE_DIAGNOSTIC
+    uint8_t dbg_flags;
+    WT_SESSION_IMPL *dbg_reconciling_session;
+#endif
 
     /*
      * Kill our caller's reference, do our best to catch races.
@@ -67,6 +71,16 @@ __wt_page_out(WT_SESSION_IMPL *session, WT_PAGE **pagep)
     page = *pagep;
     *pagep = NULL;
 
+#ifdef HAVE_DIAGNOSTIC
+    if (page->modify != NULL) {
+        dbg_flags = page->modify->flags;
+        dbg_reconciling_session = page->modify->reconciling_session;
+        WT_READ_BARRIER();
+        WT_UNUSED(dbg_flags);
+        WT_ASSERT(session, dbg_reconciling_session == NULL);
+    }
+#endif
+
     /*
      * Unless we have a dead handle or we're closing the database, we should never discard a dirty
      * page. We do ordinary eviction from dead trees until sweep gets to them, so we may not in the
@@ -272,10 +286,24 @@ void
 __wt_free_ref(WT_SESSION_IMPL *session, WT_REF *ref, int page_type, bool free_pages)
 {
     WT_IKEY *ikey;
+#ifdef HAVE_DIAGNOSTIC
+    uint8_t dbg_flags;
+    WT_SESSION_IMPL *dbg_reconciling_session;
+#endif
 
     if (ref == NULL)
         return;
 
+#ifdef HAVE_DIAGNOSTIC
+    if (ref->page != NULL && ref->page->modify != NULL) {
+        dbg_flags = ref->page->modify->flags;
+        dbg_reconciling_session = ref->page->modify->reconciling_session;
+        WT_READ_BARRIER();
+        WT_UNUSED(dbg_flags);
+        WT_ASSERT(session, dbg_reconciling_session == NULL);
+    }
+#endif
+
     /*
      * We create WT_REFs in many places, assert a WT_REF has been configured as either an internal
      * page or a leaf page, to catch any we've missed.
diff --git a/src/btree/bt_handle.c b/src/btree/bt_handle.c
index f2cbb05fd..f7b47459b 100644
--- a/src/btree/bt_handle.c
+++ b/src/btree/bt_handle.c
@@ -633,7 +633,7 @@ __wt_btree_tree_open(WT_SESSION_IMPL *session, const uint8_t *addr, size_t addr_
 
     F_SET(session, WT_SESSION_QUIET_CORRUPT_FILE);
     if ((ret = __wt_blkcache_read(session, &dsk, addr, addr_size)) == 0)
-        ret = __wt_verify_dsk(session, tmp->data, &dsk);
+        ret = __wt_verify_dsk_non_fatal(session, tmp->data, &dsk);
     /*
      * Flag any failed read or verification: if we're in startup, it may be fatal.
      */
diff --git a/src/btree/bt_slvg.c b/src/btree/bt_slvg.c
index b5704e704..3c9effd04 100644
--- a/src/btree/bt_slvg.c
+++ b/src/btree/bt_slvg.c
@@ -495,7 +495,7 @@ __slvg_read(WT_SESSION_IMPL *session, WT_STUFF *ss)
          * the end of the file or overflow references to non-existent pages, might as well discard
          * these pages now.
          */
-        if (__wt_verify_dsk(session, as->data, buf) != 0) {
+        if (__wt_verify_dsk_non_fatal(session, as->data, buf) != 0) {
             __wt_verbose(session, WT_VERB_SALVAGE, "%s page failed verify %s",
               __wt_page_type_string(dsk->type), (const char *)as->data);
             WT_ERR(bm->free(bm, session, addr, addr_size));
diff --git a/src/btree/bt_vrfy_dsk.c b/src/btree/bt_vrfy_dsk.c
index 5a9a1127b..e8feb673e 100644
--- a/src/btree/bt_vrfy_dsk.c
+++ b/src/btree/bt_vrfy_dsk.c
@@ -207,6 +207,17 @@ __wt_verify_dsk_image(WT_SESSION_IMPL *session, const char *tag, const WT_PAGE_H
     /* NOTREACHED */
 }
 
+/*
+ * __wt_verify_dsk_non_fatal --
+ *     Verify a single Btree page as read from disk, continue on failure.
+ */
+int
+__wt_verify_dsk_non_fatal(WT_SESSION_IMPL *session, const char *tag, WT_ITEM *buf)
+{
+    return (__wt_verify_dsk_image(
+      session, tag, buf->data, buf->size, NULL, WT_VRFY_DISK_CONTINUE_ON_FAILURE));
+}
+
 /*
  * __wt_verify_dsk --
  *     Verify a single Btree page as read from disk.
@@ -214,8 +225,7 @@ __wt_verify_dsk_image(WT_SESSION_IMPL *session, const char *tag, const WT_PAGE_H
 int
 __wt_verify_dsk(WT_SESSION_IMPL *session, const char *tag, WT_ITEM *buf)
 {
-    return (__wt_verify_dsk_image(
-      session, tag, buf->data, buf->size, NULL, WT_VRFY_DISK_CONTINUE_ON_FAILURE));
+    return (__wt_verify_dsk_image(session, tag, buf->data, buf->size, NULL, 0));
 }
 
 /*
@@ -368,6 +378,8 @@ __verify_row_key_order_check(
       last_cell_num, cell_num, vi->tag,
       __wt_buf_set_printable(vi->session, last->data, last->size, false, tmp1),
       __wt_buf_set_printable(vi->session, current->data, current->size, false, tmp2));
+    /* Temporarily always fail here */
+    WT_ASSERT_ALWAYS(vi->session, ret == 0, "Key order check failed - this is fatal");
 
 err:
     __wt_scr_free(vi->session, &tmp1);
diff --git a/src/include/btmem.h b/src/include/btmem.h
index 68b7ab8f2..719a50d96 100644
--- a/src/include/btmem.h
+++ b/src/include/btmem.h
@@ -498,6 +498,13 @@ struct __wt_page_modify {
 
 #define WT_PAGE_RS_RESTORED 0x1
     uint8_t restore_state; /* Created by restoring updates */
+
+/* Additional diagnostics fields to catch invalid updates. */
+#ifdef HAVE_DIAGNOSTIC
+#define WT_PAGE_MODIFY_EXCLUSIVE 0x1
+    uint8_t flags;
+    WT_SESSION_IMPL *reconciling_session;
+#endif
 };
 
 /*
diff --git a/src/include/btree_inline.h b/src/include/btree_inline.h
index 881249edb..f27d8e7c5 100644
--- a/src/include/btree_inline.h
+++ b/src/include/btree_inline.h
@@ -683,6 +683,16 @@ static inline void
 __wt_page_only_modify_set(WT_SESSION_IMPL *session, WT_PAGE *page)
 {
     uint64_t last_running;
+#ifdef HAVE_DIAGNOSTIC
+    uint8_t dbg_flags;
+    WT_SESSION_IMPL *dbg_reconciling_session;
+
+    dbg_flags = page->modify->flags;
+    dbg_reconciling_session = page->modify->reconciling_session;
+    WT_READ_BARRIER();
+    WT_UNUSED(dbg_reconciling_session);
+    WT_ASSERT(session, !FLD_ISSET(dbg_flags, WT_PAGE_MODIFY_EXCLUSIVE));
+#endif
 
     WT_ASSERT(session, !F_ISSET(session->dhandle, WT_DHANDLE_DEAD));
 
@@ -775,6 +785,11 @@ __wt_tree_modify_set(WT_SESSION_IMPL *session)
 static inline void
 __wt_page_modify_clear(WT_SESSION_IMPL *session, WT_PAGE *page)
 {
+#ifdef HAVE_DIAGNOSTIC
+    uint8_t dbg_flags;
+    WT_SESSION_IMPL *dbg_reconciling_session;
+#endif
+
     /*
      * The page must be held exclusive when this call is made, this call can only be used when the
      * page is owned by a single thread.
@@ -782,6 +797,13 @@ __wt_page_modify_clear(WT_SESSION_IMPL *session, WT_PAGE *page)
      * Allow the call to be made on clean pages.
      */
     if (__wt_page_is_modified(page)) {
+#ifdef HAVE_DIAGNOSTIC
+        dbg_flags = page->modify->flags;
+        dbg_reconciling_session = page->modify->reconciling_session;
+        WT_READ_BARRIER();
+        WT_UNUSED(dbg_flags);
+        WT_ASSERT(session, dbg_reconciling_session == NULL);
+#endif
         /*
          * The only part where ordering matters is during reconciliation where updates on other
          * threads are performing writes to the page state that need to be visible to the
diff --git a/src/include/extern.h b/src/include/extern.h
index e0e1491aa..ea0ffcfe1 100644
--- a/src/include/extern.h
+++ b/src/include/extern.h
@@ -1719,6 +1719,8 @@ extern int __wt_verify_dsk(WT_SESSION_IMPL *session, const char *tag, WT_ITEM *b
 extern int __wt_verify_dsk_image(WT_SESSION_IMPL *session, const char *tag,
   const WT_PAGE_HEADER *dsk, size_t size, WT_ADDR *addr, uint32_t verify_flags)
   WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
+extern int __wt_verify_dsk_non_fatal(WT_SESSION_IMPL *session, const char *tag, WT_ITEM *buf)
+  WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
 extern int64_t __wt_log_slot_release(WT_MYSLOT *myslot, int64_t size)
   WT_GCC_FUNC_DECL_ATTRIBUTE((warn_unused_result));
 extern size_t __wt_json_unpack_char(u_char ch, u_char *buf, size_t bufsz, bool force_unicode)
diff --git a/src/reconcile/rec_write.c b/src/reconcile/rec_write.c
index e6380d7e0..a440bbbc1 100644
--- a/src/reconcile/rec_write.c
+++ b/src/reconcile/rec_write.c
@@ -178,6 +178,12 @@ __reconcile_post_wrapup(
 
     btree = S2BT(session);
 
+#ifdef HAVE_DIAGNOSTIC
+    WT_ASSERT(session, page->modify->reconciling_session == session);
+    page->modify->reconciling_session = NULL;
+    page->modify->flags = 0;
+#endif
+
     /* Release the reconciliation lock. */
     *page_lockedp = false;
     WT_PAGE_UNLOCK(session, page);
@@ -572,6 +578,13 @@ __rec_init(WT_SESSION_IMPL *session, WT_REF *ref, uint32_t flags, WT_SALVAGE_COO
     r->orig_btree_checkpoint_gen = btree->checkpoint_gen;
     r->orig_txn_checkpoint_gen = __wt_gen(session, WT_GEN_CHECKPOINT);
 
+#ifdef HAVE_DIAGNOSTIC
+    WT_ASSERT(session, page->modify->reconciling_session == NULL);
+    page->modify->reconciling_session = session;
+    if (LF_ISSET(WT_REC_EVICT))
+        F_SET(page->modify, WT_PAGE_MODIFY_EXCLUSIVE);
+#endif
+
     /*
      * Update the page state to indicate that all currently installed updates will be included in
      * this reconciliation if it would mark the page clean.
@@ -580,6 +593,7 @@ __rec_init(WT_SESSION_IMPL *session, WT_REF *ref, uint32_t flags, WT_SALVAGE_COO
      * change.
      */
     page->modify->page_state = WT_PAGE_DIRTY_FIRST;
+
     WT_FULL_BARRIER();
 
     /*
@@ -2335,6 +2349,13 @@ __wt_bulk_wrapup(WT_SESSION_IMPL *session, WT_CURSOR_BULK *cbulk)
     __wt_page_modify_set(session, parent);
 
 err:
+#ifdef HAVE_DIAGNOSTIC
+    WT_ASSERT(session, r->ref->page->modify->reconciling_session == session);
+    r->ref->page->modify->reconciling_session = NULL;
+    r->ref->page->modify->flags = 0;
+    WT_WRITE_BARRIER();
+#endif
+
     WT_TRET(__rec_cleanup(session, r));
     WT_TRET(__rec_destroy(session, &cbulk->reconcile));
 
diff --git a/test/evergreen.yml b/test/evergreen.yml
index 8fe8ef67f..3aac006c3 100755
--- a/test/evergreen.yml
+++ b/test/evergreen.yml
@@ -2507,6 +2507,7 @@ tasks:
 
   - name: fops
     tags: ["pull_request"]
+    exec_timeout_secs: 43200
     depends_on:
     - name: compile
     commands:
@@ -2520,7 +2521,9 @@ tasks:
             if [ "Windows_NT" = "$OS" ]; then
               cmd.exe /c test_fops.exe
             else
-              ${test_env_vars|} ./test_fops
+              for i in $(seq ${times|100}); do
+                  ${test_env_vars|} ./test_fops
+              done
             fi
 
   - name: bench-tiered-push-pull
@@ -3456,8 +3459,9 @@ tasks:
           times: 1       # No of times to run the loop
           no_of_procs: 10 # No of processes to run in the background
 
-  - name: split-stress-test
+  - name: split-stress-test-1
     tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
     commands:
       - func: "get project"
       - func: "compile wiredtiger"
@@ -3469,10 +3473,211 @@ tasks:
           script: |
             set -o errexit
             set -o verbose
-            for i in {1..10}; do ${test_env_vars|} ${python_binary|python3} split_stress.py; done
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-2
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-3
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-4
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-5
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-6
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-7
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
 
-  - name: split-stress-test-nonstandalone
+  - name: split-stress-test-8
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-9
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-10
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-11
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-12
+    tags: ["stress-test-1", "stress-test-zseries-1"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-1
     tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
     commands:
       - func: "get project"
       - func: "compile wiredtiger"
@@ -3485,7 +3690,180 @@ tasks:
           script: |
             set -o errexit
             set -o verbose
-            for i in {1..10}; do ${test_env_vars|} ${python_binary|python3} split_stress.py; done
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-2
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-3
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-4
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-5
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-6
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-7
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-8
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-9
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
+
+  - name: split-stress-test-nonstandalone-10
+    tags: ["stress-test-1-nonstandalone"]
+    exec_timeout_secs: 43200
+    commands:
+      - func: "get project"
+      - func: "compile wiredtiger"
+        vars:
+          NONSTANDALONE: -DWT_STANDALONE_BUILD=0
+          CMAKE_TOOLCHAIN_FILE: -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/mongodbtoolchain_v3_gcc.cmake
+      - command: shell.exec
+        params:
+          working_dir: "wiredtiger/bench/workgen/runner"
+          script: |
+            set -o errexit
+            set -o verbose
+            for i in $(seq ${times|150}); do
+                ${test_env_vars|} ${python_binary|python3} split_stress.py
+            done
 
   - name: format-stress-zseries-test
     tags: ["stress-test-zseries-1"]
