From b8299246b947f5745ce62fe4c56cb6fff1a4422c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jun 2026 06:42:56 +0000 Subject: [PATCH 1/2] Bump tests/specifications from `25bee54` to `7a3f70f` Bumps [tests/specifications](https://github.com/mongodb/specifications) from `25bee54` to `7a3f70f`. - [Release notes](https://github.com/mongodb/specifications/releases) - [Commits](https://github.com/mongodb/specifications/compare/25bee54ba6db27c11ea53e9608f4bd65e4552ac7...7a3f70fbd7fa28974fba588ccc730b52ef922554) --- updated-dependencies: - dependency-name: tests/specifications dependency-version: 7a3f70fbd7fa28974fba588ccc730b52ef922554 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- tests/specifications | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/specifications b/tests/specifications index 25bee54ba..7a3f70fbd 160000 --- a/tests/specifications +++ b/tests/specifications @@ -1 +1 @@ -Subproject commit 25bee54ba6db27c11ea53e9608f4bd65e4552ac7 +Subproject commit 7a3f70fbd7fa28974fba588ccc730b52ef922554 From bf6e8e05844a8b7942236d25102f4fd8747f3964 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Tamarelle?= Date: Wed, 24 Jun 2026 14:26:49 +0200 Subject: [PATCH 2/2] Skip spec tests for afterClusterTime on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274) The specs now require readConcern.afterClusterTime on write commands in causally-consistent sessions. PHPLIB cannot implement this without libmongoc support (DRIVERS-3274), so the new and affected spec tests are marked incomplete until the driver provides the necessary functionality. --- tests/UnifiedSpecTests/UnifiedSpecTest.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/UnifiedSpecTests/UnifiedSpecTest.php b/tests/UnifiedSpecTests/UnifiedSpecTest.php index a9d495ea5..e16eac0d7 100644 --- a/tests/UnifiedSpecTests/UnifiedSpecTest.php +++ b/tests/UnifiedSpecTests/UnifiedSpecTest.php @@ -30,6 +30,9 @@ class UnifiedSpecTest extends FunctionalTestCase * @var array */ private static array $incompleteTestGroups = [ + // Requires afterClusterTime on writes, pending libmongoc support (DRIVERS-3274) + 'causal-consistency/causal consistency write commands include afterClusterTime' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', + 'causal-consistency/causal consistency bulkWrite include afterClusterTime' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', // Spec tests for named KMS providers depends on unimplemented functionality from UTF schema 1.18 'client-side-encryption/namedKMS' => 'UTF schema 1.18 is not supported (PHPLIB-1328)', // Many load balancer tests use CMAP events and/or assertNumberConnectionsCheckedOut @@ -86,6 +89,12 @@ class UnifiedSpecTest extends FunctionalTestCase private static array $incompleteTests = [ // Many load balancer tests use CMAP events and/or assertNumberConnectionsCheckedOut 'load-balancers/monitoring events include correct fields: poolClearedEvent events include serviceId' => 'PHPC does not implement CMAP', + // Requires afterClusterTime on writes in transactions, pending libmongoc support (DRIVERS-3274) + 'transactions/commit: reset session state commit' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', + 'transactions/commit: reset session state abort' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', + 'transactions/retryable-writes: increment txnNumber' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', + 'transactions-convenient-api/callback-aborts: withTransaction still succeeds if callback aborts and runs extra op' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', + 'transactions-convenient-api/callback-commits: withTransaction still succeeds if callback commits and runs extra op' => 'afterClusterTime is not sent on writes pending libmongoc support (PHPLIB-1834, DRIVERS-3274)', // Skips dating back to legacy transaction tests 'transactions/mongos-recovery-token: commitTransaction retry fails on new mongos' => 'isMaster failpoints cannot be disabled', 'transactions/pin-mongos: remain pinned after non-transient error on commit' => 'Blocked on DRIVERS-2104', @@ -150,6 +159,17 @@ public function setUp(): void } } + #[DataProvider('provideCausalConsistencyTests')] + public function testCausalConsistency(UnifiedTestCase $test): void + { + self::$runner->run($test); + } + + public static function provideCausalConsistencyTests(): Generator + { + return self::provideTests('causal-consistency/tests', 'causal-consistency'); + } + #[DataProvider('provideChangeStreamsTests')] public function testChangeStreams(UnifiedTestCase $test): void {