-
Type: Bug
-
Resolution: Duplicate
-
Priority: Major - P3
-
None
-
Affects Version/s: 3.2.1
-
Component/s: Concurrency, WiredTiger
-
None
-
ALL
I did some test on MongoDB from java multithread program to check how MongoDB ensure concurrent access on document. My sample program ensure that only one copy will exists on collection. it inserts a document if it not exists in collection otherwise it updates document frequency. After several tests i found that some documents exists with same value.
Mongo DB Collection
{ _id: ObjectId, doc: String, doc_freq: Integer, created_at: Date }
Index:
db.doc.ensureIndex({doc:1});
Here "doc" field is used for searching and if anything found then "doc_freq" is updated. If nothing is found then new document will be inserted.I have inserted 100000 entries which has same doc value and used 200 thread. And found that more than one entries found on collection with same doc value. I have used Java MongoDB Driver Version: 3.0.4 and **MongoDB Version:3.2.1 on OS Yosemite and Wire Tiger engine. Please find my test code from this url https://talha13@bitbucket.org/talha13/duplicatetest.git . To reproduce this issue please run several times and make sure before each run doc collection are clear.
- duplicates
-
SERVER-14322 Retry on predicate unique index violations of update + upsert -> insert when possible
- Closed