Uploaded image for project: 'Ruby Driver'
  1. Ruby Driver
  2. RUBY-1147

Error when sending getMore command on 3.2 and limit or batchSize is 0

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 2.4.0, 2.3.1
    • Affects Version/s: None
    • Component/s: None
    • None
    • Environment:
      Ruby on Rails with MongoDB 3.2.6
      Platform: JRuby, Docker, Kubernetes, AWS

      When trying to retrieve a set of documents:

      #<Mongo::Error::OperationFailure: Batch size for getMore must be positive, but received: 0 (2)>

      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/operation/result.rb:256:in `validate!'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/operation/executable.rb:37:in `block in execute'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/server/connection_pool.rb:107:in `with_connection'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/server.rb:231:in `with_connection'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/operation/executable.rb:35:in `execute'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/cursor.rb:188:in `block in get_more'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/retryable.rb:51:in `read_with_retry'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/cursor.rb:187:in `get_more'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/cursor.rb:113:in `each'
      /usr/local/bundle/gems/mongo-2.3.0/lib/mongo/collection/view/iterable.rb:46:in `each'
      /usr/local/bundle/gems/mongoid-5.1.4/lib/mongoid/query_cache.rb:207:in `each'
      /usr/local/bundle/gems/mongoid-5.1.4/lib/mongoid/contextual/mongo.rb:121:in `each'
      /usr/local/bundle/gems/mongoid-5.1.4/lib/mongoid/contextual.rb:20:in `each'
      org/jruby/RubyEnumerable.java:447:in `to_a'
      /var/www/apps/cdris_repo/app/models/patient.rb:108:in `documents'
      /var/www/apps/cdris_repo/app/controllers/api/v1/patient_document_controller.rb:409:in `get_patient_documents_by_patient_within_time_window'
      /var/www/apps/cdris_repo/app/controllers/api/v1/patient_document_controller.rb:309:in `block in show_filtered_patient_document_set'
      /var/www/apps/cdris_repo/app/presenters/api/v1/patient_document.rb:156:in `present'
      /var/www/apps/cdris_repo/app/controllers/api/v1/patient_document_controller.rb:308:in `show_filtered_patient_document_set'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/abstract_controller/base.rb:198:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/rendering.rb:10:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:117:in `call'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:555:in `block in compile'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:505:in `call'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:92:in `_run_callbacks_'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:81:in `run_callbacks'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/abstract_controller/callbacks.rb:19:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/rescue.rb:29:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/instrumentation.rb:36:in `block in process_action'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/notifications.rb:164:in `block in instrument'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/notifications.rb:164:in `instrument'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/abstract_controller/base.rb:137:in `process'
      /usr/local/bundle/gems/actionview-4.2.7/lib/action_view/rendering.rb:30:in `process'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal.rb:196:in `dispatch'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_controller/metal.rb:237:in `block in action'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/routing/route_set.rb:74:in `dispatch'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/routing/route_set.rb:43:in `serve'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/journey/router.rb:43:in `block in serve'
      org/jruby/RubyArray.java:1593:in `each'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/journey/router.rb:30:in `serve'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/routing/route_set.rb:817:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/etag.rb:24:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/conditionalget.rb:25:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/head.rb:13:in `call'
      /usr/local/bundle/gems/actionpack-xml_parser-1.0.2/lib/action_dispatch/xml_params_parser.rb:16:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
      /var/www/apps/cdris_repo/lib/params_parser_rescue.rb:6:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/flash.rb:260:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in `context'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/cookies.rb:560:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:88:in `_run_callbacks_'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
      /usr/local/bundle/gems/activesupport-4.2.7/lib/active_support/callbacks.rb:81:in `run_callbacks'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
      /usr/local/bundle/gems/railties-4.2.7/lib/rails/rack/logger.rb:38:in `call_app'
      /usr/local/bundle/gems/railties-4.2.7/lib/rails/rack/logger.rb:22:in `call'
      /usr/local/bundle/gems/actionpack-4.2.7/lib/action_dispatch/middleware/request_id.rb:21:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/runtime.rb:18:in `call'
      /usr/local/bundle/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in `call'
      /var/www/apps/cdris_repo/app/middleware/set_tenant_context.rb:10:in `block in call'
      /var/www/apps/cdris_repo/app/models/tenant_context.rb:74:in `with_tenant_id'
      /var/www/apps/cdris_repo/app/middleware/set_tenant_context.rb:9:in `call'
      /var/www/apps/cdris_repo/app/middleware/admin_logger.rb:11:in `call'
      /var/www/apps/cdris_repo/app/middleware/set_user_context.rb:10:in `block in call'
      /var/www/apps/cdris_repo/app/models/user_context.rb:36:in `with_user'
      /var/www/apps/cdris_repo/app/middleware/set_user_context.rb:9:in `call'
      /usr/local/bundle/gems/railties-4.2.7/lib/rails/engine.rb:518:in `call'
      /usr/local/bundle/gems/railties-4.2.7/lib/rails/application.rb:165:in `call'
      org/jruby/RubyKernel.java:1812:in `public_send'
      /usr/local/bundle/gems/railties-4.2.7/lib/rails/railtie.rb:194:in `method_missing'
      /usr/local/bundle/gems/puma-3.5.2-java/lib/puma/configuration.rb:225:in `call'
      /usr/local/bundle/gems/puma-3.5.2-java/lib/puma/server.rb:569:in `handle_request'
      /usr/local/bundle/gems/puma-3.5.2-java/lib/puma/server.rb:406:in `process_client'
      /usr/local/bundle/gems/puma-3.5.2-java/lib/puma/server.rb:271:in `block in run'
      /usr/local/bundle/gems/puma-3.5.2-java/lib/puma/thread_pool.rb:116:in `block in spawn_thread'

        1. Gemfile
          3 kB
        2. mongo-conf.yml
          1.0 kB
        3. mongo.rb
          1 kB

            Assignee:
            emily.stolfo Emily Stolfo
            Reporter:
            batessr@upmc.edu Steven Bates
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: