mirror of https://github.com/rq/rq.git
Abstract away from the concrete pickle implementation.
Choose cPickle, if available, for best performance.
This commit is contained in:
parent
c4553f2a22
commit
9318825429
|
@ -1,6 +1,6 @@
|
|||
import times
|
||||
from uuid import uuid4
|
||||
from pickle import loads, dumps
|
||||
from .pickle import loads, dumps, UnpicklingError
|
||||
from .proxy import conn
|
||||
from .exceptions import UnpickleError, NoSuchJobError
|
||||
|
||||
|
@ -15,7 +15,7 @@ def unpickle(pickled_string):
|
|||
"""
|
||||
try:
|
||||
obj = loads(pickled_string)
|
||||
except StandardError:
|
||||
except (StandardError, UnpicklingError):
|
||||
raise UnpickleError('Could not unpickle.', pickled_string)
|
||||
return obj
|
||||
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
from __future__ import absolute_import
|
||||
try:
|
||||
import cPickle as pickle
|
||||
except ImportError:
|
||||
import pickle # noqa
|
||||
|
||||
loads = pickle.loads
|
||||
dumps = pickle.dumps
|
||||
UnpicklingError = pickle.UnpicklingError
|
|
@ -8,7 +8,7 @@ import procname
|
|||
import socket
|
||||
import signal
|
||||
import traceback
|
||||
from pickle import dumps
|
||||
from .pickle import dumps
|
||||
try:
|
||||
from logbook import Logger
|
||||
Logger = Logger # Does nothing except it shuts up pyflakes annoying error
|
||||
|
|
|
@ -2,7 +2,7 @@ import times
|
|||
from datetime import datetime
|
||||
from tests import RQTestCase
|
||||
from tests.helpers import strip_milliseconds
|
||||
from pickle import loads
|
||||
from rq.pickle import loads
|
||||
from rq.job import Job
|
||||
from rq.exceptions import NoSuchJobError, UnpickleError
|
||||
|
||||
|
|
Loading…
Reference in New Issue