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

cannot upgrade database created in 2.4 to 3.4

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Blocker - P1 Blocker - P1
    • 3.4.0-rc1
    • Affects Version/s: 3.4.0-rc0
    • Component/s: Storage
    • None
    • Fully Compatible
    • ALL
      1. On empty data directory, start 2.4.14 mongod
      2. Stop mongod
      3. Start 3.4.x build
    • Query 2016-10-31

      When a mongodb instance is created with 2.4.x, a field called "create" is added to the collection options for each collection. This extra field is now an error in 3.4.0-rc0 due to SERVER-25459. As a result, a database created in 2.4., fails to start with 3.4. It does not matter if a user upgrades from 2.4 -> 2.6 -> 3.0 -> 3.2 -> 3.4

      Example failure:

      2016-10-11T11:30:13.901-0400 I -        [initandlisten] Fatal assertion 18523 InvalidOptions: The field 'create' is not a valid collection option. Options: { create: "startup_log", size: 10485760, capped: true } at src/mongo/db/storage/mmap_v1/mmap_v1_database_catalog_entry.cpp 876
      2016-10-11T11:30:13.901-0400 I -        [initandlisten]
      
      ***aborting after fassert() failure
      
      
      2016-10-11T11:30:13.908-0400 F -        [initandlisten] Got signal: 6 (Abort trap: 6).
      
      ----- BEGIN BACKTRACE -----
       mongod(_ZN5mongo15printStackTraceERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEE+0x3A) [0x10efd853a]
       mongod(_ZN5mongo12_GLOBAL__N_110abruptQuitEi+0xC0) [0x10efd7d60]
       libsystem_platform.dylib(_sigtramp+0x1A) [0x7fff8f62bf1a]
       ??? [0x111a34000]
       libsystem_c.dylib(abort+0x81) [0x7fff93dff9a3]
       mongod(_ZN5mongo35fassertFailedWithStatusWithLocationEiRKNS_6StatusEPKcj+0x323) [0x10ef4d2d3]
       mongod(_ZNK5mongo26MMAPV1DatabaseCatalogEntry20getCollectionOptionsEPNS_16OperationContextENS_8RecordIdE+0x2A7) [0x10ed1f7b7]
       mongod(_ZNK5mongo38NamespaceDetailsCollectionCatalogEntry20getCollectionOptionsEPNS_16OperationContextE+0x33) [0x10ece21d3]
       mongod(_ZN5mongo10CollectionC2EPNS_16OperationContextENS_10StringDataEPNS_22CollectionCatalogEntryEPNS_11RecordStoreEPNS_20DatabaseCatalogEntryE+0x1D8) [0x10e5a4c58]
       mongod(_ZN5mongo8Database30_getOrCreateCollectionInstanceEPNS_16OperationContextENS_10StringDataE+0x96) [0x10e5be5c6]
       mongod(_ZN5mongo8DatabaseC2EPNS_16OperationContextENS_10StringDataEPNS_20DatabaseCatalogEntryE+0x43D) [0x10e5bec2d]
       mongod(_ZN5mongo14DatabaseHolder6openDbEPNS_16OperationContextENS_10StringDataEPb+0x1A7) [0x10e5c6397]
       mongod(_ZN5mongo12_GLOBAL__N_130repairDatabasesAndCheckVersionEPNS_16OperationContextE+0x3AE) [0x10e46d22e]
       mongod(_ZN5mongo12_GLOBAL__N_114_initAndListenEi+0x14F1) [0x10e46a041]
       mongod(main+0x49C) [0x10e467a5c]
       libdyld.dylib(start+0x1) [0x7fff9a6c65c9]
       ??? [0x1]
      -----  END BACKTRACE  -----
      [1]    44423 abort      ~/mongo/mongod
      

            Assignee:
            david.storch@mongodb.com David Storch
            Reporter:
            mark.benvenuto@mongodb.com Mark Benvenuto
            Votes:
            1 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              Resolved: