[ https://issues.apache.org/jira/browse/THRIFT-3269?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jens Geyer updated THRIFT-3269: ------------------------------- Attachment: simple-server.patch The code in SimpleServer looks like this: {code} ok, err := processor.Process(inputProtocol, outputProtocol) if err2, ok := err.(TTransportException); ok && err2.TypeId() == END_OF_FILE { return nil } else if err != nil { log.Printf("error processing request: %s", err) return err } {code} The problem is, if {{processor.Process()}} returns anything else than a {{TTransportException}} (for example a {{TProtocolException}}, then {{err}} becomes nil and the second if condition is never met. As a result, the error state is gone, not reported and no longer available. [This patch|^simple-server.patch] fixes the error handling issue, but raises the second part of the problem. > error handling issue in SimpleServer > ------------------------------------ > > Key: THRIFT-3269 > URL: https://issues.apache.org/jira/browse/THRIFT-3269 > Project: Thrift > Issue Type: Bug > Components: Go - Library > Reporter: Jens Geyer > Attachments: simple-server.patch > > > There is error handling issue in SimpleServer, which supresses errors instead > of properly handling them. If the comparingly simple fix is applied, one of > the Xception test fails all of a sudden. > {code} > 2015/07/26 01:52:32 error processing request: TException > 2015/07/26 01:52:32 error processing request: TException > --- FAIL: TestTJSONProtocol (0.06s) > thrifttest_driver.go:224: TestException Xception failed > 2015/07/26 01:52:32 error processing request: TException > 2015/07/26 01:52:32 error processing request: TException > --- FAIL: TestTBinaryProtocol (0.08s) > thrifttest_driver.go:224: TestException Xception failed > 2015/07/26 01:52:32 error processing request: TException > 2015/07/26 01:52:32 error processing request: TException > --- FAIL: TestTCompactProtocol (0.07s) > thrifttest_driver.go:224: TestException Xception failed > FAIL > FAIL tests 0.398s > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)