On 3/30/05 9:58, "Stas Bekman" <[EMAIL PROTECTED]> wrote:

> Tim Bunce wrote:
>> On Tue, Mar 29, 2005 at 11:46:28PM -0500, Stas Bekman wrote:
>> 
>>> In order to properly test take_imp_data implementation, one needs to be
>>> able to test that when a second connect is issued and dbi_imp_data is
>>> passed:
>>> 
>>>    my $dbh = DBI->connect($test_dsn, $test_user, $test_password,
>>>             { dbi_imp_data => $imp_data });
>>> 
>>> a new connection won't be opened. Any ideas how to write such a test?
>> 
>> 
>> Looking at 
>> http://search.cpan.org/~capttofu/DBD-mysql/lib/DBD/mysql.pm#DATABASE_HANDLES
>> 
>> I'd have thought that $threadId = $dbh->{'mysql_thread_id'}; is what
>> you're looking for. It corresponds to the mysql_thread_id() API function:
>> 
>>   http://dev.mysql.com/doc/mysql/en/mysql-thread-id.html
> 
> Yup, that did the trick! Thanks Tim.
> 

You can also get it by issuing a SELECT CONNECTION_ID() statement, which
perhaps has the advantage that it will fail if the connection has gone away
and reconnect is off.  mysql_thread_id() doesn't actually communicate with
the server.  The corresponding disadvantage of CONNECTION_ID() is that it's
less efficient, of course.


Reply via email to