ID: 45516 User updated by: twilightthorn dot kh at gmail dot com Reported By: twilightthorn dot kh at gmail dot com -Status: Feedback +Status: Open Bug Type: PostgreSQL related Operating System: Vista Business PHP Version: 5.2.6 Assigned To: pajoye New Comment:
Trying to run the file through the command line makes the CLI crash as well. The system logged this for CLI's crash: ------------------- Faulting application php.exe, version 5.2.6.6, time stamp 0x481b8f60, faulting module ntdll.dll, version 6.0.6000.16386, time stamp 0x4549bdc9, exception code 0xc00000fd, fault offset 0x000447f2, process id 0x1398, application start time 0x01c8e660c8bcb334. ------------------- As for your Back-trace, I hope this covers it. :) ------------------- Thread 0 - System ID 4972 Entry point php+2fc2 Create time 7/15/2008 3:06:11 AM Time spent in user mode 0 Days 0:0:1.497 Time spent in kernel mode 0 Days 0:0:13.88 Function Arg 1 Arg 2 Arg 3 Source ntdll!_SEH_prolog4+1a 00413398 004133c0 00000000 ntdll!RtlAllocateHeap+17c 00140000 00000000 0000021a ntdll!RtlpDosPathNameToRelativeNtPathName_Ustr+97 00000001 00413330 004133cc ntdll!RtlpDosPathNameToRelativeNtPathName_U+61 00000001 7ffdec00 004133cc ntdll!RtlDosPathNameToRelativeNtPathName_U+18 7ffdec00 004133cc 004133c0 kernel32!FindFirstFileExW+a0 7ffdec00 00000000 00413684 kernel32!FindFirstFileA+44 0229b770 00413a28 022bd789 php5ts!virtual_file_ex+6d3 052ae270 00000000 003a2638 php5ts!php_stat+1c5 00414e58 003a0000 00000000 ntdll!RtlpLowFragHeapAllocFromContext+a6f 00000018 01970b40 1019ba22 php5ts!ts_resource_ex+15 0226a380 00000004 00000000 php5ts!ecalloc+13 0196eb18 003a2638 003a2638 php5ts!execute+b48 00000000 00000000 00000000 NTDLL!_SEH_PROLOG4+1AIn php__PID__4724__Date__07_15_2008__Time_03_06_41AM__649__Second_Chance_Exception_C00000FD.dmp the assembly instruction at ntdll!_SEH_prolog4+1a in C:\Windows\System32\ntdll.dll from Microsoft Corporation has caused a stack overflow exception (0xC00000FD) when trying to write to memory location 0x00412fdc on thread 0 Module Information Image Name: C:\Windows\System32\ntdll.dll Symbol Type: PDB Base address: 0x77700000 Time Stamp: Thu Nov 02 02:43:37 2006 Checksum: 0x00128171 Comments: COM DLL: False Company Name: Microsoft Corporation ISAPIExtension: False File Description: NT Layer DLL ISAPIFilter: False File Version: 6.0.6000.16386 (vista_rtm.061101-2205) Managed DLL: False Internal Name: ntdll.dll VB DLL: False Legal Copyright: © Microsoft Corporation. All rights reserved. Loaded Image Name: ntdll.dll Legal Trademarks: Mapped Image Name: Original filename: ntdll.dll Module name: ntdll Private Build: Single Threaded: False Product Name: Microsoft® Windows® Operating System Module Size: 1.12 MBytes Product Version: 6.0.6000.16386 Symbol File Name: c:\symcache\ntdll.pdb\C0A498F0036E4D4FB5CBF69005B0F9242\ntdll.pdb Special Build: & ------------------------ Really, thanks for the dedication on this. I'd like to see more people as devoted as you are to fixing problems. Best regards, Thomas Previous Comments: ------------------------------------------------------------------------ [2008-07-15 09:07:36] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. Can you try it in CLI as well? (in the cmd line php.exe yourscript.php) ------------------------------------------------------------------------ [2008-07-15 09:01:59] twilightthorn dot kh at gmail dot com Still no go... :( System logs the same error, Apache is still crashing. To be sure it wasn't JUST Apache, I've tested my server by placing some massive load on it. Apache did not crash after well over 4 minutes of work, work that kept my CPU clocked at 100% for the duration. The PGSQL, and PDO_PGSQL extensions both initialized for this test. I'm coming to think that maybe the problem isn't with the PGSQL extensions, but with my ntdll.dll. After all, these same extensions work on other platforms, and have been found to work on Vista* OS's before, right? I've found that there is a later version of ntdll.dll on for my system, and would love to try using the newer one. But all the same I don't wish to lose my computer... Any other advise that you could offer? ------------------------------------------------------------------------ [2008-07-15 06:36:49] [EMAIL PROTECTED] Can you try using the 5.2.5's pgsql extension? Our extension not the one from wamp. The extension should work with 5.2.6 as well. ------------------------------------------------------------------------ [2008-07-15 03:46:25] twilightthorn dot kh at gmail dot com Also, the reason I'm not currently using PHP5.2.6, all the workarounds submitted to fix the bug of not being able to use PGSQL in that version have not worked for me. If some one would be so kind as to give me and actual, detailed, workaround for using PGSQL in PHP5.2.6 on Vista Business, I would be very grateful. ------------------------------------------------------------------------ [2008-07-15 03:37:36] twilightthorn dot kh at gmail dot com Description: ------------ As far as I can tell any successful call to a database, local or on an external server, will crash apache. I'm using a WAMP2.0c setup using PHP5.2.5 on vista and it did work fine until I added the PHP Postgre extension. I do know that the extension is up-to-date, and have in fact even tried to replace it with the one used in PHP5.2.6, it also fails and crashes the server. Without the extension loaded, PHP/apache will output all errors and any other processing messages before the PG_Connect() call, upon which processing halts. The system event log refers to ntdll.dll on this crash, but I don't really know why. This does sound an aweful lot like an Apache bug, but it only occurs when PHP's Postgre extension is loaded and the pg_connect(); function is called. Best regards, and thanks. Thomas. Reproduce code: --------------- <?php //... $link = pg_connect("host=localhost port=5432 dbname=public user=postgres password=PASS") or op_err('Con'); //... ?> Expected result: ---------------- A successful database call and web-page out put. Actual result: -------------- I get a pop-up message telling me HTTPD.EXE has stopped working. This is the information logged in the system by its failure: ------------------ Faulting application httpd.exe, version 2.2.8.0, time stamp 0x47904924, faulting module ntdll.dll, version 6.0.6000.16386, time stamp 0x4549bdc9, exception code 0xc00000fd, fault offset 0x00061635, process id 0x1174, application start time 0x01c8e628c7166890. ------------------ There are no other entries in my PHP or Apache error logs. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=45516&edit=1