Selwin Ong
85e9014296
Moved some logic from worker.perform_job() to job.cleanup().
2013-02-23 14:23:23 +07:00
Selwin Ong
c987569650
Safe fetching a deleted job removes the deleted job from queue.
2013-02-16 18:50:37 +07:00
Vincent Driessen
640195d5e4
Merge branch 'master' into yaniv-aknin-worker_ttl
2013-02-15 08:08:32 +01:00
Selwin Ong
e5fa82aa5d
Merge branch 'master' of github.com:selwin/rq
2013-02-13 11:51:15 +07:00
Selwin Ong
05d744c9af
Requeuing a job should set its status back to Queued.
2013-02-13 11:50:40 +07:00
Vincent Driessen
54254f2271
Patch the connection instances.
...
This patches the connection object (which is either a StrictRedis
instance or a Redis instance), to have alternative class methods that
behave exactly like their StrictRedis counterparts, no matter whether
which type the object is. Only the ambiguous methods are patched. The
exhaustive list:
- _zadd (fixes argument order)
- _lrem (fixes argument order)
- _setex (fixes argument order)
- _pipeline (always returns a StrictPipeline)
- _ttl (fixes return value)
- _pttl (fixes return value)
This makes it possible to call the methods reliably without polluting
the RQ code any further.
2013-02-06 22:54:20 +01:00
Yaniv Aknin
4925b09aa5
Set worker ttl and maintain it when idle/taking/finishing jobs
...
This change could use far better test coverage, but I'm not sure how to
test it without refactoring more of the code than I think is reasonable
in the scope of this work.
2013-01-26 22:58:51 +02:00
Yaniv Aknin
74c2351232
Refactor dequeue_any to accept arbitrary timeouts
...
The 'blocking' parameter was replaced with a 'timeout' parameter.
The timeout parameter is interpreted thus:
0 - no timeout (block forever, equivalent to blocking=True)
None - non-blocking (return value or None immediately, equivalent to
blocking=False)
<integer> - maximum seconds to block
Upon timing out, a dequeue operation will raise DequeueTimeout.
2013-01-26 18:41:10 +02:00
Vincent Driessen
06b48c2026
Use unittest2 for Python 2.6.
2013-01-23 22:43:30 +01:00
Vincent Driessen
d1c2b3b78d
Merge branch 'selwin-remove-logbook'
...
Conflicts:
rq/utils.py
rq/worker.py
setup.cfg
setup.py
2013-01-18 15:47:21 +01:00
Selwin Ong
f498de57b6
Always call job.save even on synchronous queues so get_current_job doesn't fail
2012-11-25 13:37:12 +01:00
Vincent Driessen
10237ddcb4
Merge branch 'job-access-within-job'
...
Conflicts:
CHANGES.md
rq/job.py
2012-11-25 13:36:09 +01:00
Ulrich Petri
43038d3150
Added tests for config file loading
2012-11-24 14:53:22 +01:00
Vincent Driessen
5e59c6e28e
Rename the const.
2012-09-14 09:56:10 +02:00
Scott Burns
538bbb1b55
Decorator accepts result_ttl argument
2012-09-13 11:07:52 -05:00
Vincent Driessen
8cb6a21670
Only store custom properties when they're written to the meta dict.
2012-09-03 11:54:40 +02:00
Vincent Driessen
5e80aa27eb
Fix comment.
2012-09-02 23:10:35 +02:00
Vincent Driessen
95d3aed98e
Store the job ID on the internal stack.
...
It does so instead of the instance itself. Still returns the job---the
interface hasn't changed.
2012-09-02 23:00:13 +02:00
Vincent Driessen
372de4b45a
Implement the get_current_job() function.
...
This fixes #125 .
2012-09-02 22:38:46 +02:00
Vincent Driessen
879a87d158
Remove logbook and replace it with logging.
...
This reverts commit 1ab8c19696
and
reintroduces all changes made by @dstufft.
Still, it needs more patches to reeanble the default log-to-console
behaviour. See #121 .
2012-09-02 11:26:31 +02:00
Vincent Driessen
1ab8c19696
Revert "Remove logbook and replace it with logging".
...
This reverts the commit range f367c38..978ba2d.
Issue #121 is currently blocking the 0.3.1 release.
2012-08-30 21:35:44 +02:00
Vincent Driessen
781f3e0460
Add test for custom exc handling.
2012-08-29 13:21:48 +02:00
Vincent Driessen
6b0ebe9ceb
Remove is_done property.
...
It is too similar to is_finished.
2012-08-27 12:10:20 +02:00
Vincent Driessen
9549b34d60
Add convenience accessor properties for status.
2012-08-27 09:47:09 +02:00
Vincent Driessen
4224304291
I like this implementation of an 'enum' better.
2012-08-27 09:40:59 +02:00
Selwin Ong
442b389b97
Job returning None as result are now persisted correctly.
...
Job status can now be checked via ``status`` property which should
return either "queued", "finished" or "failed".
2012-08-25 17:58:15 +07:00
Vincent Driessen
f06ef9c975
Merge branch 'selwin-async-2'
...
This fixes #114 .
2012-08-23 09:51:18 +02:00
Vincent Driessen
83369f3b9b
Prefer `result` over `return_value`.
...
`return_value` still is available as a backward-compatible accessor.
This fixes #116 .
2012-08-23 09:27:27 +02:00
Selwin Ong
06d75630e0
Execute job immediately if Queue(async=False)
2012-08-22 17:21:22 +07:00
Donald Stufft
a08c983efc
Fix tests to use logging
2012-08-21 11:46:35 -04:00
Vincent Driessen
5fcedbcdad
Change assertEqual to assertGreaterThan, to make the test a little less
...
brittle (on slow machines).
2012-08-07 11:05:50 +02:00
Selwin Ong
a5e6765990
Added "result_ttl" property on jobs that determines how long job results are persisted in Redis.
2012-08-07 14:34:51 +07:00
Selwin Ong
a4f1de358f
Raise a StopException when Control+C is pressed.
2012-07-26 09:36:50 +07:00
Vincent Driessen
d697ddb93a
Resolve connections early.
...
Fixes #101 .
2012-07-24 12:37:59 +02:00
Vincent Driessen
c7225ba257
Minor bug in test case.
2012-07-24 12:30:37 +02:00
Vincent Driessen
35dedf3db4
Make test descriptions show up in short (oneliner) mode, as ./run_tests does.
2012-07-24 11:15:23 +02:00
Vincent Driessen
ea19bdc910
Merge branch 'new-enqueue' into selwin-decorator
2012-07-24 11:13:44 +02:00
Selwin Ong
8c3292d35b
Make "queue" argument in job decorator required.
...
job decorator now uses Queue's "enqueue_call" method.
2012-07-24 16:03:49 +07:00
Vincent Driessen
d66939ff4a
Don't use the (internal) .enqueue_call() in unit tests.
2012-07-24 10:51:58 +02:00
Selwin Ong
ae97f862dc
Merge branch 'master' into decorator
2012-07-24 15:34:03 +07:00
Vincent Driessen
e6bb7de8c0
Get rid of the ambiguity when passing the timeout argument to .enqueue() calls.
2012-07-23 11:50:32 +02:00
Vincent Driessen
f6e67431d7
Refactor the .enqueue() API to not gobble the timeout kwargs.
...
This fixes #98 .
2012-07-23 11:39:22 +02:00
Selwin Ong
bdc1af28d1
Added a job decorator.
2012-07-23 13:25:31 +07:00
Vincent Driessen
3a8f30a53e
Add test.
2012-07-18 14:13:13 +02:00
Vincent Driessen
604fce99a1
Merge with master.
2012-07-17 22:37:03 +02:00
Selwin Ong
1fb0a1bfac
Modified ``Job`` ``save`` and ``refresh`` methods to support persisting
...
additional ``Job`` attributes into Redis.
2012-07-17 20:23:01 +07:00
Vincent Driessen
cfbbc3d0ea
Merge remote-tracking branch 'omarkhan/instance_methods'
2012-07-17 14:09:45 +02:00
Omar Khan
03bd49511d
Allow instance methods to be enqueued
...
Only works for picklable instances
2012-07-17 11:48:41 +01:00
Goran Peretin
34d161eb11
requeueing preserves job timeout
2012-07-17 08:41:24 +02:00
Goran Peretin
317a58a3b5
quarantine preserves job timeout
2012-07-17 08:39:20 +02:00