The following assertion has cropped up in several cases:
Sat Sep 24 17:51:53 [conn18] Assertion failure cc->_pinValue < 100 db/clientcursor.h 309 0x10007d703 0x100087eec 0x1002d64da 0x1003de782 0x1003e272a 0x100603394 0x100148d8c 0x10060a554 0x7fff830d18bf 0x7fff830d4b75 0 mongod 0x000000010007d703 _ZN5mongo12sayDbContextEPKc + 195 1 mongod 0x0000000100087eec _ZN5mongo8assertedEPKcS1_j + 300 2 mongod 0x00000001002d64da _ZN5mongo12ClientCursor5eraseEiPx + 938 3 mongod 0x00000001003de782 _ZN5mongo19receivedKillCursorsERNS_7MessageE + 274 4 mongod 0x00000001003e272a _ZN5mongo16assembleResponseERNS_7MessageERNS_10DbResponseERKNS_11HostAndPortE + 794 5 mongod 0x0000000100603394 _ZN5mongo16MyMessageHandler7processERNS_7MessageEPNS_21AbstractMessagingPortEPNS_9LastErrorE + 148 6 mongod 0x0000000100148d8c _ZN5mongo3pms9threadRunEPNS_13MessagingPortE + 700 7 mongod 0x000000010060a554 thread_proxy + 132 8 libsystem_c.dylib 0x00007fff830d18bf _pthread_start + 335 9 libsystem_c.dylib 0x00007fff830d4b75 thread_start + 13 Sat Sep 24 17:51:53 [conn18] killcursors exception: assertion db/ clientcursor.h:309 321ms
FREE-3022
FREE-3393
CS-1730
CS-1938
probably more, in the logs
Simplest explanation is that a cursor is being killed while in use by a get more (the get more may or may not be yielding). We might want to make the assertion a little more readable.
Also, three of the four cases above seemed to occur with the php driver and in the remaining case I couldn't tell which driver was used. So the cause could be a client side issue, either in the driver or the way the driver is being used.