ID:               41350
 Comment by:       256512 at gmail dot com
 Reported By:      graham at directhostinguk dot com
 Status:           No Feedback
 Bug Type:         MySQL related
 Operating System: Windows 2003
 PHP Version:      5.2.3
 New Comment:

To reproduce the error on my setup (Windows XP SP2, PHP 5.2.4):
- in php.ini enable any of the following extensions: php_mysql.dll,
php_pdo_mysql.dll, php_mysqli.dll
- execute "php.exe" on command line
- press Ctrl+C

After a significant pause (~5 seconds), the error message appears:
"Error in my_thread_global_end(): 1 threads didn't exit"

Disabling php_mysql.dll, php_pdo_mysql.dll, php_mysqli.dll in php.ini
"fixes" the issue (php.exe exits immediately, without any errors).

Disabling MySQL extensions eliminates a significant pause (~5 seconds)
at exit with scripts that connect to a PostgreSQL database (yes,
PostgreSQL, not MySQL). Without error messages, though. A minimal script
to reproduce this, when any of the MySQL extensions are enabled, is a
single pg_connect() statement. When MySQL extensions are disabled, the
script exits immediately.


Previous Comments:
------------------------------------------------------------------------

[2007-09-30 02:56:24] joecosmoj at gmail dot com

By commenting out :
;extension=php_mysql.dll
and restarting mysql
THE BUG DISAPPEARED
dll version=5.2.5.5
Special build descriptor = "-dev"

------------------------------------------------------------------------

[2007-09-28 14:40:58] ricardo dot rodrigues at istimeless dot pt

Error in my_thread_global_end(): 1 threads didn't exit

 I don't think it's a MySQL error, since i'm not using it at all. I
have no active instances of MySQL running. I'm using PHPLIB Templates
and the code is very simple:

<?php
include ("Includes/template.inc");

$index = new Template("Templates");
$index->set_file("f_index", "index.tpl");

$index->set_var("page_title", "INDEX");

$index->parse("o_index", "f_index");
$index->p("o_index");  
?>

I'm running PHP 5.4.2 with MySQL 5.0.45, under Windows XP Pro SP2 with
IIS 5.1.

------------------------------------------------------------------------

[2007-09-27 01:00:00] php-bugs at lists dot php dot net

No feedback was provided for this bug for over a week, 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".

------------------------------------------------------------------------

[2007-09-26 13:31:31] w dot ashcroft at redfoxuk dot com

Confirmed on Windows 2003 with IIS6 using MS FastCGI; using
libmysql.dll (v5.0.22) from PHP 5.2.1 fixes the problem and massively
improves PHP speed globally.

------------------------------------------------------------------------

[2007-09-26 10:29:02] chris at crgs dot co dot uk

Have just tried the latest PHP 5.2 snapshot from http://snaps.php.net/
- *still* doesn't work.

I am reproducing this on the most basic machine I can, a Windows 2000
Professional VM (Virtual PC 2007) with all security updates. There is
nothing else on the PC, not even a MySQL install, just PHP (see below
for settings), but I am still getting the error.

However the error *DOES NOT ALWAYS OCCUR*, especially when I just use
'php -v'. Sometimes I have to run this command quite a few times before
the error occurs - it comes up maybe 2 times out of 10. When I run it on
my main box, outside the virtual machine, 'php -v' doesn't seem to
trigger the error much at all: however, using a slightly more
complicated command like 'php-cgi test.php' where test.php contains
'<?php phpinfo(); ?>' triggers the error more often, even outside the
VM.

Are we looking at a race condition? Can people post the specification
of their boxes as well? Mine is an Intel Pentium D 3.4Ghz (dual core) w/
2GB RAM. Of course inside the virtual machine there's only one
processor, which might explain partly why the error occurs more often
inside the VM, although I don't think it's a single/multi-processor
issue at heart, as I can still repro the issue on a dual core PC, just
less often. Perhaps it's only an issue on slower machines? Scott, what's
your spec?

Here is what I did:

Download php5.2-win32-200709260830.zip from http://snaps.php.net/
Extract to C:\PHP
Append ';C:\PHP' to the PATH environment variable
Add PHPRC environment variable, set to 'C:\PHP\php.ini'
Copy php.ini-recommended to php.ini
        Change the following settings:
                extension_dir = "c:\php\ext\"
                extension=php_mysql.dll
Run 'c:\PHP\php-cgi.exe -v'

Returns (after a roughly 2 second pause):
PHP 5.2.5-dev (cli) (built: Sep 26 2007 04:04:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
Error in my_thread_global_end(): 1 threads didn't exit

By the way, I also tried setting mysql.allow_persistent = Off, as
suggested in some of the comments, but it didn't help in either
environment (VM or real).

------------------------------------------------------------------------

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/41350

-- 
Edit this bug report at http://bugs.php.net/?id=41350&edit=1

Reply via email to