docs: function (handle) {
      var self = this;
      if (self._queue.safeToRunTask())
        throw Error("_sendAdds may only be called from within a task!");
      var add = self._ordered ? handle._addedBefore : handle._added;
      if (!add)
        return;
      // note: docs may be an _IdMap or an OrderedDict
      self._cache.docs.forEach(function (doc, id) {
        if (!_.has(self._handles, handle._id))
          throw Error("handle got removed before sending initial adds!");
        var fields = EJSON.clone(doc);
        delete fields._id;
        if (self._ordered)
          add(id, fields, null); // we're going in order, so add at end
        else
          add(id, fields);
      });
    }