Re: Bug #15419 Updated: ibase_close problem
| From: | Derick Rethans | Date: | Sun, 24 Mar 2002 18:09:20 +0000 |
| Subject: | Re: Bug #15419 Updated: ibase_close problem | ||
| References: | 1 | Groups: | php.qa |
| Request: | Send a blank email to php-qa+get-4698@lists.php.net to get a copy of this message | ||
On 24 Mar 2002 daniela@php.net wrote:
> ID: 15419
> Updated by: daniela@php.net
> Reported By: p.grabowski@firma.2p.pl
> -Status: No Feedback
> +Status: Closed
> Bug Type: InterBase related
> Operating System: linux red hat
> PHP Version: 4.1.1
> New Comment:
>
> The ibase_connect() create a connection that will be close
> automatically at the end of your script.
> If you want to end it "manually" you have to 'free' the query too.
>
> Try this :
> ......
> ibase_free_result($q);
> ibase_close($dbc1);
hmmm... I think it should not be possible to crash PHP with this.
Would there be a way to prevent this?
Derick
>
>
>
>
>
>
> Previous Comments:
> ------------------------------------------------------------------------
>
> [2002-03-12 14:00:13] haystd@myrealbox.com
>
> I can reproduce this as well. All is fine if the ibase_close call is
> removed. It is a "Segmentation Fault" according to the Apache
> error_log. (Could this be related to BUG 15940?) Here is the debugging
> info:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x4019c07c in memcpy () from /lib/i686/libc.so.6
>
> #0 0x4019c07c in memcpy () from /lib/i686/libc.so.6
> #1 0x00000018 in ?? ()
> #2 0x4003e564 in gds__msg_format () from /opt/interbase/lib/libgds.so
> #3 0x4003e1c8 in gds__interprete () from /opt/interbase/lib/libgds.so
> #4 0x40038ab3 in isc_interprete () from /opt/interbase/lib/libgds.so
> #5 0x0808315a in _php_ibase_error () at interbase.c:268
> #6 0x08083477 in _php_ibase_free_result (rsrc=0x82151a4) at
> interbase.c:388
> #7 0x081214f7 in list_entry_destructor (ptr=0x82151a4) at
> zend_list.c:177
> #8 0x0811f775 in zend_hash_del_key_or_index (ht=0x81c8e64, arKey=0x0,
> nKeyLength=0, h=2, flag=1) at zend_hash.c:512
> #9 0x08121281 in _zend_list_delete (id=2) at zend_list.c:56
> #10 0x0811906d in _zval_dtor (zvalue=0x8215164,
> __zend_filename=0x8191cdc "zend_execute_API.c", __zend_lineno=274)
> at zend_variables.c:64
> #11 0x08110e4a in _zval_ptr_dtor (zval_ptr=0x8215910,
> __zend_filename=0x81925b3 "zend_variables.c", __zend_lineno=192)
> at zend_execute_API.c:274
> #12 0x0811939f in _zval_ptr_dtor_wrapper (zval_ptr=0x8215910)
> at zend_variables.c:192
> #13 0x0811f895 in zend_hash_destroy (ht=0x81c8d48) at zend_hash.c:541
> #14 0x08110b4a in shutdown_executor () at zend_execute_API.c:173
> #15 0x0811a1aa in zend_deactivate () at zend.c:600
> #16 0x0807acdc in php_request_shutdown (dummy=0x0) at main.c:735
> #17 0x08125c5a in apache_php_module_main (r=0x820859c,
> display_source_mode=0)
> at sapi_apache.c:96
> #18 0x0807843c in send_php ()
> #19 0x08078495 in send_parsed_php ()
> #20 0x081471e3 in ap_invoke_handler ()
> #21 0x0815b3c3 in process_request_internal ()
> #22 0x0815b424 in ap_process_request ()
> #23 0x0815288d in child_main ()
> #24 0x08152a38 in make_child ()
> #25 0x08152bac in startup_children ()
> #26 0x08153224 in standalone_main ()
> #27 0x08153a77 in main ()
> #28 0x4012f627 in __libc_start_main (main=0x81536e0 <main>, argc=2,
> ubp_av=0xbffffb94, init=0x8060014 <_init>, fini=0x8169c00 <_fini>,
> rtld_fini=0x4000dcc4 <_dl_fini>, stack_end=0xbffffb8c)
> at ../sysdeps/generic/libc-start.c:129
>
> PHP configured with:
> ./configure --without-mysql --with-apache=../apache_1.3.22/
> --enable-track-vars --with-interbase=/opt/interbase --enable-debug
>
> Apache configured with:
> ./configure --prefix=/usr/local/apache
> --activate-module=src/modules/php4/libphp4.a
>
> Firebase version: FirebirdSS-1.0.0.681-0.RC2
> OS: RedHat 7.2 (Intel)
> Kernel: 2.4.17 (from kernel.org no patches)
> Libc: 2.2.4
> GCC: 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
> PHP: 4.1.2
>
> ------------------------------------------------------------------------
>
> [2002-03-08 00:00:05] php-bugs@lists.php.net
>
> No feedback was provided for this bug for over a month, so it is
> being suspended automatically. If you are able to provide the
> information that was originally requested, please do so and change
> the status of the bug back to "Open".
>
> ------------------------------------------------------------------------
>
> [2002-02-14 06:52:06] markus@colorplaza.com
>
> We experienced this same bug. I tested it in RH 7.2 with IB 6.
> We run the same script from command line and got: Segmentation fault
>
> when I comment ibase_close($db) out the script works fine.
>
> ------------------------------------------------------------------------
>
> [2002-02-07 03:17:27] mfischer@php.net
>
> Can look up in your apache log if you get a segfault or some similar
> crash, and if so can you please provide a backtrace
> (http://bugs.php.net/?id=15419&edit=1) ?
>
> ------------------------------------------------------------------------
>
> [2002-02-07 02:55:13] p.grabowski@firma.2p.pl
>
> <?
>
> $dbc1=ibase_connect('/opt/interbase/bazy/slownik.gdb','SYSDBA','masterkey','WIN1250');
>
> $qST="SELECT NAME,OPIS FROM SLOWNIK WHERE ID=$idD";
> $q=ibase_query($dbc1,$qST);
> list($nameDB,$descriptDB)=ibase_fetch_row($q);
> ibase_close($dbc1); // here is a bug
> ?>
>
> './configure' '--prefix=/usr/local/php4.1.1/'
> '--enable-track-vars'
> '--enable-trans-sid' '--with-mysql' '--disable-debug'
> '--with-apxs=/usr/local/apache-local/bin/apxs' '--enable-shmop'
> '--enable-xml' '--enable-sockets' '--with-gd'
> '--with-interbase=/opt/interbase/'
>
> Any command after ibase_close doesn't execute and apache returns 404
> return code
>
>
>
> ------------------------------------------------------------------------
>
>
> --
> Edit this bug report at
> http://bugs.php.net/?id=15419&edit=1
>