1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
|
--TEST--
Test for PHP-522: Setting per-insert options. (no streams)
--SKIPIF--
<?php $needs = "2.5.5"; $needsOp = "lt"; ?>
<?php if (MONGO_STREAMS) { echo "skip This test requires streams support to be disabled"; } ?>
<?php require_once "tests/utils/replicaset.inc";?>
--FILE--
<?php
require_once "tests/utils/server.inc";
MongoLog::setModule( MongoLog::IO );
MongoLog::setLevel( MongoLog::FINE );
set_error_handler( 'error' );
function error( $a, $b, $c )
{
echo $b, "\n";
}
$m = mongo();
$c = $m->selectCollection( dbname(), "php-522_error" );
try {
$retval = $c->insert( array( 'test' => 1 ), array( 'fsync' => "1", 'safe' => 1, 'w' => 4, 'timeout' => "1" ) );
var_dump($retval["ok"]);
} catch ( Exception $e ) {
echo $e->getMessage(), "\n";
}
echo "-----\n";
try {
$retval = $c->insert( array( 'test' => 1 ), array( 'fsync' => "1", 'safe' => 1, 'w' => 4, 'timeout' => "1foo" ) );
var_dump($retval["ok"]);
} catch ( Exception $e ) {
echo $e->getMessage(), "\n";
}
echo "-----\n";
try {
$c->w = 2;
$retval = $c->insert( array( 'test' => 1 ), array( 'fsync' => false, 'safe' => 1, 'timeout' => M_PI * 100 ) );
var_dump($retval["ok"]);
} catch ( Exception $e ) {
echo $e->getMessage(), "\n";
}
echo "-----\n";
try {
$c->w = 2;
$retval = $c->insert( array( 'test' => 1 ), array( 'fsync' => "yesplease", 'safe' => 5, 'timeout' => M_PI * 1000 ) );
var_dump($retval["ok"]);
} catch ( Exception $e ) {
echo $e->getMessage(), "\n";
}
echo "-----\n";
try {
$c->w = 2;
$c->wtimeout = 4500;
$retval = $c->insert( array( 'test' => 1 ), array( 'fsync' => false, 'safe' => "allDCs", 'timeout' => M_PI * 1000 ) );
var_dump($retval["ok"]);
} catch ( Exception $e ) {
echo $e->getMessage(), "\n";
}
echo "-----\n";
?>
--EXPECTF--
IO FINE: is_gle_op: yes
IO FINE: append_getlasterror
MongoCollection::insert(): The 'timeout' option is deprecated, please use 'socketTimeoutMS' instead
IO FINE: append_getlasterror: added w=4
IO FINE: append_getlasterror: added wtimeout=10000 (from collection property)
IO FINE: append_getlasterror: added fsync=1
IO FINE: getting reply
IO FINE: getting cursor header
%s:%d: Timed out waiting for header data
-----
IO FINE: is_gle_op: yes
IO FINE: append_getlasterror
MongoCollection::insert(): The 'timeout' option is deprecated, please use 'socketTimeoutMS' instead
IO FINE: append_getlasterror: added w=4
IO FINE: append_getlasterror: added wtimeout=10000 (from collection property)
IO FINE: append_getlasterror: added fsync=1
IO FINE: getting reply
IO FINE: getting cursor header
%s:%d: Timed out waiting for header data
-----
MongoCollection::insert(): The 'safe' option is deprecated, please use 'w' instead
IO FINE: is_gle_op: yes
IO FINE: append_getlasterror
MongoCollection::insert(): The 'timeout' option is deprecated, please use 'socketTimeoutMS' instead
IO FINE: getting reply
IO FINE: getting cursor header
IO FINE: getting cursor body
float(1)
-----
MongoCollection::insert(): The 'safe' option is deprecated, please use 'w' instead
IO FINE: is_gle_op: yes
IO FINE: append_getlasterror
MongoCollection::insert(): The 'timeout' option is deprecated, please use 'socketTimeoutMS' instead
IO FINE: append_getlasterror: added w=5
IO FINE: append_getlasterror: added wtimeout=10000 (from collection property)
IO FINE: append_getlasterror: added fsync=1
IO FINE: getting reply
IO FINE: getting cursor header
%s:%d: Timed out waiting for header data
-----
MongoCollection::insert(): The 'safe' option is deprecated, please use 'w' instead
IO FINE: is_gle_op: yes
IO FINE: append_getlasterror
MongoCollection::insert(): The 'timeout' option is deprecated, please use 'socketTimeoutMS' instead
IO FINE: append_getlasterror: added w='allDCs'
IO FINE: append_getlasterror: added wtimeout=4500 (from collection property)
IO FINE: getting reply
IO FINE: getting cursor header
IO FINE: getting cursor body
%s:%d: exception: unrecognized getLastError mode: allDCs
-----
|