Commit Graph

117 Commits

Author SHA1 Message Date
Lourens Naude 4640893f27 Do not schedule in a single threaded environment 2008-10-31 15:09:33 +00:00
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 e81e145c15 Prefer Objects to GC as label 2008-10-09 02:13:40 +01:00
Lourens Naude a9fea270f5 Better GC stats 2008-10-09 02:01:57 +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
Roger Pack 1404c2bc44 code cleanup, since rb_thread_blocking_region actually returns the value of the function passed to it 2008-10-03 14:11:11 -06:00
Lourens Naude 85141abf09 Validate async queries 2008-10-02 01:56:10 +01:00
Roger Pack a1d10c140b take out some compiler warnings 2008-10-01 16:30:45 -06:00
Roger Pack 4ff863b4f9 code cleanup to avoid warnings 2008-10-01 08:09:55 -06:00
Roger Pack ce962ebc7d add in a function to make real_connect non blocking 2008-09-30 22:35:59 -06:00
Roger Pack ee9cf7c47e overcome another merge conflict 2008-09-30 17:04:06 -06:00
Roger Pack 63114d674c overcome extconf conflict 2008-09-30 17:02:58 -06:00
Roger Pack cf86732d4a switch to c based all_hashes 2008-09-30 16:59:51 -06:00
Roger Pack ab757bdf9d rename RB_UBF_DFL to RUBY_UBF_IO 2008-09-24 11:01:57 -06:00
Roger Pack f73ba931ef overcome conflict 2008-09-24 11:01:14 -06:00
humanzz c17d4b6a7a fixing cflags 2008-09-14 15:00:29 +02: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 02e265072c update the RB_UBF_DL for more recent versions of Ruby 1.9, which doesn't have it 2008-09-08 12:39:00 -06:00
Roger Pack 16d9c043c2 Merge branch 'master' into 19_full_thread_no_gil 2008-09-08 12:17:20 -06: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 f077108a69 Introduce configureable query overheads and contexts in the test wrapper in preparation for timeout tests. 2008-09-08 17:45:00 +01: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
Roger Pack b9285dbcb7 Merge branch 'master' of git@github.com:oldmoe/mysqlplus 2008-09-08 09:46:05 -06: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 26202b3ddb Assume blank password 2008-09-06 17:21:36 +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
Roger Pack e79b6291a3 overcome merge conflict 2008-09-05 20:16:08 -06:00
Roger Pack c4df361449 rename all hashes to all_hashes_experimental, revert each_hash to its previous behavior 2008-09-05 20:13:46 -06: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 dd4a5d8f4b Merge branch 'master' of git@github.com:oldmoe/mysqlplus 2008-09-06 00:57:20 +01:00
Lourens Naude 91d9096b14 Extract base klasses for cleaner implementation testing; DRY up existing threaded && evented tests 2008-09-06 00:54:48 +01: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
Roger Pack 866f4cfa3e add Lourens to contrib 2008-09-05 13:54:28 -06:00
Lourens Naude 58d416e929 Experimental build && test tasks 2008-09-05 18:23:47 +01:00
oldmoe 02e8481161 all_hashes now returns an empty array on empty results 2008-09-05 05:59:33 +02:00
oldmoe 4108162bbb updated gemspec to reflect the makefile removal 2008-09-05 05:56:40 +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