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

dist/s_docs incompatible with OS X Xcode installation

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor - P4
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: WT2.9.0, 3.2.11, 3.4.0-rc1
    • Labels:
      None
    • # Replies:
      9
    • Last comment by Customer:
      true

      Description

      WT-2917 changed the dist/s_docs script to use the C preprocessor to generate wtperf documentation, which doesn't work correctly on OS X installations.

      Use the cc -E option instead, that appears to work correctly.

        Issue Links

          Activity

          Hide
          keith.bostic Keith Bostic added a comment -

          Details from Donald Anderson:

          $ sh s_docs
          Traceback (most recent call last):
            File "wtperf_config.py", line 12, in <module>
              v[2] = v[2].replace('"', '').strip()
          IndexError: list index out of range
           
          =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
           
          I noticed you changed s_docs recently to use ‘cpp’.  Here’s the problem:
           
          $ cat ../bench/wtperf/wtperf_opt.i | cpp -DOPT_DEFINE_DOXYGEN | more
          ….
          OPTION #async_threads,  "number of async worker threads", # 0, unsigned int
          OPTION #checkpoint_interval,
          # 89 "<stdin>"
          "checkpoint every interval seconds during the workload phase.", # 120, unsigned int
          ….
          $ which cpp
          /usr/bin/cpp
          dda@bud$ cpp --version
          Apple LLVM version 8.0.0 (clang-800.0.38)
          Target: x86_64-apple-darwin15.6.0
          Thread model: posix
          InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
           
          =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
           
          Two things are happening:  1) cpp is injecting line number output in the middle of the OPTION statement.  and 2)  #async_threads, #0, etc. are not being stringized.
           
          It looks like using 'clang -E’ fixes both these problems.
          

          Show
          keith.bostic Keith Bostic added a comment - Details from Donald Anderson : $ sh s_docs Traceback (most recent call last): File "wtperf_config.py", line 12, in <module> v[2] = v[2].replace('"', '').strip() IndexError: list index out of range   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-   I noticed you changed s_docs recently to use ‘cpp’. Here’s the problem:   $ cat ../bench/wtperf/wtperf_opt.i | cpp -DOPT_DEFINE_DOXYGEN | more …. OPTION #async_threads, "number of async worker threads", # 0, unsigned int OPTION #checkpoint_interval, # 89 "<stdin>" "checkpoint every interval seconds during the workload phase.", # 120, unsigned int …. $ which cpp /usr/bin/cpp dda@bud$ cpp --version Apple LLVM version 8.0.0 (clang-800.0.38) Target: x86_64-apple-darwin15.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin   =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-   Two things are happening: 1) cpp is injecting line number output in the middle of the OPTION statement. and 2) #async_threads, #0, etc. are not being stringized.   It looks like using 'clang -E’ fixes both these problems.
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078)

          The OS X cpp program injects line number output in the middle of lines
          and doesn't stringify #XXX entries; use the -E option to the compiler
          instead.

          The OS X C pre-processor won't take input from stdin, use a temporary
          source file.
          Branch: develop
          https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078) The OS X cpp program injects line number output in the middle of lines and doesn't stringify #XXX entries; use the -E option to the compiler instead. The OS X C pre-processor won't take input from stdin, use a temporary source file. Branch: develop https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079)

          Gcc/clang both take - to mean stdin, get rid of the temporary file.
          Branch: develop
          https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079) Gcc/clang both take - to mean stdin, get rid of the temporary file. Branch: develop https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078)

          The OS X cpp program injects line number output in the middle of lines
          and doesn't stringify #XXX entries; use the -E option to the compiler
          instead.

          The OS X C pre-processor won't take input from stdin, use a temporary
          source file.
          Branch: mongodb-3.4
          https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078) The OS X cpp program injects line number output in the middle of lines and doesn't stringify #XXX entries; use the -E option to the compiler instead. The OS X C pre-processor won't take input from stdin, use a temporary source file. Branch: mongodb-3.4 https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079)

          Gcc/clang both take - to mean stdin, get rid of the temporary file.
          Branch: mongodb-3.4
          https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079) Gcc/clang both take - to mean stdin, get rid of the temporary file. Branch: mongodb-3.4 https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'}

          Message: Import wiredtiger: 6a31c2118cce88c68281eda2ca9ab1df915a2773 from branch mongodb-3.4

          ref: fc0e7abe82..6a31c2118c
          for: 3.4.0

          WT-2831 Skip creating a checkpoint if there have been no changes
          WT-2858 rename wtperf's CONFIG structure
          WT-2895 Reduce the runtime of make check testing with disable long
          WT-2907 Bug in Java ConcurrentCloseTest case
          WT-2917 split wtperf's configuration into per-database and per-run parts
          WT-2920 New eviction statistics
          WT-2931 Configure default in-memory dirty cache usage lower
          WT-2932 Allow applications to selectively ignore cache limit with in-memory configuration
          WT-2933 Fix a race between named snapshots and checkpoints
          WT-2937 test_inmem01 aborts due to stuck cache
          WT-2938 Assembly files should end in .sx, not .S
          WT-2941 Improve test/format to use faster key-generation functions
          WT-2942 verbose strings don't need newline
          WT-2946 dist/s_docs incompatible with OS X Xcode installation
          WT-2948 simplify error handling by making epoch time return never fail
          WT-2950 Inserting multi-megabyte values can cause large in-memory pages
          Branch: master
          https://github.com/mongodb/mongo/commit/448f5b43d249dd090da1d79b82c9ab1b742e4f38

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'} Message: Import wiredtiger: 6a31c2118cce88c68281eda2ca9ab1df915a2773 from branch mongodb-3.4 ref: fc0e7abe82..6a31c2118c for: 3.4.0 WT-2831 Skip creating a checkpoint if there have been no changes WT-2858 rename wtperf's CONFIG structure WT-2895 Reduce the runtime of make check testing with disable long WT-2907 Bug in Java ConcurrentCloseTest case WT-2917 split wtperf's configuration into per-database and per-run parts WT-2920 New eviction statistics WT-2931 Configure default in-memory dirty cache usage lower WT-2932 Allow applications to selectively ignore cache limit with in-memory configuration WT-2933 Fix a race between named snapshots and checkpoints WT-2937 test_inmem01 aborts due to stuck cache WT-2938 Assembly files should end in .sx, not .S WT-2941 Improve test/format to use faster key-generation functions WT-2942 verbose strings don't need newline WT-2946 dist/s_docs incompatible with OS X Xcode installation WT-2948 simplify error handling by making epoch time return never fail WT-2950 Inserting multi-megabyte values can cause large in-memory pages Branch: master https://github.com/mongodb/mongo/commit/448f5b43d249dd090da1d79b82c9ab1b742e4f38
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078)

          The OS X cpp program injects line number output in the middle of lines
          and doesn't stringify #XXX entries; use the -E option to the compiler
          instead.

          The OS X C pre-processor won't take input from stdin, use a temporary
          source file.
          Branch: mongodb-3.2
          https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3078) The OS X cpp program injects line number output in the middle of lines and doesn't stringify #XXX entries; use the -E option to the compiler instead. The OS X C pre-processor won't take input from stdin, use a temporary source file. Branch: mongodb-3.2 https://github.com/wiredtiger/wiredtiger/commit/ab4c5efe726cb22f4d3a74fcea4ff5223d6e5b60
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'}

          Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079)

          Gcc/clang both take - to mean stdin, get rid of the temporary file.
          Branch: mongodb-3.2
          https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'keithbostic', u'name': u'Keith Bostic', u'email': u'keith.bostic@mongodb.com'} Message: WT-2946 dist/s_docs incompatible with OS X Xcode installation (#3079) Gcc/clang both take - to mean stdin, get rid of the temporary file. Branch: mongodb-3.2 https://github.com/wiredtiger/wiredtiger/commit/5404417a941f40e18180b59fa86ac098b0a556f5
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'}

          Message: Import wiredtiger: b11ed312cedb905dec49dd2c9c262fabf64d13cd from branch mongodb-3.2

          ref: 9cf2f89d6d..b11ed312ce
          for: 3.2.11

          WT-1592 Dump detailed cache information via statistics
          WT-2403 Enhance random cursor implementation for LSM trees
          WT-2831 Skip creating a checkpoint if there have been no changes
          WT-2858 rename wtperf's CONFIG structure
          WT-2880 Add support for Zstandard compression
          WT-2895 Reduce the runtime of make check testing with disable long
          WT-2904 Fix a bug where the reported checkpoint size could be many times data size
          WT-2907 Bug in Java ConcurrentCloseTest case
          WT-2917 split wtperf's configuration into per-database and per-run parts
          WT-2920 Add statistic tracking application thread cache maintenance time
          WT-2931 Configure default in-memory dirty cache usage lower
          WT-2932 Allow applications to selectively ignore cache limit with in-memory configuration
          WT-2933 Fix a race between named snapshots and checkpoints
          WT-2937 test_inmem01 aborts due to stuck cache
          WT-2938 Assembly files should end in .sx, not .S
          WT-2941 Improve test/format to use faster key-generation functions
          WT-2942 verbose strings don't need newline
          WT-2946 dist/s_docs incompatible with OS X Xcode installation
          WT-2948 simplify error handling by making epoch time return never fail
          WT-2949 Add an option to wtperf to not close connection on shutdown
          WT-2950 Inserting multi-megabyte values can cause large in-memory pages
          WT-2954 Inserting multi-megabyte values can cause large in-memory pages
          WT-2955 Add statistics tracking the amount of time threads spend waiting for high level locks
          WT-2956 utility tests -h option is always overridden by the default setup
          WT-2959 Ensure WT_SESSION_IMPL is never used before it's initialized
          WT-2963 Race setting max_entries during eviction
          WT-2965 test_wt2323_join_visibility can hang on OSX
          WT-2974 lint
          WT-2976 Add a statistic tracking how long application threads spend doing I/O
          WT-2977 Csuite LSM Random test can occasionally fail
          WT-2985 Race during checkpoint can cause a core dump
          WT-2987 Fix a bug where opening a cursor on an incomplete table drops core
          WT-2988 __wt_epoch potentially returns garbage values.
          Branch: v3.2
          https://github.com/mongodb/mongo/commit/ebbb4eb0b091fa185b06a060d24b68eb6761ba4a

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexander.gorrod@mongodb.com'} Message: Import wiredtiger: b11ed312cedb905dec49dd2c9c262fabf64d13cd from branch mongodb-3.2 ref: 9cf2f89d6d..b11ed312ce for: 3.2.11 WT-1592 Dump detailed cache information via statistics WT-2403 Enhance random cursor implementation for LSM trees WT-2831 Skip creating a checkpoint if there have been no changes WT-2858 rename wtperf's CONFIG structure WT-2880 Add support for Zstandard compression WT-2895 Reduce the runtime of make check testing with disable long WT-2904 Fix a bug where the reported checkpoint size could be many times data size WT-2907 Bug in Java ConcurrentCloseTest case WT-2917 split wtperf's configuration into per-database and per-run parts WT-2920 Add statistic tracking application thread cache maintenance time WT-2931 Configure default in-memory dirty cache usage lower WT-2932 Allow applications to selectively ignore cache limit with in-memory configuration WT-2933 Fix a race between named snapshots and checkpoints WT-2937 test_inmem01 aborts due to stuck cache WT-2938 Assembly files should end in .sx, not .S WT-2941 Improve test/format to use faster key-generation functions WT-2942 verbose strings don't need newline WT-2946 dist/s_docs incompatible with OS X Xcode installation WT-2948 simplify error handling by making epoch time return never fail WT-2949 Add an option to wtperf to not close connection on shutdown WT-2950 Inserting multi-megabyte values can cause large in-memory pages WT-2954 Inserting multi-megabyte values can cause large in-memory pages WT-2955 Add statistics tracking the amount of time threads spend waiting for high level locks WT-2956 utility tests -h option is always overridden by the default setup WT-2959 Ensure WT_SESSION_IMPL is never used before it's initialized WT-2963 Race setting max_entries during eviction WT-2965 test_wt2323_join_visibility can hang on OSX WT-2974 lint WT-2976 Add a statistic tracking how long application threads spend doing I/O WT-2977 Csuite LSM Random test can occasionally fail WT-2985 Race during checkpoint can cause a core dump WT-2987 Fix a bug where opening a cursor on an incomplete table drops core WT-2988 __wt_epoch potentially returns garbage values. Branch: v3.2 https://github.com/mongodb/mongo/commit/ebbb4eb0b091fa185b06a060d24b68eb6761ba4a

            People

            • Assignee:
              keith.bostic Keith Bostic
              Reporter:
              keith.bostic Keith Bostic
              Participants:
              Last commenter:
              Alexander Gorrod
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since reply:
                21 weeks, 1 day ago
                Date of 1st Reply: