Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/r2018.06.15 #191

Merged
merged 20 commits into from
Jun 15, 2018
Merged

Release/r2018.06.15 #191

merged 20 commits into from
Jun 15, 2018

Commits on Apr 15, 2018

  1. allow ptr in inline structs

    Larry Cinnabar committed Apr 15, 2018
    Configuration menu
    Copy the full SHA
    3381f10 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2018

  1. Configuration menu
    Copy the full SHA
    3fb5f17 View commit details
    Browse the repository at this point in the history
  2. inline pointer_to_struce mode: update comments. return error on point…

    …er not to struct
    Larry Cinnabar committed Apr 29, 2018
    Configuration menu
    Copy the full SHA
    46c4b47 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2018

  1. Merge pull request #146 from larrycinnabar/development

    allow ptr in inline structs
    domodwyer authored Apr 30, 2018
    Configuration menu
    Copy the full SHA
    9a3d363 View commit details
    Browse the repository at this point in the history

Commits on May 8, 2018

  1. fix(dbtest): Use os.Kill on windows instead of Interrupt 🐛

    I've added a use for os.Kill, instead of os.Interrupt signal, when using
    Windows. I'm current developing my project on Windows, and using
    DBServer.Stop() was resulting in: "timeout waiting for mongod process to
    die". After investigating, I've discovered that os.Interrupt isn't
    implemented on Windows, and it seems golang has Frozen this issue due to
    age (2013). They instruct to use os.Kill instead. Using this, the
    DBServer on my project works with no problem.
    ddspog committed May 8, 2018
    Configuration menu
    Copy the full SHA
    db3a6a9 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2018

  1. Merge pull request #158 from ddspog/development

    dbtest: Use os.Kill on Windows instead of os.Interrupt
    domodwyer authored May 9, 2018
    Configuration menu
    Copy the full SHA
    a46ca38 View commit details
    Browse the repository at this point in the history
  2. Respect nil slices, maps in bson encoder (#147)

    * socket: only send client metadata once per socket (#105)
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Merge Development (#111)
    
    * Brings in a patch on having flusher not suppress errors. (#81)
    
    go-mgo#360
    
    * Fallback to JSON tags when BSON tag isn't present (#91)
    
    * Fallback to JSON tags when BSON tag isn't present
    
    
    Cleanup.
    
    * Add test to demonstrate tagging fallback.
    
    - Test coverage for tagging test.
    
    * socket: only send client metadata once per socket
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Cluster abended test 254 (#100)
    
    * Add a test that mongo Server gets their abended reset as necessary.
    
    See https://github.com/go-mgo/mgo/issues/254 and
    https://github.com/go-mgo/mgo/pull/255/files
    
    * Include the patch from Issue 255.
    
    This brings in a test which fails without the patch, and passes with the
    patch. Still to be tested, manual tcpkill of a socket.
    
    * changeStream support (#97)
    
    Add $changeStream support
    
    * readme: credit @peterdeka and @steve-gray (#110)
    
    * Hotfix #120  (#136)
    
    * cluster: fix deadlock in cluster synchronisation (#120)
    
    For a impressively thorough breakdown of the problem, see:
    	#120 (comment)
    
    Huge thanks to @dvic and @KJTsanaktsidis for the report and fix.
    
    * readme: credit @dvic and @KJTsanaktsidis
    
    * added support for marshalling/unmarshalling maps with non-string keys
    
    * refactor method receiver
    
    * added support for json-compatible support for slices and maps Marshal() func: nil slice or map converts to nil, not empty (initialized with len=0)
    
    * fix IsNil on slices and maps
    
    format
    
    * added godoc
    
    * fix sasl empty payload
    
    * fix scram-sha-1 auth
    
    * revert fix sasl empty payload
    aksentyev authored and domodwyer committed May 9, 2018
    Configuration menu
    Copy the full SHA
    45151e7 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2018

  1. Separate read/write network timeouts (#161)

    * socket: separate read/write network timeouts
    
    Splits DialInfo.Timeout (defaults to 60s when using mgo.Dial()) into ReadTimeout
    and WriteTimeout to address #160. Read/write timeout defaults to
    DialInfo.Timeout to preserve existing behaviour.
    
    * cluster: remove AcquireSocket
    
    Only used by tests, replaced by the pool-aware acquire socket functions:
    	* AcquireSocketWithPoolTimeout
    	* AcquireSocketWithBlocking
    
    * cluster: use configured timeouts for cluster operations
    
    * `mongoCluster.syncServer()` no longer uses hard-coded 5 seconds
    * `mongoCluster.isMaster()` no longer uses hard-coded 10 seconds
    
    * tests: use DialInfo for internal timeouts
    
    * server: fix fantastic serverTags nil slice bug
    
    When unmarshalling serverTags, it is now an empty slice, instead of a nil slice.
    
    `len(thing) == 0` works all the time, regardless.
    
    * cluster: remove unused duplicate pool config
    
    * session: avoid calculating default values in hot path
    
    Changes `DialWithInfo` to handle setting default values by setting the relevant
    `DialInfo` field, rather than calling the respective methods in the hot path for:
    
    	* `PoolLimit`
    	* `ReadTimeout`
    	* `WriteTimeout`
    
    * session: remove unused consts
    
    * session: update docs
    domodwyer authored May 11, 2018
    Configuration menu
    Copy the full SHA
    72d0ac2 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2018

  1. add URI options: "w", "j", "wtimeoutMS" (#162)

    * add URI options: "w", "j", "wtimeoutMS"
    
    * change "w" to "j"
    DaytonG authored and domodwyer committed May 14, 2018
    Configuration menu
    Copy the full SHA
    2e9fa92 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2018

  1. Configuration menu
    Copy the full SHA
    bd62d93 View commit details
    Browse the repository at this point in the history

Commits on May 21, 2018

  1. Expand documentation for *Iter.Next (#163)

    The documentation now explains the difference between calling Err and
    Close after Next returns false.
    
    The example code has been expanded to include checking for timeout.
    jefferickson authored and domodwyer committed May 21, 2018
    Configuration menu
    Copy the full SHA
    48a27cc View commit details
    Browse the repository at this point in the history

Commits on May 22, 2018

  1. add NewMongoTimestamp() and MongoTimestamp.Time(),Counter() (#171)

    code is inspired by go-mgo#202
    gedge authored and domodwyer committed May 22, 2018
    Configuration menu
    Copy the full SHA
    0d9d58e View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2018

  1. Configuration menu
    Copy the full SHA
    7253b2b View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2018

  1. Allow passing slice pointer as an interface pointer to Iter.All (#181)

    * socket: only send client metadata once per socket (#105)
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Merge Development (#111)
    
    * Brings in a patch on having flusher not suppress errors. (#81)
    
    go-mgo#360
    
    * Fallback to JSON tags when BSON tag isn't present (#91)
    
    * Fallback to JSON tags when BSON tag isn't present
    
    
    Cleanup.
    
    * Add test to demonstrate tagging fallback.
    
    - Test coverage for tagging test.
    
    * socket: only send client metadata once per socket
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Cluster abended test 254 (#100)
    
    * Add a test that mongo Server gets their abended reset as necessary.
    
    See https://github.com/go-mgo/mgo/issues/254 and
    https://github.com/go-mgo/mgo/pull/255/files
    
    * Include the patch from Issue 255.
    
    This brings in a test which fails without the patch, and passes with the
    patch. Still to be tested, manual tcpkill of a socket.
    
    * changeStream support (#97)
    
    Add $changeStream support
    
    * readme: credit @peterdeka and @steve-gray (#110)
    
    * Hotfix #120  (#136)
    
    * cluster: fix deadlock in cluster synchronisation (#120)
    
    For a impressively thorough breakdown of the problem, see:
    	#120 (comment)
    
    Huge thanks to @dvic and @KJTsanaktsidis for the report and fix.
    
    * readme: credit @dvic and @KJTsanaktsidis
    
    * Allow passing slice pointer as an interface pointer to Iter.All
    
    * Reverted to original error message, added test case for interface{} ptr
    roobre authored and domodwyer committed Jun 5, 2018
    Configuration menu
    Copy the full SHA
    c3b81bb View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2018

  1. Contributing:findAndModify support writeConcern (#185)

    * socket: only send client metadata once per socket (#105)
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Merge Development (#111)
    
    * Brings in a patch on having flusher not suppress errors. (#81)
    
    go-mgo#360
    
    * Fallback to JSON tags when BSON tag isn't present (#91)
    
    * Fallback to JSON tags when BSON tag isn't present
    
    
    Cleanup.
    
    * Add test to demonstrate tagging fallback.
    
    - Test coverage for tagging test.
    
    * socket: only send client metadata once per socket
    
    Periodic cluster synchronisation calls isMaster() which currently resends the
    "client" metadata every call - the spec specifies:
    
    	isMaster commands issued after the initial connection handshake MUST NOT
    	contain handshake arguments
    
    	https://github.com/mongodb/specifications/blob/master/source/mongodb-handshake/handshake.rst#connection-handshake
    
    This hotfix prevents subsequent isMaster calls from sending the client metadata
    again - fixes #101 and fixes #103.
    
    Thanks to @changwoo-nam @qhenkart @canthefason @jyoon17 for spotting the initial
    issue, opening tickets, and having the problem debugged with a PoC fix before I
    even woke up.
    
    * Cluster abended test 254 (#100)
    
    * Add a test that mongo Server gets their abended reset as necessary.
    
    See https://github.com/go-mgo/mgo/issues/254 and
    https://github.com/go-mgo/mgo/pull/255/files
    
    * Include the patch from Issue 255.
    
    This brings in a test which fails without the patch, and passes with the
    patch. Still to be tested, manual tcpkill of a socket.
    
    * changeStream support (#97)
    
    Add $changeStream support
    
    * readme: credit @peterdeka and @steve-gray (#110)
    
    * Hotfix #120  (#136)
    
    * cluster: fix deadlock in cluster synchronisation (#120)
    
    For a impressively thorough breakdown of the problem, see:
    	#120 (comment)
    
    Huge thanks to @dvic and @KJTsanaktsidis for the report and fix.
    
    * readme: credit @dvic and @KJTsanaktsidis
    
    * findAndModify support writeConcern
    
    * fix
    Mei-Zhao authored and domodwyer committed Jun 8, 2018
    Configuration menu
    Copy the full SHA
    abe06ac View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2018

  1. Configuration menu
    Copy the full SHA
    8a9677c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    728c7df View commit details
    Browse the repository at this point in the history
  3. Add support for ssl dial string (#184)

    * Add support for ssl dial string
    
    * Ensure we dont override user settings
    
    * update examples
    
    * update ssl value parsing
    
    * PingSsl test
    
    * skip test requiring system certificates
    tbruyelle authored and domodwyer committed Jun 11, 2018
    Configuration menu
    Copy the full SHA
    b8af7cf View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2018

  1. Configuration menu
    Copy the full SHA
    20226c9 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'development' of ssh://github.com/globalsign/mgo into re…

    …lease/r2018.06.15
    
    * 'development' of ssh://github.com/globalsign/mgo:
      readme: credit @tbruyelle (#190)
      Add support for ssl dial string (#184)
      revert: MGO-156 Avoid iter.Next deadlock on dead sockets (#182) (#188)
      readme: credit everyone (#187)
      Contributing:findAndModify support writeConcern (#185)
      Allow passing slice pointer as an interface pointer to Iter.All (#181)
      MGO-156 Avoid iter.Next deadlock on dead sockets (#182)
      add NewMongoTimestamp() and MongoTimestamp.Time(),Counter() (#171)
      Expand documentation for *Iter.Next (#163)
      Add Collation support for calling Count() on a Query (#166)
      add URI options: "w", "j", "wtimeoutMS" (#162)
      Separate read/write network timeouts (#161)
      Respect nil slices, maps in bson encoder (#147)
      fix(dbtest): Use os.Kill on windows instead of Interrupt 🐛
      inline pointer_to_struce mode: update comments. return error on pointer not to struct
      allow ptr in inline structs
    domodwyer committed Jun 15, 2018
    Configuration menu
    Copy the full SHA
    7045023 View commit details
    Browse the repository at this point in the history