[ https://issues.apache.org/jira/browse/THRIFT-3801?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15877333#comment-15877333 ]
ASF GitHub Bot commented on THRIFT-3801: ---------------------------------------- GitHub user jeking3 opened a pull request: https://github.com/apache/thrift/pull/1202 THRIFT-3801: Fix exception with nodejs multiplexer THRIFT-3801 - Node Thrift client throws exception with multiplexer and responses that are bigger than a single buffer Supercedes https://github.com/apache/thrift/pull/1063 Supercedes https://github.com/apache/thrift/pull/773 Just want a clean CI build before merging. You can merge this pull request into a Git repository by running: $ git pull https://github.com/jeking3/thrift THRIFT-3801 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/thrift/pull/1202.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1202 ---- commit b7578ffffb966197592bc30577e07af368461477 Author: Adam Curtis <a...@mooloop.com> Date: 2016-08-11T09:47:37Z Fix exception with nodejs multiplexer THRIFT-3801 - Node Thrift client throws exception with multiplexer and responses that are bigger than a single buffer ---- > Node Thrift client throws exception with multiplexer and responses that are > bigger than a single buffer > ------------------------------------------------------------------------------------------------------- > > Key: THRIFT-3801 > URL: https://issues.apache.org/jira/browse/THRIFT-3801 > Project: Thrift > Issue Type: Bug > Components: Node.js - Library > Affects Versions: 0.9.3 > Reporter: Mark White > > In a situation using the node.js library to make requests using the buffered > transport, binary protocol and the multiplexer, I've been getting an > exception on receiving responses from line 145 of connection.js > (https://github.com/apache/thrift/blob/0.9.3/lib/nodejs/lib/thrift/connection.js). > at TCP.onread (net.js:531:20) > at Socket.Readable.push (_stream_readable.js:111:10) > at readableAddChunk (_stream_readable.js:153:18) > at Socket.emit (events.js:169:7) > at emitOne (events.js:77:13) > at Socket.<anonymous> > (/src/node_modules/thrift/lib/nodejs/lib/thrift/buffered_transport.js:48:5) > at /src/node_modules/thrift/lib/nodejs/lib/thrift/connection.js:151:35 > TypeError: Cannot set property '-1' of undefined > It looks like the issue is that if a message consists of multiple parts, the > first part removes the seqid to service mapping in line 142, then it's no > longer available for the second part thus the error. If I'm right the fix > would be to remove the mapping later on once the final part has arrived. -- This message was sent by Atlassian JIRA (v6.3.15#6346)