[ https://issues.apache.org/jira/browse/THRIFT-5260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jens Geyer resolved THRIFT-5260. -------------------------------- Fix Version/s: 0.14.0 Resolution: Fixed > Fix the thrift compiler generate problematic lua code for the oneway method > --------------------------------------------------------------------------- > > Key: THRIFT-5260 > URL: https://issues.apache.org/jira/browse/THRIFT-5260 > Project: Thrift > Issue Type: Bug > Components: Lua - Compiler > Affects Versions: 0.13.0 > Reporter: zero > Assignee: zero > Priority: Major > Fix For: 0.14.0 > > Time Spent: 10m > Remaining Estimate: 0h > > The oneway method 'testOneway' in file 'test/ThriftTest.thrift', for > instance, generated code in file 'test/lua/gen-lua/ThriftTest_ThriftTest.lua' > as follows: > function ThriftTestProcessor:process_testOneway(seqid, iprot, oprot, > server_ctx) > local args = testOneway_args:new{} > local reply_type = TMessageType.REPLY > args:read(iprot) > iprot:readMessageEnd() > local result = testOneway_result:new{} > local status, res = pcall(self.handler.testOneway, self.handler, > args.secondsToSleep) > if not status then > reply_type = TMessageType.EXCEPTION > result = TApplicationException:new > {message = res} > else > result.success = res > end > oprot:writeMessageBegin('testOneway', reply_type, seqid) > result:write(oprot) > oprot:writeMessageEnd() > oprot.trans:flush() > end > The 'testOneway_result' is undefined and I think it is wrong to write the > 'result' to the 'oprot' since it is nil, but at the same time it is necessary > for every process functions to return values from each handler's return. > > [I have created a pull request here: > https://github.com/apache/thrift/pull/2212|https://github.com/apache/thrift/pull/2212] -- This message was sent by Atlassian Jira (v8.3.4#803005)