You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Erik (Jira)" <ji...@apache.org> on 2022/02/13 13:19:00 UTC
[jira] [Closed] (THRIFT-5516) Python Client returning None, instead of List
[ https://issues.apache.org/jira/browse/THRIFT-5516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Erik closed THRIFT-5516.
------------------------
Resolution: Fixed
> Python Client returning None, instead of List<CustomObjs>
> ---------------------------------------------------------
>
> Key: THRIFT-5516
> URL: https://issues.apache.org/jira/browse/THRIFT-5516
> Project: Thrift
> Issue Type: Bug
> Components: C++ - Library
> Affects Versions: 0.13.0, 0.15.0
> Environment: Ubuntu 20.04 LTS
> Python 3.8
>
> Reporter: Erik
> Priority: Major
>
> I am writing a C++ Thrift Server, and successfully utilizing it via a Python Client up until today.
> {code:java}
> // bunch of stuff, including the Definitions for the Objects, Exceptions
> service mythrift {
> i32 ping() throws (1:CUSTOMException error),
> list<string> status() throws (1:CUSTOMException error),
> list<CustomResponse> request_forstuff(1:list<CUSTOMObject> request_objectss, 2:string some__type) throws (1:CUSTOMException error)
> }
> {code}
> {code:java}
> print("Testing my-thrift client...")
> my_client = MYThriftClient().connect_to_thrift_server(thrift_host="127.0.0.1")
> print("ping! total client pool size = " + str(my_client.ping()))
> print("my_status = " + str(my_client.status()))
> objects_to_request = get_some_objects()
> myresult = my_client.send_request_forstuff(objects_to_request, "SOMETYPE")
> print("MYRESULT = " + str(myresult))
> print("my_status = " + str(my_client.my_status())) {code}
> What is strange is, this API call was working in past.. but suddenly my Python Client is returning immediately .. even though I'm expecting a `list<CustomObjs>` to come back..
>
> {code:java}
> Testing my-thrift client...
> ping! total client pool size = 1
> my_status = ['MY_Status == pool->size() == 1, idle() == 1, busy() == 0']
> MYRESULT = None
> <after this it hangs> {code}
> Posted also in StackOverflow in case the community there has any ideas
> https://stackoverflow.com/questions/71100680/python-thrift-client-immediately-returning-before-result-can-be-calculated
> Other calls returning lists of standard things like String, work just fine.. it is only this custom object list call which seems to fail..
> Any ideas how to debug or proceed? no matter what I code in the Server Side it just comes back `None` in Python Client
>
> tried `V0.13.0` and upgraded to `V0.15.0`
--
This message was sent by Atlassian Jira
(v8.20.1#820001)