-
Type:
Bug
-
Resolution: Duplicate
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
None
-
None
Running with the test program from WT-3157, and adding in a forced error in checkpoint_tree I get an assertion failure/core dump during error handling. The command is:
./test_wt2909_checkpoint_integrity -v -o 125 and the code change for the forced error is:
diff --git a/src/txn/txn_ckpt.c b/src/txn/txn_ckpt.c
index 59dcc23..de8b1b9 100644
--- a/src/txn/txn_ckpt.c
+++ b/src/txn/txn_ckpt.c
@@ -524,6 +524,8 @@ __checkpoint_verbose_track(WT_SESSION_IMPL *session,
#endif
}
+int ckpt_first = 0;
+
/*
* __txn_checkpoint --
* Checkpoint a database or a list of objects in the database.
@@ -1427,6 +1429,8 @@ __checkpoint_tree(
WT_ERR(__wt_cache_op(session, WT_SYNC_CHECKPOINT));
else
WT_ERR(__wt_cache_op(session, WT_SYNC_CLOSE));
+ if (++ckpt_first > 4)
+ WT_ERR(EIO);
/*
* All blocks being written have been written; set the object's write
- duplicates
-
WT-3218 unexpected checkpoint ordering failures
-
- Closed
-