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

Modules should compile without including wt_internal.h header file

    • Type: Icon: Improvement Improvement
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • WT2.8.0
    • Affects Version/s: None
    • Component/s: None
    • None

      The lz4 and snappy compression libraries and a number of test programs currently include wt_internal.h. That is bad form, and makes managing wt_internal.h more difficult.

      Especially for the compression libraries, since if the compression libraries start using functions from within the WiredTiger compilation (rather than just content from a header file) compilation will start failing on platforms that require library resolution at link time.

      The list of non-internal code that includes wt_internal.h is:

      bench/wtperf/wtperf.h
      ext/compressors/lz4/lz4_compress.c
      ext/compressors/snappy/snappy_compress.c
      test/packing/intpack-test.c
      test/packing/intpack-test2.c
      test/packing/intpack-test3.c
      test/packing/packing-test.c
      test/utility/test_util.i
      

      We should review those usages and figure out how to avoid including wt_internal.h where practical.

            Assignee:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Reporter:
            alexander.gorrod@mongodb.com Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: