[
https://issues.apache.org/jira/browse/THRIFT-4002?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16890480#comment-16890480
]
Elvis Pranskevichus commented on THRIFT-4002:
---------------------------------------------
A PR fixing this: https://github.com/apache/thrift/pull/1835
> Thrift exceptions are not hashable in Python 3
> ----------------------------------------------
>
> Key: THRIFT-4002
> URL: https://issues.apache.org/jira/browse/THRIFT-4002
> Project: Thrift
> Issue Type: Bug
> Components: Python - Compiler
> Reporter: Jelle Zijlstra
> Priority: Major
> Labels: compiler, python
> Attachments: thrift-hashable-exc.patch
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The Thrift-to-Python compiler generates `__eq__` but not `__hash__` for
> Thrift exception classes, which makes them not hashable in Python 3. Due to
> http://bugs.python.org/issue28603, this can lead the Python standard library
> to throw an error while printing tracebacks involving Thrift exceptions.
> The attached patch generates `__hash__` for Thrift exceptions. This can
> technically be incorrect since Thrift exceptions are mutable (compare
> https://issues.apache.org/jira/browse/THRIFT-162), but in practice it seems
> unlikely that people would mutate exception instances other than directly
> after creating them, and without this patch some Thrift exceptions cannot be
> displayed by the standard library.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)