Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-7597

Expand support for WiredTiger C/C++ tests on Windows

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:

      This task involves auditing the C/C++ tests that are only supported on POSIX and trying to update them to work on Windows. It would be nice to increase our testing coverage on Windows.

      Context:

      Whilst developing CMake support for WiredTiger on Windows (WT-7535), we discovered a number of the C/C++ testing suite programs that aren't supported on Windows. This is either due to the tests assuming the existence of specific POSIX utilities e.g bash/sh commands, use non-native directory paths e.g. (forward vs backward slash) or they try to include specific Linux/Darwin system headers.

      Note some tests may be easy to update (e.g replacing hard-coded bash/sh commands with platform-independent test_util library calls). However I expect some may not be possible to get running on Windows or would require significant re-work outside the scope of this ticket (e.g a test that is heavily depend on pthread functionality).

      Below is a summary of the tests that currently don't compile/run on Windows:

      test/format
      test/readonly
      test/salvage
      test/syscall (I wouldn't expect its feasible to make this work on Windows)
      test/thread
      test/cppsuite (C++ compilation currently not tested on Windows)
      test/csuite/incr_backup
      test/csuite/random_abort
      test/csuite/random_directio
      test/csuite/rwlock
      test/csuite/schema_abort
      test/csuite/timestamp_abort
      test/csuite/truncated_log
      test/csuite/wt1965_col_efficiency
      test/csuite/wt2403_lsm_workload
      test/csuite/wt2535_insert_race
      test/csuite/wt2853_perf
      test/csuite/wt2909_checkpoint_integrity
      test/csuite/wt3120_filesys
      test/csuite/wt3338_partial_update
      test/csuite/wt4105_large_doc_small_upd
      test/csuite/wt4156_metadata_salvage
      test/csuite/wt4333_handle_locks
      test/csuite/wt4803_history_store_abort
      test/csuite/wt6185_modify_ts
      test/csuite/wt6616_checkpoint_oldest_ts

      Test format is one of the more interesting ones but the csuites would be good too.

      Definition of Done:

      • Have some of our POSIX-only C/C++ tests updated to compile and run on Windows. Identify the tests that are not possible to run on Windows.
      • Add to evergreen windows variant.

       

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            alison.felizzi@mongodb.com Alison Felizzi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: