[Python-Dev] Why not using "except: (...) raise" to cleanup on error?
rosuav at gmail.com
Mon Jun 4 13:11:53 EDT 2018
On Tue, Jun 5, 2018 at 2:57 AM, Yury Selivanov <yselivanov.ml at gmail.com> wrote:
> On Mon, Jun 4, 2018 at 12:50 PM Chris Angelico <rosuav at gmail.com> wrote:
>> On Tue, Jun 5, 2018 at 2:11 AM, Victor Stinner <vstinner at redhat.com> wrote:
>> > For me, it's fine to catch any exception using "except:" if the block
>> > contains "raise", typical pattern to cleanup a resource in case of
>> > error. Otherwise, there is a risk of leaking open file or not flushing
>> > data on disk, for example.
>> Pardon the dumb question, but why is try/finally unsuitable?
> Because try..finally isn't equivalent to try..except? Perhaps you
> should look at the actual code:
Oh. Duh. Yep, it was a dumb question. Sorry! The transport should ONLY
be closed on error.
More information about the Python-Dev