[CXX-82] runGlobalInitializersOrDie returns BadValue when using C++ driver Created: 19/Jan/13  Updated: 08/Jan/24  Resolved: 11/Mar/14

Status: Closed
Project: C++ Driver
Component/s: None
Affects Version/s: None
Fix Version/s: legacy-0.0-26compat-2.6.0-rc1

Type: Bug Priority: Major - P3
Reporter: Randolph Tan Assignee: Mira Carey
Resolution: Done Votes: 1
Labels: cxxmove, legacy-cxx
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-8226 C++ driver fassert 16464 when runGlob... Closed
is related to CXX-123 Static archive fails to force inclusi... Closed
is related to SERVER-9768 create non-dying entry point for runn... Closed

 Comments   
Comment by Mira Carey [ 11/Mar/14 ]

CXX-123 prevents runGlobalInitializers() from existing separately from any of the existing MONGO_INITIALIZERS, so it shouldn't be possible to execute it without the default initializer anymore.

Comment by Andrew Morrow (Inactive) [ 10/Mar/14 ]

Re-assigning to mira.carey@mongodb.com because I believe that he has fixed this for rc1 already.

Comment by Andrew Morrow (Inactive) [ 10/Mar/14 ]

mira.carey@mongodb.com I believe this is fixed by your mongo initializers change. Can you confirm, and if so link the tickets and mark this as resolved?

Comment by Randolph Tan [ 01/Feb/13 ]

Fix in SERVER-8226 made it unnecessary for the driver users to call runGlobalInitializersOrDie, so severity of this bug became lower.

Comment by Randolph Tan [ 31/Jan/13 ]

Hi,

We don't have a workaround for the moment, but will plan to push a fix for 2.4.

Comment by Pieter Willem Jordaan [ 30/Jan/13 ]

What workaround can be used in the meantime

Comment by Randolph Tan [ 19/Jan/13 ]

No, a new static variable was introduced by SERVER-7423.

Comment by Eric Milkie [ 19/Jan/13 ]

How did it work before? We had a global static move into a MONGO_INITIALIZER?

Comment by Randolph Tan [ 19/Jan/13 ]

They will get an fassert if they try to use a replica set client connection if they don't.

Comment by Eric Milkie [ 19/Jan/13 ]

I'm not sure we want anyone calling runGlobalInitializersOrDie in their C++ app yet. Is that necessary to get proper state for using the C++ driver now?

Comment by Randolph Tan [ 19/Jan/13 ]

It looks like BadValue error was caused by the 'default' prerequisite not being registered.

Generated at Wed Feb 07 21:58:08 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.