WAL Unit tests

https://github.com/daos-stack/daos/blob/feature/vos_on_blob/src/vos/tests/vts_wal.c

 

Gaps:

  • large transaction

  • compound RPC with large transactions

  • latest write timestamp flush (used for dfs modification time but for unit test, can use vos_obj_query_key). Needs to be tested across a crash.

  • Aggregation bits. For aggregation to work properly, we mark objects, keys, and values with an “aggregation needed bit”. We need that if we crash before aggregation runs, that we still aggregate same amount of data as we would otherwise.