diff options
Diffstat (limited to 'lib/sqlalchemy/exc.py')
-rw-r--r-- | lib/sqlalchemy/exc.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/sqlalchemy/exc.py b/lib/sqlalchemy/exc.py index 4f776b837..64f25a22f 100644 --- a/lib/sqlalchemy/exc.py +++ b/lib/sqlalchemy/exc.py @@ -44,12 +44,19 @@ class CircularDependencyError(SQLAlchemyError): see :ref:`use_alter`. """ - def __init__(self, message, cycles, edges): - message += " Cycles: %r all edges: %r" % (cycles, edges) + def __init__(self, message, cycles, edges, msg=None): + if msg is None: + message += " Cycles: %r all edges: %r" % (cycles, edges) + else: + message = msg SQLAlchemyError.__init__(self, message) self.cycles = cycles self.edges = edges + def __reduce__(self): + return self.__class__, (None, self.cycles, + self.edges, self.args[0]) + class CompileError(SQLAlchemyError): """Raised when an error occurs during SQL compilation""" |