#20426 [Csd]: php.exe refused to end process: can not close connection to MSSQL
| From: | ulysses at mail dot fitan dot com dot tw | Date: | Tue, 11 Feb 2003 01:37:47 +0000 |
| Subject: | #20426 [Csd]: php.exe refused to end process: can not close connection to MSSQL | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-32716@lists.php.net to get a copy of this message | ||
ID: 20426
User updated by: ulysses@mail.fitan.com.tw
Reported By: ulysses@mail.fitan.com.tw
Status: Closed
Bug Type: MSSQL related
Operating System: Windows 2000 Server
PHP Version: 4.30
New Comment:
Thank you. I'll try it.
Previous Comments:
------------------------------------------------------------------------
[2003-02-10 19:24:25] fmk@php.net
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
------------------------------------------------------------------------
[2003-01-13 22:17:25] ulysses@mail.fitan.com.tw
To Nice PHP staff:
It seemed that PHP does not handle SMALLDATETIME format
well. When I execute this SQL statement:
select GetDate(), CAST(GetDate() as SMALLDATETIME)
I got this:
"Tue 14, Jan 2003, 12:12:42","2003 ¤@¤ë 14 12:13¤U¤È"
with mssql.datetimeconvert=Off and/or with ini_set
('mssql.datetimeconvert',0);
To meeder:
My MSSQL problem would cause PHP to hang everytime. Just on
connection would cause system to crash. What is your
crashing symptom ? 'Too many connection would crash' sounds
like presistant-connection-spooler-full or CGI-ERROR
problem.
------------------------------------------------------------------------
[2003-01-13 08:44:39] meeder@hotmail.com
I got the same problem on a w2k machine as well i'm using a mysql
database. I got as well a smallinteger in my table. If i don't get many
hits it survives. But when the hits increase (don't know at which
point) PHP crashes
i'm still working on it
------------------------------------------------------------------------
[2003-01-03 00:03:25] ulysses@mail.fitan.com.tw
OK... here goes more detail...
Just tried PHP 4.30 ISAPI mode. It still crashed, but now it would
response messages like this:
"PHP has encountered an Access Violation at 77FCB032"
And more crashing condition:
In both CGI and ISAPI mode, PHP will crash when executing "select *"
from any table that contains ONE, TWO OR MORE datetime/smalldatetime
format columns THAT THERE IS ANY OTHER COLUMN BEHIND these datetime
columns.
for example:
example_table (
sn int,
title varchar(40),
modifytime datetime
);
Executing "SELECT sn, title, modifytime FROM example_table" will be
okay, but executing "SELECT sn, modifytime, title FROM example_table"
will crash.
------------------------------------------------------------------------
[2003-01-02 23:11:12] ulysses@mail.fitan.com.tw
For more detailed information:
1. On Trad. Chinese version Windows 2000 with Trad. Chinese
MSSQL 2000, I will get date format like '2003-01-06
10:23:00' when I execute "select *" in Quary Analyzer. But
I will get response like '2003 ¤@¤ë 06 10:23 ¤W¤È' when
executing the same query with PHP.
2. I've tried to change date/number format settings in
Windowd Location control panel, not working.
3. I've tried to change database default encoding, not
working.
4. I've tried to add mssql.datetimeconvert=0 AND
mssql.datetimeconvert=Off in php.ini, not working.
5. The ONLY way to alter the date-format converting style
of php_mssql is to change the default language script of
Windows 2000.
For detailed description of the crashing problem:
1. When executing "select *" from any table that contains
ONE datetime/smalldatetime format column, PHP will execute
and output text to browser. But that php.exe process will
not end, neither calling mssql_close() nor not. You can see
it in the Task Manager, and it can not be stopper by
clicking "End Process".
2. When executing "select *" from any table that contains
TWO OR MORE datetime/smalldatetime format column, PHP will
crashed upon calling mssql_query. Again, that php.exe
process will not quit and can not be forced quit using Task
Manager.
3. By switching Windows 2000 default script to Japaness,
all this problem disappears.
4. I've tried ALL other data format. None would cause
crashing like this.
Now I'm 100% sure this IS a date-format converting bug. And
now I'm just asking for one thing: to disable this
"feature". Please! I beg you!
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/20426
--
Edit this bug report at http://bugs.php.net/?id=20426&edit=1