• Type: Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Priority: Icon: Critical - P2 Critical - P2
    • 4.12.1
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • 0
    • Not Needed
    • Not Needed

      @Durran Jordan
      The fix solves the original issue, but we got a crash in code added in the fix:

      TypeError: undefined is not iterable (cannot read property Symbol(Symbol.iterator))
          at Connection.onMessage (/var/cache/npm/mongodb-4.12.0/lib/cmap/connection.js:177:51)
          at MessageStream.<anonymous> (/var/cache/npm/mongodb-4.12.0/lib/cmap/connection.js:61:60)
          at MessageStream.emit (events.js:400:28)
          at MessageStream.emit (domain.js:475:12)
          at /var/cache/npm/mongodb-4.12.0/lib/cmap/message_stream.js:151:16
          at callbackTrampoline (internal/async_hooks.js:130:17)
      

      In current git tree it is the file cmap/connection.ts, line 388

              // Get the first orphaned operation description.
              const entry = this[kQueue].entries().next();
              if (entry) {
      ==>       const [requestId, orphaned]: [number, OperationDescription] = entry.value;
                // If the orphaned operation description exists then set it.
                operationDescription = orphaned;
                // Remove the entry with the bad request id from the queue.
                this[kQueue].delete(requestId);
              }
      

      Seems, entry.value is 'undefined'.
      There is no specific scenario, we got crash on production, with standalone mongod (without replica set).
      Should we open new issue?

            Assignee:
            durran.jordan@mongodb.com Durran Jordan
            Reporter:
            durran.jordan@mongodb.com Durran Jordan
            Daria Pardue
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: