Commit Graph
50 Commits
Author SHA1 Message Date
Ilan Steemers 9741efdc5e Adds test for task result update 2016-01-24 21:30:42 +01:00
Ilan Steemers 8b27cdae17 Removes duplicate test 2016-01-09 13:42:13 +01:00
Ilan Steemers 9243731a9c Updates test for new wait and count options 2015-10-02 20:03:38 +02:00
Ilan Steemers 826178c463 Adds a MongoDB broker
* adds mongo broker tests
* adds mongo brokers docs

* broker info is now cached when it needs to connect to a server, to reduce traffic.
2015-09-25 20:03:39 +02:00
Ilan Steemers ef6a60478a Merge pull request #74 from Koed00/dev
Removes root imports for Django 1.9
2015-09-25 12:35:10 +02:00
Ilan Steemers b3381d6dae removes root imports for django 1.9
typo in test
2015-09-24 15:47:40 +02:00
Ilan Steemers cef48da789 removes root imports for django 1.9
Updated docs to promote submodule imports
2015-09-24 15:41:32 +02:00
Ilan Steemers 985fbb31cc tests cluster stop when already stopped 2015-09-24 11:21:28 +02:00
Ilan Steemers a493f9cc78 Adds wait option to result() and fetch() 2015-09-18 10:57:09 +02:00
Ilan Steemers 061775b3bb Adds group commands to task instances
* adds task.group_result()
* adds task.group_count()
* adds task.group_delete()
2015-09-16 15:47:39 +02:00
Ilan Steemers 2bffcf554b Django ORM broker 2015-09-14 13:24:43 +02:00
Ilan Steemers e4a5951f12 Resets SQS conf in case of test failure 2015-09-09 18:59:24 +02:00
Ilan Steemers 8eb1431413 Resets broker configuration in case a third party broker crashes 2015-09-08 15:50:32 +02:00
Ilan Steemers c946a16b99 changes py 2.7 import for ironmq 2015-09-08 15:38:00 +02:00
Ilan Steemers f4f8af1382 Fixes backward compatibility problems with django-picklefield 2015-09-07 20:24:21 +02:00
Ilan Steemers 3f75e7fa05 removed SQS and IronMQ brokers for now
Both brokers are not atomic and cause all kinds of problems during testing. Needs more time.
Meanwhile I want to release the pluggable broker backend.
2015-09-04 14:49:17 +02:00
Ilan Steemers 0740c90148 adds pluggable brokers
* added redis broker
 * added django_redis broker
 * added task acknowledgement
2015-08-29 18:54:07 +02:00
Ilan Steemers 439c8a2f77 Moves Status to it's own file
This way only qmonitor and qinfo need Curses and you can still run the cluster without it.
2015-08-26 13:11:58 +02:00
Ilan Steemers 3e92fddcdd #50 removes redis connection argument from pusher process 2015-08-24 10:08:43 +02:00
Ilan 3d12c1d36e adds queue_size()
returns the size of the current redis queue
2015-08-13 15:54:57 +02:00
Ilan f470fbf975 uses empty() instead of qsize() == 0 2015-08-04 18:30:07 +02:00
Ilan af61270f62 #40 qsize not implemented 2015-08-04 12:26:23 +02:00
Ilan 9899c42740 * fixes save_limit +1
* adds save_limit test
* expands recycle test
2015-07-31 18:39:54 +02:00
Ilan f8c9ef1bfa adds short delay in test
On some platforms the cluster is not always ready in time for test assertion
2015-07-23 14:57:00 +02:00
Ilan c5b8b800f6 Adds save override option for tasks
Also adds `q_options` dict for async and schedule options
2015-07-20 19:43:27 +02:00
Ilan 5fd436021f Expanding coverage 2015-07-20 12:17:12 +02:00
Ilan d7ecaee18d Added tests for failures filtering
fixed a bug
2015-07-19 15:21:06 +02:00
Ilan e75fbecda8 fixed typo and added group tests 2015-07-19 13:56:16 +02:00
Ilan c127604f10 Adds task groups
* task now takes an optional keyword `group`
* added result_group()  and fetch_group()
* added group column to Success admin
* group column in searchable
* added `name` field to Schedules
* Scheduled tasks take schedule name as group
2015-07-18 17:20:50 +02:00
Ilan Steemers 1e7b3f6ce0 Merge pull request #18 from Koed00/dev
Adds a `timeout` override per task
2015-07-16 21:57:47 +02:00
Ilan af735c328e Adds a timeout override per task
* added a `timeout` keyword to tasks.
* timeouts now count down instead of up
* `timeout` in task overrides global timeout setting
* added tests for timeout override
* added a test for recycling
2015-07-16 20:35:29 +02:00
Ilan 218b6a9795 removed unused import 2015-07-16 14:36:36 +02:00
Ilan 6826e75a37 docs: Added a report example
Also added  a test based on the example.
2015-07-16 14:03:07 +02:00
Ilan Steemers e62fd1ee70 Fixes #7
* added a synchronous cluster simulation

* added a test for the sync function

* moved signing into its own module

* refactored imports to solve circular import problems stemming from the task module pretending to be a cluster

* added documentation for the new sync option
2015-07-09 20:16:21 +02:00
Ilan Steemers 4ee47fc38f upping the coverage 2015-07-07 20:20:28 +02:00
Ilan Steemers d06aa40a38 Removed Cluster.is_idle
It wasn't used and it could be confused with the cluster stat IDLE
2015-07-06 11:13:54 +02:00
Ilan Steemers b113a52825 Restructured all the modules
The core module was becoming too large.
By splitting it in  cluster, monitor and tasks it becomes more manageable. It also reflects the documentation structure.
2015-07-03 15:12:11 +02:00
Ilan Steemers 2c88b1aef6 superfluous import removed 2015-07-02 13:53:12 +02:00
Ilan Steemers 5399865f4e Adds timeout and reincarnation test
Also found a bug because of this.
2015-07-02 12:10:18 +02:00
Ilan Steemers d1930a3de1 Fixes Travis hang up
New admin test introduced a task in the queue which was picked up by the cluster on Travis. Switching cluster test to different list key should prevent this.
2015-07-01 12:52:47 +02:00
Ilan Steemers ba525a9312 Fixes Travis error
added failing hook to tests
2015-07-01 12:42:13 +02:00
Ilan Steemers 4e38925cea Adds timeout mechanism for workers
Workers now share a ctype with the sentinel to indicate if they are currently executing a task.  This timer is incremented each guard loop until the worker resets it after finishing a job or until it reaches the TIMEOUT value and the worker is terminated by the sentinel.
2015-07-01 10:54:36 +02:00
Ilan Steemers 4096b35adf Added schedule command
* improved schedule tests
 * updated README
  * bumped up to version 0.1.3
2015-06-30 16:38:08 +02:00
Ilan Steemers b0423a42d3 Fix import error on travis 2015-06-30 11:01:36 +02:00
Ilan Steemers 482569b312 Rework - configuration now in class - better stop handling under heavy load. - scheduler test - better monitoring - better status reporting 2015-06-30 10:58:24 +02:00
Ilan Steemers 7fd381319c fixed relative import 2015-06-27 20:07:47 +02:00
Ilan Steemers b0e738d31b Passing the redis connection around the cluster to reduce connections 2015-06-27 20:03:32 +02:00
Ilan Steemers f08773f37d Improved cluster test 2015-06-26 17:20:09 +02:00
Ilan Steemers 666bdc97dc * updated README
* both func and hook check for callable.
2015-06-26 14:24:25 +02:00
Ilan Steemers 99a44dda45 simple test for monitor 2015-06-25 13:22:16 +02:00