[SERVER-6793] 2.2.0-rc1 stops responding to other requests with high-fault reads? Created: 17/Aug/12  Updated: 11/Jul/16  Resolved: 20/Aug/12

Status: Closed
Project: Core Server
Component/s: Performance
Affects Version/s: 2.2.0-rc1
Fix Version/s: 2.2.0-rc2, 2.3.0

Type: Bug Priority: Major - P3
Reporter: Geoffrey Gallaway Assignee: Eliot Horowitz (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

MongoDB 2.0.1 replicaSet with one host "upgraded" (ran mongod from 2.2.0-rc1 linux 64bit download package) to 2.2.0-rc1 for testing. 100GB RAM, RAID 10 spinning disk, CentOS 5.5, Linux 2.6.18-194, Xeon X5675@3.07Ghz, NUMA disabled. Existing 217GB dataset from 2.0.1 with 51GB indexes/


Operating System: Linux
Participants:

 Description   

I upgraded one server in a 6-server 2.0.1 replicaSet to test MongoDB 2.2.0-rc1. I wanted to test read and locking performance so I switched to a db with a very large collection that easily exceeds RAM. I then ran a query that I knew would match no records: db.collection.find(

{x: 1}

). This caused the mongostat I was running in another window to stop responding, I could connect with another shell but "show dbs" would not return until the above query completed. Also, hitting Ctrl-C on the find() query caused "Fri Aug 17 19:07:19 Assertion: 13111:field not found, expected type 2" in the shell. I was unable to manually kill the find() operation.

I also tried this a second time so I could be sure that as much of the database that could be hot in memory was available.



 Comments   
Comment by auto [ 20/Aug/12 ]

Author:

{u'date': u'2012-08-20T13:43:38-07:00', u'email': u'eliot@10gen.com', u'name': u'Eliot Horowitz'}

Message: SERVER-6793 - parallel writer batch lock needs to be involved in yield/tempRelease
Branch: v2.2
https://github.com/mongodb/mongo/commit/b887909f9281c99c69d733153c3aa6aea6624899

Comment by auto [ 20/Aug/12 ]

Author:

{u'date': u'2012-08-20T13:43:38-07:00', u'email': u'eliot@10gen.com', u'name': u'Eliot Horowitz'}

Message: SERVER-6793 - parallel writer batch lock needs to be involved in yield/tempRelease
Branch: master
https://github.com/mongodb/mongo/commit/cab43568bdd66980bc1aefdbf538cc22c99e6af6

Comment by Geoffrey Gallaway [ 19/Aug/12 ]

Yes, after testing with 2.2.0-rc1, I reverted back to 2.0.1 and ran the same query under the same circumstances. Under 2.0.1, mongostat continues to display data during the query and I can open another mongo shell and do other queries.

Comment by Dwight Merriman [ 19/Aug/12 ]

does that work with v2.0? (i assume so trying to eliminate variables)

Generated at Thu Feb 08 03:12:42 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.