Commit Graph

31 Commits

Author SHA1 Message Date
Lourens Naude 48a61dd627 Introduce Mysql#idle? && Mysql#busy? as Threaded connection pool helpers for Mysql#c_async_query 2008-10-20 01:46:03 +01:00
Lourens Naude 1af85383eb Applied Roger's async validation patch, with a minimal test case 2008-10-19 23:17:42 +01:00
Lourens Naude 9d66a3b71e Piggy back schedule loop on MYSQL_STATUS_READY 2008-10-19 23:04:33 +01:00
Lourens Naude 35d2545c17 Selective enable || disable GC for result retrieval with Mysql#disable_gc = true|false 2008-10-08 22:11:14 +01:00
Lourens Naude 8e6f300f9d Introduce Mysql#reconnected? 2008-10-08 17:09:47 +01:00
Lourens Naude f57c2a6576 Let #c_async_query support a block syntax that yields the result; ensure async in progress is negated by #get_result 2008-10-08 05:17:01 +01:00
Lourens Naude 4e5967bd24 Do not schedule && retrieve the result if #query_with_result is false 2008-10-06 23:32:43 +01:00
Lourens Naude 85141abf09 Validate async queries 2008-10-02 01:56:10 +01:00
oldmoe c186184809 extconf fix 2008-09-10 22:42:11 +02:00
Lourens Naude 25a76a4d8b Better performance without the tight loop 2008-09-10 15:02:42 +01:00
Lourens Naude 3c5dd38037 Extract thread scheduler 2008-09-10 01:26:01 +01:00
Lourens Naude 6884d454bc Use TCP_NODELAY if supported; Remove file descriptor ops from the tight loop; Cleanup timeout assignment; Split the threaded test suite in native and c to avoid a large number of active Threads affecting results.Add experimental Mysql#socket_type which typically returns 'socket (x)', but may be helpful for debugging purposes. 2008-09-10 00:33:18 +01:00
Roger Pack 6c2b9ecb84 Merge branch 'master' of git@github.com:oldmoe/mysqlplus 2008-09-08 12:10:17 -06:00
Roger Pack b1bf771d6f add back in all_hashes method--this time hopefully with the right line lengths 2008-09-08 12:10:12 -06:00
Lourens Naude ea2965270c Decouple native Ruby Mysql#async_query from the C extension as per Roger's suggestion.Remove no-op c_mysql_query flag for evented tests. 2008-09-08 17:27:11 +01:00
Lourens Naude f6f460a542 Implement Mysql#async_query as a tight loop ( 1.8 && 1.9 compatible, evented && threaded tests passing ) 2008-09-08 03:56:59 +01:00
Lourens Naude 55411cd9d4 Introduce Mysql#blocking?; Set the file drescriptor for all new connections to non blocking; Add tests to the existing evented and threaded runs. ( verified 1.8 && 1.9 ) 2008-09-08 01:48:47 +01:00
Lourens Naude 70c58ce67a Allow tests to run with either the native Ruby or C based Mysql#async_query 2008-09-06 17:17:06 +01:00
oldmoe c695d4d842 Merge branch 'master' of git@github.com:oldmoe/mysqlplus 2008-09-06 03:59:41 +02:00
oldmoe 8e1cd8ea20 fix for corrupted utf-8 results 2008-09-06 03:59:20 +02:00
Lourens Naude 951fa1d272 Access the file descriptor directly from the MySQL net structure 2008-09-06 00:01:09 +01:00
Lourens Naude 19b4b10d27 Sneak in optional timeout argument as a stub to the C version of Mysql.send_query 2008-09-05 23:55:00 +01:00
oldmoe 02e8481161 all_hashes now returns an empty array on empty results 2008-09-05 05:59:33 +02:00
oldmoe 7aed51b58f remove makefile 2008-09-05 05:51:25 +02:00
oldmoe 62f58cf2c3 remove makefile 2008-09-05 05:50:27 +02:00
Roger Pack 614568269a rename fetch_hashes_array to process_all_hashes 2008-09-02 11:10:49 -06:00
Roger Pack 8cef960b41 also use that code for each_hash--results in 0.641s instead of 0.68s for .each_hash 2008-08-29 18:20:57 -06:00
Roger Pack 266ef93d28 add all hashes method--the speed is good about 0.58 versus 0.68 if you do it the old Ruby way 2008-08-29 18:02:50 -06:00
oldmoe da40f34362 threaded access suppor (working this time) 2008-08-27 15:09:39 +03:00
oldmoe fa9c977d54 DRYed up async_query a bit 2008-08-27 02:43:17 +03:00
oldmoe d7e47a3f2d extracted from neverblock-mysql 2008-08-27 02:05:20 +03:00