[SERVER-11419] dur/closeall.js failing on RHEL 5.7 Created: 28/Oct/13  Updated: 11/Jul/16  Resolved: 31/Oct/13

Status: Closed
Project: Core Server
Component/s: Build, Testing Infrastructure
Affects Version/s: None
Fix Version/s: 2.5.4

Type: Bug Priority: Major - P3
Reporter: sam.helman@10gen.com Assignee: hari.khalsa@10gen.com
Resolution: Done Votes: 0
Labels: build-failure, buildbot
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 5.7 64-bit


Issue Links:
Duplicate
is duplicated by SERVER-11477 RHEL 5.7 durability - closeall.js fai... Closed
Operating System: ALL
Participants:

 Description   

MCI link:
https://mci.10gen.com/ui/task/mongodb_mongo_master_rhel_57_64_bit_0ca21679b816a8ca55da8b619d50e0edde477a62_13_10_28_15_54_14_durability_rhel57

buildlogger link:
http://buildlogs.mongodb.org/mci_0.9_rhel_57_64_bit/builds/4274/test/durability_0/closeall.js

Failure synopsis:

 m30001| 2013-10-28T13:42:04.887-0400 [conn1] command closealltest.$cmd command: { getlasterror: 1.0, w: 2.0 } ntoreturn:1 keyUpdates:0  reslen:160 3853ms
 m30001| 2013-10-28T13:42:04.899-0400 [conn2] DatabaseHolder::closeAll path:/data/db/closeall
 m30001| 2013-10-28T13:42:05.327-0400 [conn2] ERROR clientcursors exist but should not at this point
 m30001| 2013-10-28T13:42:05.327-0400 [conn2] first one: 11399096663347 local.oplog.$main
 m30001| 2013-10-28T13:42:05.327-0400 [conn2] Assertion failure false src/mongo/db/clientcursor.cpp 143
 
assert failed : closeAllDatabases res.ok=false



 Comments   
Comment by auto [ 31/Oct/13 ]

Author:

{u'username': u'hkhalsa', u'name': u'Hari Khalsa', u'email': u'hkhalsa@10gen.com'}

Message: SERVER-11419 clientcursors are no longer deleted out from underneath holder
Branch: master
https://github.com/mongodb/mongo/commit/5743d6e7216f96bab55bb7bdd2c3ab33e7c415e7

Comment by hari.khalsa@10gen.com [ 29/Oct/13 ]

kangas eliot Yes, this is a lifecycle thing. We invalidate all cursors open on the DB then assert that there are no cursors. Previously we'd just delete the cursors. However, I tag active (ie, a thread is using it in clientcursor or somebody doesn't have a cursorid for it but there is a thread using it) cursors as 'dead' to avoid having to deal with yielding being self-deleting.

We could perhaps move these cursors to a zombie state, or not assert, or assert any cursors are dead, or something else? I am reluctant to have yielding imply self-deletion.

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