Uploaded image for project: 'Mongoid'
  1. Mongoid
  2. MONGOID-4169

Distinct query on string fields leads to crash

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 12_01_17
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Environment:
      ruby-2.1.1p76, ubuntu- 14.04, mongodb-3.0.1

      it "able to apply distinct query on string fields" do
      class Person
      include Mongoid::Document

      field :name, type: String
      end

      Person.create(name: 'Siva')
      expect(Person.distinct(:name)).to match_array(['Siva'])
      end

      gives following error:

      undefined method `__metadata' for "Siva":String

      1. ./lib/mongoid/relations/proxy.rb:141:in `characterize_one'
      2. ./lib/mongoid/relations/embedded/one.rb:20:in `block in initialize'
      3. ./lib/mongoid/relations/proxy.rb:42:in `init'
      4. ./lib/mongoid/relations/embedded/one.rb:19:in `initialize'
      5. ./lib/mongoid/relations/accessors.rb:44:in `new'
      6. ./lib/mongoid/relations/accessors.rb:44:in `create_relation'
      7. ./lib/mongoid/relations/accessors.rb:26:in `_build_'
      8. ./lib/mongoid/relations/accessors.rb:233:in `block (2 levels) in setter'
      9. ./lib/mongoid/relations/accessors.rb:140:in `without_autobuild'
      10. ./lib/mongoid/relations/accessors.rb:229:in `block in setter'
      11. ./lib/mongoid/attributes/processing.rb:144:in `block in process_relations'
      12. ./lib/mongoid/attributes/processing.rb:139:in `each_pair'
      13. ./lib/mongoid/attributes/processing.rb:139:in `process_relations'
      14. ./lib/mongoid/attributes/processing.rb:125:in `process_pending'
      15. ./lib/mongoid/attributes/processing.rb:29:in `process_attributes'
      16. ./lib/mongoid/document.rb:109:in `block in initialize'
      17. ./lib/mongoid/threaded/lifecycle.rb:89:in `_building'
      18. ./lib/mongoid/document.rb:103:in `initialize'
      19. ./lib/mongoid/persistable/creatable.rb:148:in `new'
      20. ./lib/mongoid/persistable/creatable.rb:148:in `block in create'
      21. ./lib/mongoid/threaded/lifecycle.rb:161:in `_creating'
      22. ./lib/mongoid/persistable/creatable.rb:144:in `create'
      23. ./spec/mongoid/findable_spec.rb:496:in `block (2 levels) in <top (required)>'

            Assignee:
            emily.stolfo Emily Stolfo
            Reporter:
            siva.gollapalli Siva Gollapalli
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: