MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB जावा क्लाइंट का WriteConcern काम नहीं करता है

ऐसा इसलिए है क्योंकि collection.withWriteConcern(WriteConcern.UNACKNOWLEDGED); एक नया MongoCollection उत्पन्न करता है एक अलग लेखन चिंता वाली वस्तु जिसका आप कभी भी उपयोग नहीं करते हैं:

निम्नलिखित कोड:

MongoCollection<Document> dup = collection.withWriteConcern(WriteConcern.UNACKNOWLEDGED);
...
dup.insertOne(doc);

काम करना चाहिए, यानी कोई त्रुटि नहीं उठाई गई।

MongoClient . के लिए स्तर लेखन चिंता जो डेटाबेस के लिए प्रचारित नहीं है:

public MongoDatabase getDatabase(final String databaseName) {
    MongoClientOptions clientOptions = getMongoClientOptions();
    return new MongoDatabaseImpl(databaseName, clientOptions.getCodecRegistry(), clientOptions.getReadPreference(),
            clientOptions.getWriteConcern(), createOperationExecutor());
}

जैसा कि आप देख सकते हैं, लेखन चिंता MongoClientOptions . से ली गई है mongoClient.setWriteConcern() को दिए गए पैरामीटर मान को अनदेखा करना विधि, जो एक बग हो सकता है।

इसलिए, वैश्विक लेखन चिंता को ठीक से सेट करने के लिए, आपको MongoClientOptions का एक उदाहरण बनाना होगा :

 MongoClientOptions options = MongoClientOptions
     .builder()
     .writeConcern(WriteConcern.UNACKNOWLEDGED)
     .build();

और इसे MongoClient को पास करें कंस्ट्रक्टर।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb $ मौजूद है जो हमेशा 0 लौटाता है

  2. $सप्ताह समारोह और एकत्रीकरण में सप्ताह का पहला दिन

  3. नोड मोंगोडब:त्रुटि:पार्सर के कारण कनेक्शन बंद हो गया

  4. मानगो और जियो डेटा के साथ हमेशा 100 तक सीमित खोजें

  5. Meteor.js को example.com या www.example.com पर परिनियोजित किया जाता है?