|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #51220 ext/oci8/tests/lob_043.phpt kills 'make test'
Submitted: 2010-03-06 01:16 UTC Modified: 2010-12-20 12:52 UTC
From: long at ku dot edu Assigned: sixd (profile)
Status: Closed Package: OCI8 related
PHP Version: 5.3.2 OS: Red Hat Enterprise Linux AS rele
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
Bug Type:
From: long at ku dot edu
New email:
PHP Version: OS:


 [2010-03-06 01:16 UTC] long at ku dot edu
Trying to run 'make test' leads to:

FAIL Check various LOB error messages [ext/oci8/tests/lob_042.phpt] 
TEST 4281/10735 [ext/oci8/tests/lob_043.phpt]
Fatal error: Out of memory (allocated 1605894144) (tried to allocate 1598922365 bytes) in /apps/home/long/src/php-5.3.2-ap2/run-tests.php on line 1724
make: [test] Error 255 (ignored)
[long@wbtstap php-5.3.2-ap2]$

[long@wbtstap php-5.3.2-ap2]$ cat config.nice
#! /bin/sh
# Created by configure

CFLAGS='-O3' \
LIBS='-lssl -lncurses' \
'./configure' \
'--enable-discard-path' \
'--with-openssl=shared' \
'--with-zlib=shared' \
'--enable-bcmath' \
'--with-bz2=shared' \
'--enable-calendar' \
'--with-curl=shared' \
'--enable-dba=shared' \
'--with-gdbm=shared' \
'--with-db4=shared' \
'--enable-dbase' \
'--enable-exif' \
'--enable-ftp' \
'--with-gd=shared' \
'--enable-gd-native-ttf' \
'--enable-gd-jis-conv' \
'--with-gettext=shared' \
'--with-gmp=shared' \
'--with-imap=shared' \
'--with-kerberos' \
'--with-imap-ssl' \
'--with-ldap' \
'--enable-mbstring' \
'--with-mysql=/usr' \
'--with-ncurses=shared' \
'--with-oci8' \
'--with-pspell=shared' \
'--with-readline=shared' \
'--enable-shmop' \
'--with-snmp=shared' \
'--enable-sockets' \
'--with-sqlite=shared' \
'--enable-sysvmsg' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-wddx' \
'--with-freetype-dir' \
'--with-jpeg-dir' \
'--with-xpm-dir' \
'--with-apxs2=/usr/local/apache/bin/apxs' \
'--with-mysqli' \
'--enable-pdo=shared' \
'--with-pdo-mysql=shared' \
'--with-pdo-oci=shared' \
'--with-pdo-sqlite=shared' \
'--with-tidy' \
'--enable-soap=shared' \
'--enable-zip' \
'--with-pgsql' \
[long@wbtstap php-5.3.2-ap2]$ 

[long@wbtstap php-5.3.2-ap2]$ cat /usr/local/lib/php.ini
register_globals = on;

; Output buffering allows you to send header lines (including cookies) even
; after you send body content, at the price of slowing PHP's output layer a
; bit.  You can enable output buffering during runtime by calling the output
; buffering functions.  You can also enable output buffering for all files by
; setting this directive to On.  If you wish to limit the size of the buffer
; to a certain size - you can use a maximum number of bytes instead of 'On', as
; a value for this directive (e.g., output_buffering=4096).
output_buffering = 4096

; Error handling and logging ;

; error_reporting is a bit-field.  Or each number up to get desired error
; reporting level
; E_ALL             - All errors and warnings
; E_ERROR           - fatal run-time errors
; E_WARNING         - run-time warnings (non-fatal errors)
; E_PARSE           - compile-time parse errors
; E_NOTICE          - run-time notices (these are warnings which often result
;                     from a bug in your code, but it's possible that it was
;                     intentional (e.g., using an uninitialized variable and
;                     relying on the fact it's automatically initialized to an
;                     empty string)
; E_STRICT          - run-time notices, enable to have PHP suggest changes
;                     to your code which will ensure the best interoperability
;                     and forward compatibility of your code
; E_CORE_ERROR      - fatal errors that occur during PHP's initial startup
; E_CORE_WARNING    - warnings (non-fatal errors) that occur during PHP's
;                     initial startup
; E_COMPILE_ERROR   - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
; E_USER_ERROR      - user-generated error message
; E_USER_WARNING    - user-generated warning message
; E_USER_NOTICE     - user-generated notice message
; Examples:
;   - Show all errors, except for notices and coding standards warnings
;error_reporting = E_ALL & ~E_NOTICE
;   - Show all errors, except for notices
;error_reporting = E_ALL & ~E_NOTICE | E_STRICT
;   - Show only errors, except coding standards warnings
;   - Show all errors
;error_reporting  =  E_ALL
; We only leave error_reporting on for robin, users on other systems
; can enable this using error_reporting()
error_reporting = 0

; PHP 4.2 and less have an undocumented feature/bug that allows you to
; to initialize a session variable in the global scope, albeit register_globals
; is disabled.  PHP 4.3 and later will warn you, if this feature is used.
; You can disable the feature and the warning separately. At this time,
; the warning is only displayed, if bug_compat_42 is enabled.

session.bug_compat_42 = 0
session.bug_compat_warn = 1

upload_max_filesize = 20M

display_startup_errors = On
track_errors = On
html_errors = Off
; causes a bunch of apache error_log junk




open_basedir = /home:/tmp:/usr/local/lib/php
; does not work with suexec due to initializing before ORACLE_HOME can be set, use dl()

lob_043.out is 

Expected result:
I expect 'make test' to not die in the middle.

Actual result:
FAIL lob buffering - 2 [ext/oci8/tests/lob_034.phpt] 
FAIL oci_lob_copy() - 2 [ext/oci8/tests/lob_035.phpt] 
FAIL Exercise cleanup code when LOB buffering is on [ext/oci8/tests/lob_036.phpt] 
FAIL Fetching two different lobs and using them after fetch [ext/oci8/tests/lob_037.phpt] 
FAIL Array fetch CLOB and BLOB [ext/oci8/tests/lob_038.phpt] 
FAIL Test CLOB->write() for multiple inserts [ext/oci8/tests/lob_039.phpt] 
FAIL Bug #37706 (Test LOB locator reuse. Extends simple test of lob_037.phpt) [ext/oci8/tests/lob_040.phpt] 
FAIL Check LOBS are valid after statement free [ext/oci8/tests/lob_041.phpt] 
FAIL Check various LOB error messages [ext/oci8/tests/lob_042.phpt] 
TEST 4281/10735 [ext/oci8/tests/lob_043.phpt]
Fatal error: Out of memory (allocated 1605894144) (tried to allocate 1598922365 bytes) in /apps/home/long/src/php-5.3.2-ap2/run-tests.php on line 1724
make: [test] Error 255 (ignored)
[long@wbtstap php-5.3.2-ap2]$


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2010-03-06 02:25 UTC]
-Status: Open +Status: Assigned
 [2010-03-06 02:25 UTC]
blind guess: The test creates way too much output. Can you check it, Chris?
 [2010-03-26 20:38 UTC]
Automatic comment from SVN on behalf of sixd
Log: Fix #51220 by adding . Also improve reliability for tests using undefined behavior.
 [2010-03-26 20:41 UTC]
-Status: Assigned +Status: Closed
 [2010-03-26 20:41 UTC]
This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
Thank you for the report, and for helping us make PHP better.

This test can sometimes timeout but I've not seen the memory issue.

I've added a flag to in the OCI8 test suite to
enable/disable some "stress" tests.  By default this flag is
disabled and lob_043.phpt won't run.
 [2010-12-20 12:52 UTC]
-Package: Tidy +Package: OCI8 related
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Tue Aug 16 13:05:43 2022 UTC