-
Type:
Build Failure
-
Resolution: Duplicate
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
configure-combinations failed on RHEL 8.0
Host: ec2-52-86-208-247.compute-1.amazonaws.com
Project: WiredTiger (develop)
Commit: diff: WT-6086 Create structures and helpers for time windows. (#5576)
- Create structures and helpers for time windows.
Including both time windows and aggregated time windows.
- Take the next step - there is more to go.
- Get time windows and aggregates compiling.
- Remove extra copy of the aggregate information from the checkpoint structure, fix the checkpoint
load and salvage code to use the checkpoint's WT_TIME_AGGREGATE structure.
- clang-format
- Set the time window references on function entry, replace local time window dump with the
standard function.
- Sort validity window fields.
- Switch the prepare field to a uint8_t, bools are 4B on Windows.
- Switch the prepare field to a uint8_t, bools are 4B on Windows.
- Don't use a sentence fragment in time window messages.
- Use structure assignment for time window copies, modern compilers get this right.
Simplify window content functions, don't need if/else.
- Inline __wt_rec_addr_ts_update_window() and __wt_rec_addr_ts_update(), they're now
single line calls to other functions with reasonable names.
- Avoid doing initialization work on the copy structure until it's actually needed, initializing
time window structures is going to be expensive.
- Fix NULL indirection, don't initialize the time window unless we have to.
- Revert change to move base timestamp values into timestamp.h, they belong in txn.h.
- Remove a comment, this change is correct: there's a bug fix here, the previous code was using
the wrong values from the unpacked cell for an address type cell.
- Remove a comment, comparing the full time window signature makes sense to me, we shouldn't have
been able to RLE encode items if they don't have an exactly matching time window.
- There's a reason we initialize aggregate durability information, both newest_start_durable_ts
and newest_stop_durable_ts to WT_TS_NONE, but I don't remember why. Add placeholder comments,
it will get fixed in review.
- The durable timestamp names in the metadata files do not match the names in the WT_TIME_AGGREGATE
structure. That needs comments or updates/backports, I'm not sure which. Flag in the code and it
will get fixed in review.
- Fix a spelling complaint.
- Update.
- Overflow keys don't need time windows, only values have time information.
- Overflow keys don't need time windows, only values have time information.
- Minor comment wordsmithing, and explain why prepare is included in the time windows.
- Add a check for prepare in time window is empty function.
- Add a comment to explain the reason behind aggregated durable timestamp
- Use same durable timestamp names across metafile also
- Remove a TODO, the work has been committed.
- Address review comments.
- Rename WT_CELL_UNPACK_TIME_PAIRS_CLEARED to WT_CELL_UNPACK_TIME_WINDOW_CLEARED.
- History store is the only remaining user of WT_TIME_PAIR, make it local and rename for clarity.
- __wt_time_aggregate_to_string() wasn't displaying the newest start durable timestamp: add it,
and re-order the structures and all timestamp service routines to use the same order of time
window fields.
- The timestamp string array declarations were incorrectly specified, fix them.
Use the timestamp string array elements in order for clarity.
- Don't displayed a prepared string unless it's actually prepared, it's not a common condition
and it takes up too much page real estate.
Co-authored-by: Keith Bostic <keith.bostic@mongodb.com>
Co-authored-by: Haribabu Kommi <haribabu.kommi@mongodb.com> | 05 May 20 21:33 UTC
Evergreen Subscription: ; Evergreen Event: