[odb-users] another test from odb-tests-2.1.1 fails with mariadb-5.5.28a

Boris Kolpackov boris at codesynthesis.com
Thu Feb 7 07:45:14 EST 2013


Hi Hugo,

Hugo.Mildenberger at web.de <Hugo.Mildenberger at web.de> writes:

>  By the way, I missed the functionality to track the values passed to 
>  mysql_stmt_bind_param(). The odb tracer classes were not of much help 
>  with prepared statements.

The main purpose of the tracer API is to see which statements are
executed. I agree it would be nice to also see the values being
passed, but that would be non-trivial to implement and also slow
things down significantly.


>  But now, after having implanted a tracer into libmysql.c instead, I 
>  observed that the odb-test suite passed strange values for the 
>  "second_part" field of MYSQL_TIME. 
>
> [...]
>  
>  Previously, in accordance with the MySQL documentation, this field was
>  unused. Now MariaDB obviously attempts to normalize the date/time value.

Actually it is "currently unused", not "previously unused", according to
the MySQL 5.5 docs. So it seems it is now used in MariaDB without any
documentation to this effect.

In any case, I've updated ODB to always initialize every single 
(documented) member in MYSQL_TIME. Below are the patches. Can you
try them and verify that this fixes the issue? 

http://scm.codesynthesis.com/?p=odb/libodb-qt.git;a=patch;h=ab5046438ca91ed7659e3f2bcc13235bc311ad32
http://scm.codesynthesis.com/?p=odb/libodb-boost.git;a=patch;h=23419030f7fa4cc96d0a086a6af87e7ef2e2ed18

Thanks for tracking this down!

Boris



More information about the odb-users mailing list