瀏覽代碼

handle GroupResults for non-pickle serializers

Steeve Morin 12 年之前
父節點
當前提交
954e1b6127
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      celery/backends/base.py

+ 3 - 1
celery/backends/base.py

@@ -26,7 +26,7 @@ from celery import states
 from celery.app import current_task
 from celery.datastructures import LRUCache
 from celery.exceptions import TimeoutError, TaskRevokedError
-from celery.result import from_serializable
+from celery.result import from_serializable, GroupResult
 from celery.utils import timeutils
 from celery.utils.serialization import (
         get_pickled_exception,
@@ -107,6 +107,8 @@ class BaseBackend(object):
 
     def prepare_value(self, result):
         """Prepare value for storage."""
+        if isinstance(result, GroupResult):
+            return result.serializable()
         return result
 
     def encode(self, data):