Ken Hibino
a38f628f3b
Refactor server state management
2020-05-31 06:41:19 -07:00
Ken Hibino
23f46dde52
Add helper functions to extract task metadata from context
2020-05-29 05:40:42 -07:00
Ken Hibino
4492ed9255
Change internal constructor signatures.
...
Created "params" type to avoid positional arguments.
Personally it feels more explicit and reads better.
2020-05-17 13:25:24 -07:00
Ken Hibino
5161b9368a
Clean up tests
2020-05-02 07:05:26 -07:00
Ken Hibino
f8a94fb839
Define broker interface
2020-04-19 08:51:17 -07:00
Ken Hibino
4ec2dc9e47
Minor reorganization in tests
2020-04-19 08:51:17 -07:00
Ken Hibino
4df372b369
Allow user to configure shutdown timeout
2020-04-19 08:51:17 -07:00
Ken Hibino
aafd8a5b74
Rename internal ProcessState to ServerState
2020-04-19 08:51:17 -07:00
Ken Hibino
d664d68fa4
Extract out log package
2020-03-09 07:17:52 -07:00
Ken Hibino
3c722386b0
Add Deadline option when enqueuing tasks
...
Deadline option sets the deadline for the given task's context deadline.
2020-03-08 17:12:42 -07:00
Ken Hibino
897ab4e28b
Add ErrorHandler type to changelog
2020-02-29 22:09:13 -08:00
Ken Hibino
a4e4c0b1d5
Call error handler when task was not processed successfully
2020-02-29 22:09:13 -08:00
Ken Hibino
95b7dcaad4
Clean up processor test
2020-02-29 22:09:13 -08:00
Ken Hibino
830020eb39
Add ProcessState type to base package
2020-02-22 08:56:51 -08:00
Ken Hibino
3d9a222bb3
Use sync.WaitGroup for shutdown
2020-02-16 18:22:59 -08:00
Ken Hibino
2bcaea52ce
Make heartbeater goroutine a monitor goroutine for process info.
2020-02-16 18:22:59 -08:00
Ken Hibino
d33ca98648
Use int as priority value type.
...
Do not use unsigned int for merely non-negative quantities as it
complicates simple arithmetic.
2020-02-13 06:23:51 -08:00
Ken Hibino
6685827147
Add redis pubsub subscriber for cancelation
2020-02-13 06:23:51 -08:00
Ken Hibino
1b41c721b4
Change Handler interface to take context.Context
2020-02-13 06:23:51 -08:00
Ken Hibino
96f06ac89b
Add ps command to asynqmon
2020-02-02 20:56:33 -08:00
Ken Hibino
c29200b1fc
Add syncer to retry failed redis commands
2020-01-18 15:07:15 -08:00
Ken Hibino
84eef4ed0b
Add strict-priority option
2020-01-12 18:39:57 -08:00
Ken Hibino
97316d6766
Fix flaky tests
...
Some tests were failing due to mismatch in Score in ZSetEntry.
Changed ZSetEntry Score to float64 type so that we can use
cmpopts.EquateApprox to allow for margin when comparing.
2020-01-11 10:09:15 -08:00
Ken Hibino
390eb13149
Remove stale field in processor struct
2020-01-11 10:09:15 -08:00
Ken Hibino
8d9a2d1313
Update processor to query queues based on priority
2020-01-07 21:55:18 -08:00
Ken Hibino
53d0902808
Change RDB.Dequeue to query multiple queues
2020-01-07 21:55:18 -08:00
Ken Hibino
03cb6eef09
Add Queues field to Config
2020-01-07 21:55:18 -08:00
Ken Hibino
f3a23b9b12
Make Task type immutable
...
This change makes it impossible to mutate payload within Handler or
RetryDelayFunc.
2020-01-05 09:55:39 -08:00
Ken Hibino
c62833540c
Add license comment to all src files
2020-01-02 18:13:16 -08:00
Ken Hibino
22b21df884
Allow user to specify retry delay duration
2019-12-30 07:14:49 -08:00
Ken Hibino
ae0c2f9ca5
Use asynqtest helpers in asynq package tests
2019-12-29 10:05:02 -08:00
Ken Hibino
3fd248615b
Create base internal package
2019-12-22 07:40:25 -08:00
Ken Hibino
437fb03bb3
Unexport redis key name constants from rdb package
2019-12-04 17:23:11 -08:00
Ken Hibino
d4e442d04f
Extract rdb to internal package
2019-12-03 22:13:48 -08:00
Ken Hibino
b0a54cd2b2
Change Background API to take Handler interface
2019-12-02 20:45:40 -08:00
Ken Hibino
d53e5d3350
Add test for processor
2019-11-29 17:12:15 -08:00
Ken Hibino
d4f136ebc9
Protect handler call against panic
2019-11-27 14:03:04 -08:00