-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
None
-
Affects Version/s: 2.8.0-rc0
-
Component/s: Concurrency, Replication
-
ALL
-
None
-
3
-
None
-
None
-
None
-
None
-
None
-
None
We ran a workload of 30 client threads doing inserts into a collection with a multikey index. Each inserted document had a 10-element array as the multikey-indexed field.
We're seeing many "Deadlock found..." and "WriteConflictException while doing oplog application" log messages. Neither of these messages shows up when we don't use replication or when we remove the multikey index.
Log excerpt (full log attached):
m31001| 2014-11-13T15:49:44.467-0500 I - [repl writer worker 12] Deadlock found: Locker 82 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 87, 85, 86, 84, 83, ] m31001| Locker 83 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 87, 85, 86, 84, 82, ] m31001| Locker 84 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 87, 85, 86, 83, 82, ] m31001| Locker 85 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 87, 86, 84, 83, 82, ] m31001| Locker 86 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 87, 85, 84, 83, 82, ] m31001| Locker 87 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 88, 85, 86, 84, 83, 82, ] m31001| Locker 88 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 89, 87, 85, 86, 84, 83, 82, ] m31001| Locker 89 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 90, 88, 87, 85, 86, 84, 83, 82, ] m31001| Locker 90 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 91, 89, 88, 87, 85, 86, 84, 83, 82, ] m31001| Locker 91 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 92, 90, 89, 88, 87, 85, 86, 84, 83, 82, ] m31001| Locker 92 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 93, 91, 90, 89, 88, 87, 85, 86, 84, 83, 82, ] m31001| Locker 93 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [94, 92, 91, 90, 89, 88, 87, 85, 86, 84, 83, 82, ] m31001| Locker 94 waits for resource {17591420565866845252: Collection, 2198927570733355656, db0.coll0} held by [93, 92, 91, 90, 89, 88, 87, 85, 86, 84, 83, 82, ] m31001| 2014-11-13T15:49:44.468-0500 I REPLSETS [repl writer worker 12] WriteConflictException while doing oplog application on: db0.coll0, retrying.