httpd-docs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 45450] mod_dbd: new option "reconnect" for MySQL DBD driver and prepared statements
Date Sat, 31 Mar 2012 06:53:34 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=45450

--- Comment #4 from Daniel Gruno <daniel@gruno.dk> 2012-03-31 06:53:34 UTC ---
>From what I can read in apr_dbd_mysql.c in trunk, the reconnect value still
defaults to 1, in which case it is still an issue. Perhaps this is something to
be appended to the "SQL Prepared Statements" section?

>From what I can gather, Marko's initial comment is still valid:
If the MySQL reconnect option is set to 1 (default) and the connection is
somehow severed, mysql_ping() will cause a reconnect WITHOUT informing mod_dbd
of this ('cause that's just how MySQL likes to operate), and thus the prepared
statements will be fubar since it's a brand new connection.

If reconnect is set to 0, then mod_dbd WILL be notified that the connection is
broken and by itself reconnect and set up the statements.

The MYSQL documentation recommends using a chain of commands to check for any
change caused by mysql_ping() - roughly something like:

id1 = mysql_thread_id(conn);
myslq_ping(conn);
id2 = mysql_thread_id(conn)
if (id1 != id2) { borked(); }

But I'll leave that up to Niq or anyone else wanting to change the actual code
to reflect this behavior properly. For now, a notice should probably be put in
the mod_dbd docs :)

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
For additional commands, e-mail: docs-help@httpd.apache.org


Mime
View raw message