◐ Shell
clean mode source ↗

Message 248878 - Python tracker

Message248878

Author filmor
Recipients filmor
Date 2015-08-20.07:21:48
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1440055310.02.0.542767582293.issue24900@psf.upfronthosting.co.za>
In-reply-to
Content
When raising an exception that is unpicklable in a worker process. This used to be the case for all exceptions that have a non-trivial constructor but this was fixed by http://bugs.python.org/issue1692335.

I now have the concrete problem with cx_Oracle in which the error type cx_Oracle._Error doesn't define tp_new which results in a

    UnpicklingError: NEWOBJ class argument has NULL tp_new

I have already reported this fact at https://bitbucket.org/anthony_tuininga/cx_oracle/issues/23.

However, I think that the worker thread should either be able to recover from this (which should be quite easy) or, at the very least, fail cleanly. Currently, when this condition is triggered the worker processes are not killed alongside the parent.

There is an existing report and a patch in the backports project: https://github.com/agronholm/pythonfutures/issues/30#issuecomment-132576545
History
Date User Action Args
2015-08-20 07:21:50filmorsetrecipients: + filmor
2015-08-20 07:21:50filmorsetmessageid: <1440055310.02.0.542767582293.issue24900@psf.upfronthosting.co.za>
2015-08-20 07:21:49filmorlinkissue24900 messages
2015-08-20 07:21:48filmorcreate