Ken Hibino
bdbee31b86
Add test for retry task logic
2019-11-28 11:22:42 -08:00
Ken Hibino
da0bfa1519
Add test for (*rdb).kill
2019-11-28 07:47:12 -08:00
Ken Hibino
481d3c6b77
Refactor rdb tests
2019-11-28 07:24:52 -08:00
Ken Hibino
e5e3fee742
Add test for (*rdb).remove
2019-11-28 06:50:05 -08:00
Ken Hibino
1617278d86
Rename (*rdb).lrem to (*rdb).remove
2019-11-27 20:05:31 -08:00
Ken Hibino
efaceb8a03
Clean up error messages from rdb methods
2019-11-27 19:43:33 -08:00
Ken Hibino
c9a8f5fabd
Minor cleanup
2019-11-27 19:36:56 -08:00
Ken Hibino
0db4b8a34f
fix:Remove task from in_progress when worker goroutine finishes
...
There was a bug related to the logic of removing task from
"asynq:in_progress" list when worker is finished. The task was not
properly removed from the list when the taskMessage gets modified before
the deferred call. More specifically when task was scheduled for retry
the message was modified and therefore LREM could not properly removed
the message from "asynq:in_progress" list.
2019-11-27 14:26:04 -08:00
Ken Hibino
871162cd67
Merge pull request #3 from hibiken/feature/recover
...
Protect handler call against panic
2019-11-27 14:05:39 -08:00
Ken Hibino
d4f136ebc9
Protect handler call against panic
2019-11-27 14:03:04 -08:00
Ken Hibino
47e2a57d05
Rename (*rdb).zadd to (*rdb).schedule
2019-11-27 07:16:16 -08:00
Ken Hibino
fab2dcb56e
Change newRDB signature
2019-11-27 06:41:54 -08:00
Ken Hibino
e6b1230c36
Update log messages on shutdown
2019-11-27 06:33:04 -08:00
Ken Hibino
60132f3208
Minor cleanup
2019-11-27 06:21:57 -08:00
Ken Hibino
d35d345e2d
Merge pull request #2 from hibiken/feature/lua
...
Use Lua script to make multiple redis commands atomic
2019-11-26 10:19:26 -08:00
Ken Hibino
97b96f6992
Use lua script to implement (*rdb).moveAll
2019-11-26 10:09:42 -08:00
Ken Hibino
4fd82c5975
Refactor (*rdb).moveAll test
2019-11-26 09:57:53 -08:00
Ken Hibino
d2a6cc127d
Use (*rdb).forward in poller
2019-11-26 06:52:58 -08:00
Ken Hibino
cff5e67018
Refactor (*rdb).forward test
2019-11-26 06:38:11 -08:00
Ken Hibino
810c40bd54
Refactor dequeue test
2019-11-25 20:57:53 -08:00
Ken Hibino
199dcf8fdb
Use pipeline for enqueue
2019-11-25 20:10:35 -08:00
Ken Hibino
faa9b6ee22
Rename (*rdb).push to enqueue
2019-11-25 19:58:24 -08:00
Ken Hibino
737de898eb
Refactor rdb_test.go
2019-11-25 19:09:15 -08:00
Ken Hibino
4aa5078dc4
Add (*rdb).forward method using lua script
2019-11-25 07:11:40 -08:00
Ken Hibino
f91004e6aa
Add DB field to RedisOpt to specify redis db index
2019-11-24 18:41:55 -08:00
Ken Hibino
d5c2b9b995
Follow the convention of declaring variable immediately after its guard
...
mutex
2019-11-23 20:18:39 -08:00
Ken Hibino
5eaf606a0d
fix: Nil out handler reference after all workers have finished
2019-11-23 17:09:57 -08:00
Ken Hibino
ac3190a0d5
Update comments
2019-11-23 16:44:22 -08:00
Ken Hibino
be3b774b51
Simplify Background API
2019-11-23 15:44:42 -08:00
Ken Hibino
e19c45cff3
Rename Launcher to Background
2019-11-23 15:22:43 -08:00
Ken Hibino
847d724985
Merge pull request #1 from hibiken/feature/simple_rescue
...
Rescue dead "In Progress" tasks
2019-11-23 15:15:46 -08:00
Ken Hibino
fd80126a67
Add logic to restore unfinished tasks back into the default queue if
...
there are any uncompleted tasks
2019-11-23 15:09:50 -08:00
Ken Hibino
4a327933bd
Use command BRPUSHLPOP to move from queue to in_progress in redis
2019-11-23 08:43:41 -08:00
Ken Hibino
76ceb282a9
Change the direction of list push/pop operations
2019-11-23 08:24:16 -08:00
Ken Hibino
3fa867b190
Remove per task heartbeat
2019-11-23 08:21:32 -08:00
Ken Hibino
2e0af11ca0
Add heartbeat goroutine to write heartbeat data to redis for active
...
worker
2019-11-22 06:43:42 -08:00
Ken Hibino
80f477212d
Add ID field to taskMessage
2019-11-22 06:16:43 -08:00
Ken Hibino
67a9e8aa00
Track in-progress tasks with redis SET
2019-11-21 21:45:27 -08:00
Ken Hibino
c84287d7ab
Minor fixes
2019-11-21 20:22:55 -08:00
Ken Hibino
66930970f9
Move retry related logic to its own file
2019-11-20 20:38:49 -08:00
Ken Hibino
3dddcfbb14
Minor cleanup
2019-11-20 20:27:01 -08:00
Ken Hibino
2dd5f2c5ab
Rename manager to processor
2019-11-20 20:10:00 -08:00
Ken Hibino
dd0b0b358c
Add tests for type rdb
2019-11-20 07:01:24 -08:00
Ken Hibino
e9069bfb47
Move client and launcher to its own files
2019-11-19 21:19:46 -08:00
Ken Hibino
85a04cbabb
Extract redis logic to type rdb
2019-11-19 21:08:06 -08:00
Ken Hibino
4c5b6081de
Update todo comments
2019-11-19 07:47:21 -08:00
Ken Hibino
eb6a5032f6
Make Launcher thread safe
2019-11-19 07:46:04 -08:00
Ken Hibino
e238d3835d
Gracefully shutdown all scheduled goroutines on (*Launcher).Stop
2019-11-19 07:38:09 -08:00
Ken Hibino
195fd893be
Extract manager to its own type
2019-11-19 06:52:26 -08:00
Ken Hibino
8d22d1f6fb
Change (*poller).start to use time.Sleep instead of ticker
2019-11-19 06:20:59 -08:00