PHP  
 PHP_7_0
downloads | QA | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
 

Valgrind Report for ext/oci8/tests/bug44206.phpt ('Bug #44206 (Test if selecting ref cursors leads to ORA-1000 maximum open cursors reached)')

Script

1: <?php
2:
3:
require dirname(__FILE__).'/connect.inc';
4:
5:
// Run Test
6:
7:
for ($x 0$x 400$x++)
8: {
9:     
$stmt "select cursor (select $x from dual) a,
10:          cursor (select 
$x from dual) b 
11:          from dual"
;
12:     
$s oci_parse($c$stmt);
13:     
$r oci_execute($s);
14:         if (!
$r) {
15:                 echo 
"Exiting $x\n";
16:                 exit;
17:         }
18:     
$mode OCI_ASSOC OCI_RETURN_NULLS;
19:     
$result oci_fetch_array($s$mode);
20:     
oci_execute($result['A']);
21:     
oci_execute($result['B']);
22:     
oci_fetch_array($result['A'], $mode);
23:     
oci_fetch_array($result['B'], $mode);
24:     
oci_free_statement($result['A']);
25:     
oci_free_statement($result['B']);
26:     
oci_free_statement($s);
27: }
28:
29: echo 
"Completed $x\n";
30:
31:
oci_close($c);
32:
33: echo 
"Done\n";
34:
35:
?>
36:

Report

==30082== Invalid read of size 1
==30082==    at 0xA1E9C6: zval_get_type (zend_types.h:327)
==30082==    by 0xA1E9C6: php_oci_register_taf_callback (oci8_failover.c:108)
==30082==    by 0xA1E97F: php_oci_unregister_taf_callback (oci8_failover.c:92)
==30082==    by 0xA1998D: zif_oci_close (oci8_interface.c:1620)
==30082==    by 0x1092F2A: ZEND_DO_ICALL_SPEC_HANDLER (zend_vm_execute.h:586)
==30082==    by 0x1090CFD: execute_ex (zend_vm_execute.h:417)
==30082==    by 0x1091923: zend_execute (zend_vm_execute.h:458)
==30082==    by 0xFC3656: zend_execute_scripts (zend.c:1443)
==30082==    by 0xEC11C4: php_execute_script (main.c:2493)
==30082==    by 0x11C5E29: do_cli (php_cli.c:977)
==30082==    by 0x11C77B9: main (php_cli.c:1347)
==30082==  Address 0x15033258 is 136 bytes inside a block of size 144 free'd
==30082==    at 0x4C28BD4: free (vg_replace_malloc.c:529)
==30082==    by 0xF643C0: _efree (zend_alloc.c:2472)
==30082==    by 0x9F3CAF: php_oci_connection_close (oci8.c:2267)
==30082==    by 0x9ED7DB: php_oci_connection_list_dtor (oci8.c:1266)
==30082==    by 0x10033C9: zend_resource_dtor (zend_list.c:76)
==30082==    by 0x10034A1: zend_list_close (zend_list.c:89)
==30082==    by 0xA1996F: zif_oci_close (oci8_interface.c:1617)
==30082==    by 0x1092F2A: ZEND_DO_ICALL_SPEC_HANDLER (zend_vm_execute.h:586)
==30082==    by 0x1090CFD: execute_ex (zend_vm_execute.h:417)
==30082==    by 0x1091923: zend_execute (zend_vm_execute.h:458)
==30082==    by 0xFC3656: zend_execute_scripts (zend.c:1443)
==30082==    by 0xEC11C4: php_execute_script (main.c:2493)
==30082==  Block was alloc'd at
==30082==    at 0x4C291FA: malloc (vg_replace_malloc.c:298)
==30082==    by 0xF65A20: __zend_malloc (zend_alloc.c:2864)
==30082==    by 0xF6409D: _emalloc (zend_alloc.c:2457)
==30082==    by 0xF6492B: _safe_emalloc (zend_alloc.c:2516)
==30082==    by 0xF64D3D: _ecalloc (zend_alloc.c:2539)
==30082==    by 0x9F244D: php_oci_do_connect_ex (oci8.c:1981)
==30082==    by 0x9EECE0: php_oci_do_connect (oci8.c:1645)
==30082==    by 0xA19A45: zif_oci_connect (oci8_interface.c:1640)
==30082==    by 0x1092F2A: ZEND_DO_ICALL_SPEC_HANDLER (zend_vm_execute.h:586)
==30082==    by 0x1090CFD: execute_ex (zend_vm_execute.h:417)
==30082==    by 0x1091923: zend_execute (zend_vm_execute.h:458)
==30082==    by 0xFC3656: zend_execute_scripts (zend.c:1443)
==30082== 

 

Generated at Wed, 20 Sep 2017 13:49:37 +0000 (3 days ago)

Copyright © 2005-2017 The PHP Group
All rights reserved.