php-src/ext/oci8/tests/drcp_cclass1.phpt
Christopher Jones b9f72771a6 MFH
Cleaned up whitespace

Fixed bug #44372 (compilation with Oracle 10gR1 libraries)
http://bugs.php.net/bug.php?id=44372

Updated updated error number list to improve re-connection
behavior after a database restart.

Guard against potential internal list corruption after ping
removes old oci_pconnect() information.

Fix ini_set("oci8.connection_class", "abc") to get an appropriate
persistent connection.

Ping at oci8.ping_interval for oci_connect() and oci_new_connect()
when DRCP connections are used. This improves non-persistent
connection reliability if a database gets restarted.
2008-03-12 01:26:44 +00:00

81 lines
1.4 KiB
PHP

--TEST--
DRCP: Test setting connection class inline
--SKIPIF--
<?php
if (!extension_loaded('oci8')) die ("skip no oci8 extension");
require(__DIR__."/details.inc");
if (!$test_drcp) die("skip testing DRCP connection class only works in DRCP mode");
if (strcasecmp($user, "system") && strcasecmp($user, "sys")) die("skip needs to be run as a DBA user");
?>
--FILE--
<?php
require(__DIR__."/details.inc");
// Initialization
$t = time();
$cc1 = 'cc1_'.$t;
$cc2 = 'cc2_'.$t;
// Run Test
echo "Test 1\n";
ini_set('oci8.connection_class', $cc1);
$c = oci_pconnect($user, $password, $dbase);
$s = oci_parse($c, "select * from dual");
oci_execute($s);
oci_fetch_all($s, $r);
var_dump($r);
echo "Test 2\n";
ini_set('oci8.connection_class', $cc2);
$c = oci_pconnect($user, $password, $dbase);
$s = oci_parse($c, "select * from dual");
oci_execute($s);
oci_fetch_all($s, $r);
var_dump($r);
echo "Test 3\n";
$s = oci_parse($c, "select cclass_name from v\$cpool_cc_stats where cclass_name like '%.cc__$t'");
oci_execute($s);
oci_fetch_all($s, $r);
var_dump($r);
// Cleanup
echo "Done\n";
?>
--EXPECTF--
Test 1
array(1) {
["DUMMY"]=>
array(1) {
[0]=>
string(1) "X"
}
}
Test 2
array(1) {
["DUMMY"]=>
array(1) {
[0]=>
string(1) "X"
}
}
Test 3
array(1) {
["CCLASS_NAME"]=>
array(2) {
[0]=>
string(21) "%s.cc1_%d"
[1]=>
string(21) "%s.cc2_%d"
}
}
Done