Commit Graph

14 Commits

Author SHA1 Message Date
Jeremy Mikola
93efe0aeb6 PHPC-2073: Remove references to pre-3.6 servers (#1305)
* Remove pre-3.6 server versions from Evergreen matrix

* Remove skipped tests for pre-3.6 servers

* Remove old mongo-orchestration configs and Evergreen tasks

* Remove flaky replica set tests

These tests assume a particular replica set member is always the primary, so tag assertions may fail if a different member is elected. The server-getTags-002.phpt test has more flexible assertions for replica set tags, so we can safely remove these tests.
2022-03-01 20:30:00 -05:00
Jeremy Mikola
83521ad9f7 PHPC-2003: Implement Session::isDirty() (#1293) 2022-01-18 10:58:00 -05:00
Jeremy Mikola
ac4935338a PHPC-1761: Snapshot Reads (#1243)
* Bump libmongoc to 1.19-dev

* PHPC-1890: Constant for ReadConcern snapshot level

* Move Manager::startSession() error test and delete obsolete test

The deleted error test was redundant. It was originally created in ca4c52eb1c to work around changes in PHP 8, but 60febd0f28 subsequently reintroduced a portable version of the test case.

Also adds missing SKIPIF to startSession test.

* PHPC-1889: Session snapshot option

* PHPC-1875: Session with snapshot=true cannot perform writes

* PHPC-1876: Session with snapshot=true requires MongoDB 5.0+
2021-08-04 19:11:33 -04:00
Tanli Su
9890e619f4 PHPC-1474: Expose transaction information in debug info for session 2021-07-02 15:50:41 -04:00
Andreas Braun
deead9687e PHPC-1716 Allow configuring server API version in manager (#1204)
* Introduce MongoDB\Driver\ServerApi

* Accept serverApi driver option

* Introduce create_test_manager factory to create manager

A centralised entry point is required to inject the API_VERSION env variable later.

* Add build variant to test with requireApiVersion=true

* Fix wrong configuration for auth variable

This changed when migrating from our own scripts to drivers-evergreen-tools and was not updated properly, causing all tests to run with auth disabled.

* Declare ZEND_PARSE_PARAMETERS_NONE macro

This macro is missing on PHP < 7.3

* Remove duplicated API param storage

* Add missing semicolons

* Add ZEND_PARSE_PARAMETERS_NON_EX macro

* Extract error handling functionality to separate macros

* Throw if internal mongoc_server_api_t is already initialised

* Use imported namespaces in tools file

* Fix type info for reflection

* Use American English spelling

* Only use typed serialize signature on PHP 8+

* Update PHONGO_PARSE_PARAMETERS_NONE macro for PHP < 7.3

* Remove usage of ZEND_STRL within zend_hash_str_add

This causes compile failures on PHP < 7.3 that I have yet to understand.

* Fix errors in new PHONGO_PARSE_PARAMETERS macros
2021-03-26 15:43:48 +01:00
Andreas Braun
969b0f827e PHPC-1290: Expose pinned server on session object 2019-08-28 20:10:46 +02:00
Jeremy Mikola
58fa85e85e PHPC-1113: Use common URI constant 2018-05-02 16:04:09 -04:00
Jeremy Mikola
5f7f350670 PHPC-1113: Replace NEEDS('STANDALONE') with skip function 2018-05-02 16:04:08 -04:00
Jeremy Mikola
fe52b484be PHPC-1113: Replace NEEDS_ATLEAST_MONGODB_VERSION() with skip function 2018-05-02 16:04:07 -04:00
Jeremy Mikola
8a83606e9b PHPC-1113: Replace NEEDS_CRYPTO() with skip function 2018-05-02 16:04:07 -04:00
Jeremy Mikola
2ecee506b4 PHPC-1100: Require SSL or crypto as needed in tests
This addresses test failures when the driver is compiled without SSL.
2018-01-23 09:25:44 -05:00
Derick Rethans
1e06f3428f Replace check for 'TRAVIS' with MongoDB server version check 2018-01-12 11:55:41 +00:00
Jeremy Mikola
939e96b6df PHPC-987: Add operation time to Session 2017-12-20 22:24:25 -05:00
Jeremy Mikola
d1d9d4a2bd PHPC-980: MongoDB\Driver\Session and "session" option
This introduces a Session class, which wraps libmongoc's client session object. Additionally, we support a "session" option on Manager and Server execute methods to allow operations to be associated with an explicit session (mostly relevant for causal consistency).
2017-12-15 16:25:56 -05:00