-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 2.12.0
-
Component/s: None
-
None
-
Environment:* Linux 64-bit community edition
* MongoDB 2.5.5 sharded cluster with CR authentication enabled on admin database of mongoS and admin database per shard.
* MongoClient connection made to multiple mongoSes via a URI:
"mongodb://admin:admin@mms-db1:60000,mms-db1:60001,mms-db2:60000,mms-db2:60001/"
* 2.12.0 snapshot build jar at:
https://oss.sonatype.org/content/repositories/snapshots/org/mongodb/mongo-java-driver/2.12.0-SNAPSHOT/mongo-java-driver-2.12.0-20140210.145413-52.jar* Linux 64-bit community edition * MongoDB 2.5.5 sharded cluster with CR authentication enabled on admin database of mongoS and admin database per shard. * MongoClient connection made to multiple mongoSes via a URI: " mongodb://admin: admin@mms-db1 :60000,mms-db1:60001,mms-db2:60000,mms-db2:60001/" * 2.12.0 snapshot build jar at: https://oss.sonatype.org/content/repositories/snapshots/org/mongodb/mongo-java-driver/2.12.0-SNAPSHOT/mongo-java-driver-2.12.0-20140210.145413-52.jar
MongoClient exposes a method `isLocked()` that checks if the given node is fsync locked.
On 2.5.5 via a mongoS, this operation fails with the following exception:
com.mongodb.MongoException: DBClientBase::findN: transport error: mms-db1:50000 ns: admin.$cmd.sys.inprog query: { $query: {} } at com.mongodb.QueryResultIterator.throwOnQueryFailure(QueryResultIterator.java:213) at com.mongodb.QueryResultIterator.init(QueryResultIterator.java:197) at com.mongodb.QueryResultIterator.initFromQueryResponse(QueryResultIterator.java:175) at com.mongodb.QueryResultIterator.<init>(QueryResultIterator.java:64) at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:78) at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:59) at com.mongodb.DBCollection.findOne(DBCollection.java:869) at com.mongodb.DBCollection.findOne(DBCollection.java:843) at com.mongodb.DBCollection.findOne(DBCollection.java:789) at com.mongodb.DBCollection.findOne(DBCollection.java:778) at com.mongodb.Mongo.isLocked(Mongo.java:734)
Note:
- The command was given to a mongoS listed in the URI mentioned in Environment above.
- The mms-db1:50000 from the trace is the primary of the first shard.
In the mms-db1:50000's mongod.log, the following message is logged:
[conn551] AssertionException handling request, closing client connection: 16810 bad query: BadValue unknown top level operator: $query
It appears to be dependent on going through the mongoS, but unclear if auth-enabled is a factor.
- is related to
-
SERVER-12734 CurrentOp (inprog) fails with wrapped query ($query: {})
- Closed