Xing
ccb6f4a24f
Merge pull request #48 from gbarr/large-packet-read
...
Avoid read channel corruption when response size > bufferSize
2014-08-19 17:11:42 +08:00
Graham Barr
d82da8fd71
Avoid read channel corruption when response size > bufferSize
...
When receiving a response, what was happening
1. Read bufferSize and it gets assigned to leftdata
2. Read another bufferSize
3. 2 buffers get appended, but leftdata still points to first buffer
4. Process data buffer which contains only complete responses
5. Back to ReadLoop, but leftdata still points to first incomplete buffer
causing corrupt data to be processed
Solution is to make leftdata nil once we have merged it with the second buffer
2014-08-18 12:35:31 -05:00
Graham Barr
49ea8c0ec1
Increase buffer size to 8K
2014-08-18 09:51:33 -05:00
Xing
1f303d8145
Merge pull request #47 from gbarr/memleak
...
When a job completes, remove its handler
2014-07-25 09:46:21 +08:00
Graham Barr
3e556edb2d
When a job completes, remove its handler
2014-07-24 14:20:56 -05:00
Xing Xing
d40888817d
Merge branch 'master' into 0.2-dev
2014-06-16 11:00:20 +08:00
Xing
dde0c3e9b3
Merge pull request #45 from draxil/worker_disconnect_testing
...
Allow reconnect from error handler
2014-06-16 10:58:57 +08:00
Xing Xing
14f4df8ede
Joe helped us greatly
2014-06-13 10:55:32 +08:00
Xing Xing
c8d59ea348
Merge branch 'master' into 0.2-dev
2014-06-13 10:51:48 +08:00
Xing
c6c0d4f481
Merge pull request #43 from draxil/master
...
Handling disconnects
2014-06-13 10:25:57 +08:00
Joe Higton
97731e1774
FIX: EOF disconnect error also called raw handler afterwards
2014-06-10 04:09:27 +01:00
Joe Higton
09c626f488
Cope with io.EOF as a disconnect error
2014-06-10 03:46:21 +01:00
Joe Higton
1ebb3d5fcc
Wrap disconnect errors and allow reconnect
2014-06-10 03:23:18 +01:00
Joe Higton
6cf2680431
Merge branch 'worker_disconnect_testing'
2014-06-07 07:26:41 +01:00
Joe Higton
99bcf11768
FIX: The error handler is not called on disconnect
...
Using the disconnect test showed the agent was silently closing on disconnect
2014-06-07 07:22:40 +01:00
Joe Higton
827cf3fa3e
Removed old gearman from travis
...
gearman-go and original gearmand don't play well, possibly an issue?
2014-06-07 06:36:24 +01:00
Joe Higton
7ddad76b85
Early stab at disconnect handling test
2014-06-07 06:14:28 +01:00
Joe Higton
e0614657e0
Added the original gearmand to travis for testing:
...
1. It's easier to test with (it installs in the regular path), we need to start and stop it for network error tests
2. Can't hurt to test with both implementations!
2014-06-07 05:50:58 +01:00
Joe Higton
912db95c0a
FIX: waiting for worker fireup was making the test slow
...
Dodging the race condition with a sleep was fine, but we slept
for a whole second which was longer than this test takes to run!
I've scaled the sleep down to 250 miliseconds and increased the tries.
Even this is probably excessively long but now the test is fast agin.
2014-06-07 05:38:08 +01:00
Joe Higton
2f72b28d76
FIX: waiting for worker fireup was making the test slow
...
Dodging the race condition with a sleep was fine, but we slept
for a whole second which was longer than this test takes to run!
I've scaled the sleep down to 250 miliseconds and increased the tries.
Even this is probably excessively long but now the test is fast agin.
2014-06-07 05:35:05 +01:00
Xing
320155c608
Merge pull request #41 from draxil/master
...
Better Work() without Ready() behaviour, now with improved tests!
2014-06-05 11:42:37 +08:00
Joe Higton
0a4489d1fe
Fixed and improved Work() without Ready() test:
...
* FIX: committed test froze
* FIX: committed test had a race condition!
* Added properly handled panic test
* Timeouts so that these tests should fail now if something goes wrong instead of failing.
2014-06-04 13:31:25 +01:00
draxil
6688c29c37
Enahanced Work() without Ready() behaviour:
...
Now if you try to call Work() without calling Ready(), it will trigger an attempt to run Ready(), and will only panic if there is an error.
2014-06-01 16:59:57 +01:00
Xing
3232b11d83
Merge pull request #38 from draxil/master
...
More helpful panic if you call Work() before you call Ready()
2014-06-01 22:13:35 +08:00
Joe Higton
24e93b4a2c
More helpful panic if you call Work() before you call Ready()
2014-05-29 15:35:27 +01:00
Xing
e9ce09b885
Merge pull request #36 from rlmcpherson/master
...
Make pool clients safe for concurrent access with mutex.
2014-05-21 10:03:32 +08:00
Randall McPherson
0591572d8e
Make pool clients safe for concurrent access with mutex.
2014-05-16 10:23:44 -04:00
Xing Xing
6910d548be
added Kevin to the contributors list
2014-03-11 10:08:20 +08:00
Xing Xing
5334b50533
fixed #34
2014-03-11 10:03:00 +08:00
Kevin Darlington
de91c999f7
Changed agent.read to handle big data.
2014-03-08 19:22:14 -05:00
Xing Xing
da3d31662b
added Damian to contributors
2014-03-07 17:40:32 +08:00
Xing Xing
9d7a29fe26
Merge branch 'master' into 0.2-dev
2014-03-07 17:33:16 +08:00
Xing
9dd9be1712
Merge pull request #32 from dgryski/printf-fixes
...
Printf fixes
2014-03-07 17:31:44 +08:00
Damian Gryski
7229235a4f
Use %v instead of %V, which is not a valid Printf verb
2014-03-07 10:21:45 +01:00
Damian Gryski
ad0d49dcb2
Use fmt.Errorf() instead of errors.New(fmt.Sprintf())
2014-03-07 10:20:39 +01:00
Xing Xing
09542d7176
update examples
2014-03-03 15:23:46 +08:00
Xing Xing
76c76995d5
removed ErrLostConn from worker
2014-03-03 14:50:54 +08:00
Xing Xing
78813cb052
Merge branch 'master' into 0.2-dev
2014-03-03 14:49:43 +08:00
Xing Xing
f880354a61
type assertion with *net.OpError
2014-03-03 14:45:35 +08:00
Xing Xing
45a9d7c3e5
fixed #31
2014-03-03 11:40:42 +08:00
Xing
7ea5fa7550
Merge pull request #30 from mikespook/0.2-dev
...
SUBMIT_JOB_SCHED is deprecated, worker.Immediately should be removed.
2014-01-15 17:52:24 -08:00
Xing Xing
0a6bacbe82
SUBMIT_JOB_SCHED is deprecated, worker.Immediately should be removed.
2014-01-16 09:43:06 +08:00
Xing
0458d8c2b3
Merge pull request #29 from sgrimee/patch-2
...
Clarify timeout option in Readme
2014-01-15 06:28:48 -08:00
Sam Grimee
ed8c829c2f
Clarify timeout option in Readme
...
worker.Immediately has value 2 which means the job will timeout after 2 seconds (maybe not very intuitive?). To have no timeout one has to pass the value 0 which is also constant worker.Unlimited (more intuitive)
2014-01-15 14:16:03 +01:00
Xing Xing
3a5d89c67a
fixed typo, issue #27
2014-01-15 10:09:10 +08:00
Xing Xing
c4efc59d78
no author but contributors
2014-01-15 10:04:41 +08:00
Xing Xing
98a935207b
fixed issue #27
2014-01-15 09:40:36 +08:00
Xing Xing
2bd19fb2fb
Merge branch 'master' into 0.2-dev
2014-01-15 09:38:41 +08:00
Xing
9729de017c
Merge pull request #25 from sgrimee/patch-1
...
Read all data before decoding incoming packet
2014-01-14 17:35:24 -08:00
Sam Grimee
221e11861f
keep already received data if not enough to decode
2014-01-14 17:06:20 +01:00