Annotation of embedaddon/php/ext/oci8/tests/bug42496_2.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #42496 (LOB fetch leaks cursors, eventually failing with ORA-1000 maximum open cursors reached)
        !             3: --SKIPIF--
        !             4: <?php
        !             5: $target_dbs = array('oracledb' => true, 'timesten' => false);  // test runs on these DBs
        !             6: require(dirname(__FILE__).'/skipif.inc');
        !             7: if (getenv('SKIP_SLOW_TESTS')) die('skip slow tests excluded by request');
        !             8: ?> 
        !             9: --FILE--
        !            10: <?php
        !            11: 
        !            12: require dirname(__FILE__).'/connect.inc';
        !            13: 
        !            14: // Initialization
        !            15: 
        !            16: $stmtarray = array(
        !            17:        "DROP table bug42496_2_tab",
        !            18:        "CREATE table bug42496_2_tab(c1 CLOB, c2 CLOB)",
        !            19:        "INSERT INTO bug42496_2_tab VALUES('test1', 'test1')",
        !            20:        "INSERT INTO bug42496_2_tab VALUES('test2', 'test2')",
        !            21:        "INSERT INTO bug42496_2_tab VALUES('test3', 'test3')"
        !            22: );
        !            23: 
        !            24: oci8_test_sql_execute($c, $stmtarray);
        !            25: 
        !            26: // Run Test
        !            27: 
        !            28: echo "Test 2\n";
        !            29: 
        !            30: for ($i = 0; $i < 15000; $i++) {
        !            31:        $s = oci_parse($c, "SELECT * from bug42496_2_tab");
        !            32:        if (oci_execute($s)) {
        !            33:                $arr = array();
        !            34:                while ($arr = oci_fetch_assoc($s)) {
        !            35:                        $arr['C1']->free();
        !            36:                        $arr['C2']->free();
        !            37:                }
        !            38:        }
        !            39:        oci_free_statement($s);
        !            40: }
        !            41: 
        !            42: echo "Done\n";
        !            43: 
        !            44: // Cleanup
        !            45: 
        !            46: $stmtarray = array(
        !            47:        "DROP table bug42496_2_tab"
        !            48: );
        !            49: 
        !            50: oci8_test_sql_execute($c, $stmtarray);
        !            51: 
        !            52: ?>
        !            53: --EXPECTF--
        !            54: Test 2
        !            55: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>