Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-31469

WiredTiger queryable restore engine does not export init function symbol on windows

    • Fully Compatible
    • ALL
    • v3.4
    • Storage 2017-11-13

      Current Ticket Scope:
      Although the `queryableWtFsCreate` method is not mangled (extern "C"), that is not sufficient for exporting the symbol on windows for a dynamic function load.

      Original ticket description (was configuration error):
      MongoDB 3.4.9 with the queryable_wt engine fails to come up on Windows.

      Command: mongodb-win32-x86_64-enterprise-windows-64-3.4.9\bin\mongod.exe --config .\test_dbs\queryable\59db7af3686b370558ba4519\dbpath/conf.yaml

      Yaml:

      systemLog:
        path: .\test_dbs\queryable\59da4037253b911564456b15\mongod.log
        destination: file
      net:
        port: 28000
        bindIp: 0.0.0.0
        ssl:
          mode: requireSSL
          PEMKeyFile: .\test_dbs\queryable\59da4037253b911564456b15\dbpath/serverIdentity.pem
          CAFile: .\test_dbs\queryable\59da4037253b911564456b15\dbpath/ca.pem
      storage:
        dbPath: .\test_dbs\queryable\59da4037253b911564456b15\dbpath/
        engine: queryable_wt
        queryableBackupMode: true
        wiredTiger:
          engineConfig:
            cacheSizeGB: 1
      queryableBackup:
        apiUri: 127.0.0.1:8090
        snapshotId: 59da4037253b911564456b15
        memoryQuotaMB: 8192
      security:
        authorization: enabled
      setParameter:
        authenticationMechanisms: MONGODB-X509
      

      MongoDB Log:

      2017-10-08T11:11:52.754-0400 I CONTROL  [initandlisten] MongoDB starting : pid=5912 port=28000 dbpath=.\test_dbs\queryable\59da4037253b911564456b15\dbpath 64-bit host=Steve-PC
      2017-10-08T11:11:52.755-0400 I CONTROL  [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
      2017-10-08T11:11:52.755-0400 I CONTROL  [initandlisten] db version v3.4.9
      2017-10-08T11:11:52.755-0400 I CONTROL  [initandlisten] git version: 876ebee8c7dd0e2d992f36a848ff4dc50ee6603e
      2017-10-08T11:11:52.755-0400 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1u-fips  22 Sep 2016
      2017-10-08T11:11:52.755-0400 I CONTROL  [initandlisten] allocator: tcmalloc
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten] modules: enterprise 
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten] build environment:
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten]     distmod: windows-64
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten]     distarch: x86_64
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten]     target_arch: x86_64
      2017-10-08T11:11:52.756-0400 I CONTROL  [initandlisten] options: { config: ".\test_dbs\queryable\59da4037253b911564456b15\dbpath/conf.yaml", net: { bindIp: "0.0.0.0", port: 28000, ssl: { CAFile: ".\test_dbs\queryable\59da4037253b911564456b15\dbpath/ca.pem", PEMKeyFile: ".\test_dbs\queryable\59da4037253b911564456b15\dbpath/serverIdentity.pem", mode: "requireSSL" } }, queryableBackup: { apiUri: "127.0.0.1:8090", memoryQuotaMB: 8192.0, snapshotId: "59da4037253b911564456b15" }, security: { authorization: "enabled" }, setParameter: { authenticationMechanisms: "MONGODB-X509" }, storage: { dbPath: ".\test_dbs\queryable\59da4037253b911564456b15\dbpath/", engine: "queryable_wt", queryableBackupMode: true, wiredTiger: { engineConfig: { cacheSizeGB: 1.0 } } }, systemLog: { destination: "file", path: ".\test_dbs\queryable\59da4037253b911564456b15\mongod.log" } }
      2017-10-08T11:11:52.759-0400 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=1024M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),extensions=[local={entry=queryableWtFsCreate,early_load=true,config={apiUri="127.0.0.1:8090",snapshotId="59da4037253b911564456b15",dbpath=".\test_dbs\queryable\59da4037253b911564456b15\dbpath"}},],readonly=true,
      2017-10-08T11:11:52.763-0400 E STORAGE  [initandlisten] WiredTiger error (22) [1507475512:762934][5912:1997288320], wiredtiger_open: Error parsing 'create,cache_size=1024M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),extensions=[local={entry=queryableWtFsCreate,early_load=true,config={apiUri="127.0.0.1:8090",snapshotId="59da4037253b911564456b15",dbpath=".\test_dbs\queryable\59da4037253b911564456b15\dbpath"}},],readonly=true,' at offset 267: Unexpected character: Invalid argument
      2017-10-08T11:11:52.765-0400 I -        [initandlisten] Fatal Assertion 28561 at src\mongo\db\storage\wiredtiger\wiredtiger_kv_engine.cpp 266
      2017-10-08T11:11:52.765-0400 I -        [initandlisten] 
      
      ***aborting after fassert() failure
      

      This could be a yaml formatting issue. I tried to rule out the "/" vs. "\" in paths as the cause, but all led to the same fasserts.

            Assignee:
            daniel.gottlieb@mongodb.com Daniel Gottlieb (Inactive)
            Reporter:
            steve.briskin Steve Briskin (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: