Commit Graph

80 Commits

Author SHA1 Message Date
Kyle Banker
c308f9b025 RUBY-386 set 30 second connect timeout. Fail if ismaster fails. 2011-12-13 14:51:39 -05:00
Kyle Banker
4ed709ff7f RUBY-386 ensure that replica set connection doesn't hang when
connecting to unreponsive node. set default op timeout to 30 seconds.
2011-12-12 17:45:00 -05:00
Kyle Banker
06b682ec7c RUBY-383 do a sync_refresh before checking out a socket 2011-12-06 14:38:56 -05:00
Kyle Banker
b6ff77fcbc RUBY-379 RUBY-381 reconnect on 'not master' errors (fix close connection logic) 2011-12-05 15:25:37 -05:00
Kyle Banker
c25b1f1585 RUBY-376 separate original seeds nodes from discovered ones 2011-12-05 12:27:19 -05:00
Kyle Banker
03303b8409 RUBY-374 Close connection on SystemStackError, NoMemoryError, and SystemCallError 2011-12-02 15:37:05 -05:00
Kyle Banker
d3c9637268 RUBY-377 ensure that @manager is never nil 2011-12-01 12:01:13 -05:00
Kyle Banker
cf69bf4c2e RUBY-367 deprecate async refresh 2011-11-18 16:13:19 -05:00
Kyle Banker
fa10508f07 Remove thread-local map and socket map (complexity creep). 2011-11-18 15:47:06 -05:00
Kyle Banker
e61f867e65 Connection#end_request 2011-11-16 13:06:56 -05:00
Kyle Banker
9aae390eec RUBY-334 minor: move refresh logging to debug level 2011-11-15 16:26:41 -05:00
Kyle Banker
6345820eae RUBY-345 update logging startup message 2011-11-15 15:59:42 -05:00
Kyle Banker
540a58fed6 Don't use Thread#kill 2011-11-07 13:59:52 -05:00
Kyle Banker
fbdf16bd48 minor: text fixes 2011-11-07 13:36:57 -05:00
Kyle Banker
83ac53202e minor: fix failing tests 2011-11-04 15:12:58 -04:00
Kyle Banker
dc4be1afc7 Prune sockets above max sockets per pool,
and close sockets associated with dead threads.
2011-11-04 14:26:12 -04:00
Kyle Banker
f224df45aa minor: cleanup 2011-11-04 13:25:13 -04:00
Kyle Banker
a2a307c45d Distinguish between hard and soft pool close. 2011-11-04 09:23:41 -04:00
Kyle Banker
01d1231373 Added thread-local sockets to ReplSetConnection 2011-11-03 18:48:01 -04:00
Kyle Banker
f668678fd1 Store sockets in thread-local variables when possible.
Allow connection pools to grow if needed. All this minimizes
the number of locks required and reduces the waiting time
for these locks.
2011-11-03 18:37:23 -04:00
Kyle Banker
0b33a48dd9 minor: clear accessors for defined methods 2011-11-03 11:21:00 -04:00
Kyle Banker
5b349e7175 Remove debug info. 2011-11-03 11:19:26 -04:00
Kyle Banker
68627cef3d Replica Set test harness refactoring. 2011-11-03 11:17:36 -04:00
Kyle Banker
a5373ddb83 Initial decoupling of Connection, ReplSetConnection,
and networking code.
2011-11-02 18:00:52 -04:00
Kyle Banker
3655a94934 Stop using 'sync' library. Don't trust it. Too complex. 2011-11-02 17:33:34 -04:00
Kyle Banker
1f068ce127 Cleanup for proxying to PoolManager. 2011-11-02 15:41:59 -04:00
Kyle Banker
d171f75bb0 Don't copy manager data. 2011-11-02 15:16:40 -04:00
Kyle Banker
9b6589e033 Auto-refresh will be disabled by default. 2011-10-26 10:26:50 -04:00
Kyle Banker
7a11bb18a9 Ensure that cursor requiring getmore ops will not
be affected by replica set refresh.

Prep for sending commands to secondaries.
2011-10-17 14:41:09 -04:00
Kyle Banker
b3c3206eeb minor: formatting 2011-10-14 09:53:23 -04:00
Kyle Banker
6a7e991689 Fix connection leak and refresh. 2011-10-14 09:52:11 -04:00
Kyle Banker
1001e59e44 minor: test framework fixes; minor bug fixes 2011-10-13 17:58:20 -04:00
Kyle Banker
c2070bb90a minor: simply and refactor auto refresh 2011-10-12 17:13:48 -04:00
Kyle Banker
f5f714a1a1 Added some basic, sanity-checking tests. 2011-10-07 13:55:09 -04:00
Kyle Banker
09c8a3838c Fixed major bug where :refresh_mode == :async 2011-10-06 14:50:51 -04:00
Kyle Banker
8525f4ceac Fixed major bug where :refresh_mode == :sync 2011-10-06 14:26:39 -04:00
Kyle Banker
018da9049c minor: test fix 2011-09-26 17:48:17 -04:00
Kyle Banker
63c91af1b1 minor fixes and doc updates. :sync is default refresh mode. 2011-09-15 18:44:02 -04:00
Kyle Banker
3e3f05813a minor: cleanup and test fix 2011-09-15 17:46:59 -04:00
Kyle Banker
b910e3e635 Add synchronous refresh; fix connection leak. 2011-09-15 15:44:12 -04:00
Kyle Banker
83eaa4d51b Replica Set connection improvements for refresh and multi-threaded apps. 2011-09-13 17:50:01 -04:00
Kyle Banker
a370f3abed minor: ReplSetConnection#connected? will be eventaully consistent. 2011-09-13 10:44:27 -04:00
Kyle Banker
50c38c6c6b RUBY-284 document :read API 2011-09-06 14:58:03 -04:00
Kyle Banker
5d83ab2460 RUBY-313 minor: deprecation warning should include removal version. 2011-09-06 14:30:00 -04:00
Kyle Banker
1e951d6734 RUBY-316 2011-09-06 11:40:25 -04:00
Kyle Banker
e2178b0f1d RUBY-322 nicer inspect methods 2011-09-01 11:42:56 -04:00
Kyle Banker
fbeea87c47 Added some read preference tests; refactoring; nice Pool#inspect. 2011-08-31 17:34:06 -04:00
Kyle Banker
adb4675f20 RUBY-321 Use sync RW lock for ReplSetConnection. Bug fixes. 2011-08-31 16:05:21 -04:00
Kyle Banker
3c31dc6acd Disabled auto-refresh by default. 2011-08-30 16:17:05 -04:00
Kyle Banker
e8a5375cbf minor: replica set test fixes 2011-08-30 16:16:47 -04:00