List:Internals« Previous MessageNext Message »
From:BLR-03 Amit K. Saha- Sun Microsystems Date:August 14 2008 5:02am
Subject:Re: 'mysql_client_test' and 'tests' directory
View as plain text  
Hi Paul,

Paul DuBois wrote:
> 
> On Aug 11, 2008, at 6:12 AM, Amit K. Saha- Sun Microsystems, BLR-03 wrote:
> 
>> Hi!
>>
>> According to 
>> http://dev.mysql.com/doc/mysqltest/en/test-framework-components.html, 
>> 'mysql_client_test program is used for testing aspects of the MySQL 
>> client API that cannot be tested using mysqltest and its test language'
>>
>> I would like to know what those aspects are.Thanks!
> 
> 
> Monty has already responded to your question. I will just add the 
> observation that mysql_client_test.c is an ad hoc program that grows by 
> gradual accretion of new code over time as new tests are added to it.
> 
> One way to see some of the things that it tests is to use grep:
> 
> % grep 'Bug *#' mysql_client_test.c
>   Bug #148 (reported by salle@stripped).
> /* Bug#6761 - mysql_list_fields doesn't work */
> /* Bug#8330 - mysql_stmt_execute crashes (libmysql) */
> /* Bug#7990 - mysql_stmt_close doesn't reset mysql->net.last_error */
>   Bug #15518 - Reusing a stmt that has failed during prepare
>   Bug#11111: fetch from view returns wrong data
> /* Bug#10736: cursors and subqueries, memroot management */
> /* Bug#10794: cursors, packets out of order */
> /* Bug#11172: cursors, crash on a fetch from a datetime column */
> /* Bug#11656: cursors, crash on a fetch from a query with distinct. */
> /* Bug#11183 "mysql_stmt_reset() doesn't reset information about error" */
> /* Bug#10760: cursors, crash in a fetch after rollback. */
> /* Bug#11909: wrong metadata if fetching from two cursors */
> /* Bug#11904: mysql_stmt_attr_set CURSOR_TYPE_READ_ONLY grouping wrong 
> result */
> /* Bug#12243: multiple cursors, crash in a fetch after commit. */
>   Bug#11718: query with function, join and order by returns wrong type
>   Bug #12925: Bad handling of maximum values in getopt
>   Bug#14210 "Simple query with > operator on large table gives server
> /* Bug#13488: wrong column metadata when fetching from cursor */
>   Bug#13524: warnings of a previous command are not reset when fetching
>   Bug#14845 "mysql_stmt_fetch returns MYSQL_NO_DATA when COUNT(*) is 0"
>   Bug #15510: mysql_warning_count returns 0 after mysql_stmt_fetch which
> /* Test MYSQL_OPT_RECONNECT, Bug#15719 */
> /* Bug #16143: mysql_stmt_sqlstate returns an empty string instead of 
> '00000' */
> /* Bug #16144: mysql_stmt_attr_get type error */
>   Bug #15613: "libmysqlclient API function mysql_stmt_prepare returns wrong
>   Bug#17667: An attacker has the opportunity to bypass query logging.
>   Note! Also tests Bug#21813, where prepared statements are used to
>   Bug#14169: type of group_concat() result changed to blob if tmp_table was
>   Bug#20152: mysql_stmt_execute() writes to MYSQL_TYPE_DATE buffer
> /* Bug#15752 "Lost connection to MySQL server when calling a SP from C 
> API" */
>   Bug#21206: memory corruption when too many cursors are opened at once
>   Bug#21726: Incorrect result with multiple invocations of
>   Bug#24179 "select b into $var" fails with --cursor_protocol"
>   Bug#32265 Server returns different metadata if prepared statement is used
>   Bug#28075 "COM_DEBUG crashes mysqld"
>   Bug#27876 (SF with cyrillic variable name fails during execution 
> (regression))
>   Bug#28505: mysql_affected_rows() returns wrong value if CLIENT_FOUND_ROWS
>   Bug#28934: server crash when receiving malformed com_execute packets
>   Bug#27592 (stack overrun when storing datetime value using prepared 
> statements)
>   Bug#29687 mysql_stmt_store_result memory leak in libmysqld
>   Bug #29692      Single row inserts can incorrectly report a huge 
> number of
>   Bug#29306 Truncated data in MS Access with decimal (3,1) columns in a 
> VIEW
>   Bug#30472: libmysql doesn't reset charset, insert_id after succ.
>   Bug#31669 Buffer overflow in mysql_change_user()
>   Bug#28386 the general log is incomplete
>   Bug#36004 mysql_stmt_prepare resets the list of warnings
> 
> 

Thanks for the info.

I am also curious to know why test-cases such as showdb_test.c, 
selec_test.c are in this directory. They are either there or could be 
easily included in the nysql-test/t directory. Are they there to provide 
samples of using the C API?



Thanks,
Amit
-- 
http://blogs.sun.com/amitsaha
http://amitksaha.blogspot.com

Thread
'mysql_client_test' and 'tests' directoryBLR-03 Amit K. Saha- Sun Microsystems11 Aug
  • re: 'mysql_client_test' and 'tests' directoryMichael Widenius12 Aug
    • Re: 'mysql_client_test' and 'tests' directoryBLR-03 Amit K. Saha- Sun Microsystems12 Aug
  • Re: 'mysql_client_test' and 'tests' directoryPaul DuBois14 Aug
    • Re: 'mysql_client_test' and 'tests' directoryBLR-03 Amit K. Saha- Sun Microsystems14 Aug