FAQ
Edit report at https://bugs.php.net/bug.php?id=70788&edit=1

  ID: 70788
  Updated by: sixd@php.net
  Reported by: nick dot saraniti@gmail.com
  Summary: calling multiple oci_free_statement results in
                      segfault (11)
  Status: Feedback
  Type: Bug
  Package: OCI8 related
  Operating System: Centos 6.7
  PHP Version: 7.0.0RC5
  Assigned To: sixd
  Block user comment: N
  Private report: N

  New Comment:

Didn't reproduce with current 7.0 using Apache 2.4 on OS X.
Can you try again with the latest OCI8?


Previous Comments:
------------------------------------------------------------------------
[2015-11-02 21:16:43] nick dot saraniti@gmail.com

I ran into this problem with the Apache MOD_PHP SAPI, not CLI

------------------------------------------------------------------------
[2015-11-02 19:28:13] sixd@php.net

Doesn't reproduce with cli SAPI in current 7.0 branch. All, one or no oci_free_statement() calls have same behavior.

------------------------------------------------------------------------
[2015-10-26 00:42:31] nick dot saraniti@gmail.com

Changed from pdo_oci to oci

------------------------------------------------------------------------
[2015-10-26 00:41:19] nick dot saraniti@gmail.com

Description:
------------
PHP 7RC5
Centos 6.7
Oracle Instaclient 12.1 (from rpm)
Apache/2.2.15

If you uncomment the oci_free_results() in the code below apache will segfault. If you only call oci_free_results() once, it does not.

Test script:
---------------
<?php
$SETTINGS_DB_username = "xxxxx";
$SETTINGS_DB_password = "xxxxx";
$SETTINGS_DB_ip = "10.10.10.202/XX";

// Connection String
if (!isset ($dbConx)) {
  $dbConx = oci_pconnect ( "$SETTINGS_DB_username", "$SETTINGS_DB_password", "$SETTINGS_DB_ip" );
}

function ORACLE_GET_MONTH()
{
  $SQL="SELECT TRUNC(SYSDATE, 'MONTH') AS MONTH FROM DUAL";
  $stmt = oci_parse ( $GLOBALS ['dbConx'], $SQL );
  oci_execute ( $stmt, OCI_DEFAULT );
  $result = oci_fetch_assoc ( $stmt );
  return $result['MONTH'];
  //oci_free_statement ( $stmt );
}

function ORACLE_GET_YEAR()
{
  $SQL="SELECT TRUNC(SYSDATE, 'YEAR') AS YEAR FROM DUAL";
  $stmt = oci_parse ( $GLOBALS ['dbConx'], $SQL );
  oci_execute ( $stmt, OCI_DEFAULT );
  $result = oci_fetch_assoc ( $stmt );
  return $result['YEAR'];
  //oci_free_statement ( $stmt );
}

$oci_month=ORACLE_GET_MONTH();
$oci_year=ORACLE_GET_YEAR();

echo "Month: $oci_month<br />";
echo "Year: $oci_year<br />";



------------------------------------------------------------------------

Search Discussions

Discussion Posts

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 1 of 2 | next ›
Discussion Overview
groupphp-bugs @
categoriesphp
postedNov 8, '15 at 8:39p
activeNov 22, '15 at 4:22a
posts2
users2
websitephp.net

2 users in discussion

Sixd: 1 post Php-bugs: 1 post

People

Translate

site design / logo © 2019 Grokbase