⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.23
Server IP:
178.33.27.10
Server:
Linux cpanel.dev-unit.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
Server Software:
Apache/2.4.57 (Unix) OpenSSL/1.0.2k-fips
PHP Version:
8.2.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
local
/
src
/
mongodb-1.11.1
/
tests
/
manager
/
View File Name :
manager-executeWriteCommand-002.phpt
--TEST-- MongoDB\Driver\Manager::executeWriteCommand() pins transaction to server --SKIPIF-- <?php require __DIR__ . "/../utils/basic-skipif.inc"; ?> <?php skip_if_not_mongos(); ?> <?php skip_if_no_transactions(); ?> <?php skip_if_not_clean(); ?> --FILE-- <?php require_once __DIR__ . "/../utils/basic.inc"; $manager = create_test_manager(); /* Create collections as that can't be (automatically) done in a transaction */ $manager->executeCommand( DATABASE_NAME, new \MongoDB\Driver\Command([ 'create' => COLLECTION_NAME ]), [ 'writeConcern' => new \MongoDB\Driver\WriteConcern( \MongoDB\Driver\WriteConcern::MAJORITY ) ] ); $session = $manager->startSession(); var_dump($session->getServer() instanceof \MongoDB\Driver\Server); $session->startTransaction(); var_dump($session->getServer() instanceof \MongoDB\Driver\Server); $command = new MongoDB\Driver\Command([ 'findAndModify' => COLLECTION_NAME, 'query' => ['_id' => 'foo'], 'upsert' => true, 'new' => true, 'update' => ['x' => 1] ]); $manager->executeWriteCommand(DATABASE_NAME, $command, ['session' => $session]); $pinnedServer = $session->getServer(); var_dump($pinnedServer instanceof \MongoDB\Driver\Server); $bulk = new MongoDB\Driver\BulkWrite(); $bulk->insert(['x' => 1]); $manager->executeBulkWrite(NS, $bulk, ['session' => $session]); $session->commitTransaction(); var_dump($session->getServer() == $pinnedServer); $bulk = new MongoDB\Driver\BulkWrite(); $bulk->insert(['x' => 1]); $manager->executeBulkWrite(NS, $bulk, ['session' => $session]); var_dump($session->getServer() instanceof \MongoDB\Driver\Server); ?> ===DONE=== <?php exit(0); ?> --EXPECT-- bool(false) bool(false) bool(true) bool(true) bool(false) ===DONE===