sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB:java.lang.IllegalStateException:tilstand skal være:åben

Prøv at indstille maxConnectionIdleTime-indstillingen i dine MongoClientOptions (især hvis du bruger et hostet MongoDB-miljø)

Eksempel:

    new MongoClientOptions.Builder()
    .requiredReplicaSetName(REPLICASET_NAME)
    .maxConnectionIdleTime (MAX_IDLE_TIME)
    .connectionsPerHost(CONNECTION_PER_HOST)
    .cursorFinalizerEnabled(false)
    .build();

connectTimeout er vildledende, da det er timeout-indstillingen for den første forbindelse.

For spørgsmålet omkring geninitialisering af MongoClient skal du sørge for, at klientkoden er i det korrekte omfang, som indsættelseskoden kan hente. Desuden ser jeg kun db'en og ikke samlingsniveauobjektet (proxied?) blive re-initialiseret.




  1. Sådan tester du dine MongoDB-applikationsopgraderinger?

  2. spring data mongodb kortlægning dynamisk felt

  3. node.js mongodb javascript scoping forvirring

  4. Hvordan kan jeg bruge redis med Django?