ID: 42266 Comment by: ale dot pas at tiscali dot it Reported By: karasek at ceskyserver dot cz Status: Open Bug Type: InterBase related Operating System: Linux 64-bit PHP Version: 5.2.4 New Comment:
Ok, after 10 months this bug is sill open without a comment from a developer. This clearly proves that PHP is definitely not ready for enterprise solutions. It's a pity we choose PHP for almost all of our projects, do not make this error, choose Java, Python or Ruby you will find a better support there. Previous Comments: ------------------------------------------------------------------------ [2008-02-12 05:32:12] info at olemera dot com Is the a new patch for the (64-bit version) with Firebird 2.0 ? I get an integer Error. Regards, http://www.olemera.com/loans/home-loans/integer-home-loans/ [url=http://www.olemera.com/loans/home-loans/integer-home-loans/]Olemera[/url] ------------------------------------------------------------------------ [2007-09-05 12:52:43] karasek at ceskyserver dot cz Hi, I have some new informations. When I compile PHP on the 64-bit architecture, I get this warnings: /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function '_php_ibase_free_blob': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:41: warning: comparison between pointer and integer /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function 'zif_ibase_blob_create': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:223: warning: assignment makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function 'zif_ibase_blob_open': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:267: warning: assignment makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function '_php_ibase_blob_end': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:369: warning: assignment makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:377: warning: assignment makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function 'zif_ibase_blob_info': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:409: warning: initialization makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function 'zif_ibase_blob_echo': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:485: warning: initialization makes integer from pointer without a cast /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c: In function 'zif_ibase_blob_import': /home/phobos/sources/php-5.2.4/ext/interbase/ibase_blobs.c:546: warning: initialization makes integer from pointer without a cast -- but I don't get them on 32-bit architecture. I tryed to find out why. And this is the answer: ibase.h: row 68: #if defined(_LP64) || defined(__LP64__) || defined(__arch64__) typedef unsigned int FB_API_HANDLE; #else typedef void* FB_API_HANDLE; #endif This means, that the type "FB_API_HANDLE" is pointer on 32-bit architecture, but it's not a pointer on 64-bit architecture. So, construction like: FB_API_HANDLE what_ever = NULL; Causes a warning on 64-bit architecture. Note, that there are some "aliases": typedef FB_API_HANDLE isc_att_handle; typedef FB_API_HANDLE isc_blob_handle; typedef FB_API_HANDLE isc_db_handle; typedef FB_API_HANDLE isc_req_handle; typedef FB_API_HANDLE isc_stmt_handle; typedef FB_API_HANDLE isc_svc_handle; typedef FB_API_HANDLE isc_tr_handle; I belive, that this the "source of trouble". ------------------------------------------------------------------------ [2007-08-29 08:43:14] ale dot pas at tiscali dot it Same problem here. See my comment on Bug #42089 ------------------------------------------------------------------------ [2007-08-22 15:51:55] karasek at ceskyserver dot cz Now I have done some tests and I'm sure, that the problem is related to the 64-bit platform - not to Firebird 2.0. I have tested 5.2.4RC2 on Kubuntu (32-bit) and the "InterBase: BLOB test" passed. Then, with the same version (5.2.4RC2) on CentOS (64-bit) "InterBase: BLOB test" failed. On both systems was installed the same version of Firebird... ------------------------------------------------------------------------ [2007-08-10 15:40:26] karasek at ceskyserver dot cz Description: ------------ When I compile PHP on our new installation of CentOS 5.0 (64-bit version) with Firebird 2.0, "InterBase: BLOB test" fails. It's really critical issue for our company, because some of our applications stoped working... When I tryed the same on CentOS 4.1 (32-bit version) with Firebird 1.5, the test passed. In fact, I'm not sure, whether is the problem caused by the new version of Firebird, or by the 64-bit architecture (but my guess is the 64-bit). I tryed to work with BLOBs using a desktop application - and verified, that BLOG support in Firebird 2.0 itself works (on the same server). I have experienced the problem on PHP 5.2.3, 5.2.4RC1 and snapshot php5.2-200708101430 I think, that this is the same problem as Bug #42089, but the bug is now not open, and I don't know, how to open it again (I'm not the person, who originally reported it). I'm ready to colaborate, so feel free to contact me, if you need further informations... Regards Tony Reproduce code: --------------- make make test ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=42266&edit=1