[ https://issues.apache.org/jira/browse/THRIFT-3302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14731927#comment-14731927 ]
ASF GitHub Bot commented on THRIFT-3302: ---------------------------------------- Github user asfgit closed the pull request at: https://github.com/apache/thrift/pull/591 > Go JSON protocol should encode Thrift byte type as signed integer string > ------------------------------------------------------------------------ > > Key: THRIFT-3302 > URL: https://issues.apache.org/jira/browse/THRIFT-3302 > Project: Thrift > Issue Type: Bug > Components: Go - Library > Reporter: Nobuaki Sukegawa > Assignee: Nobuaki Sukegawa > > h3. Problem > Go implementation of JSON and simple JSON protocols encode Thrift byte type > field as unsigned 8bit integer. > i.e. -1 is encoded to "255" by Go implementation while "-1" by others like > C++, Java and Python. > h3. Reproduce > Cross test with go server and py client (JSON protocols of course). > (like "expected -127 but got 129") > Static-typed clients (such as C++ and Java) are not likely to notice the > difference because of integer overflow. > h3. Fix > Explicitly convert the unsigned 8-bit value back to signed one in JSON > protocols before converting to text. -- This message was sent by Atlassian JIRA (v6.3.4#6332)