It turns out that the problem existed because of the handling of the response back from Accumulo. In the AccumuloProxy.js file when the login result is received and read in AccumuloProxy_login_result.prototype.read
it will set the success as this.success = input.readString()
The readString()
function will take the Buffer
and call toString()
using the utf8
encoding. This was resulting in characters showing up incorrectly.
I modified the AccumuloProxy_login_result.prototype.read
function to set success as this.success = input.readBinary()
so that a Buffer
is returned. This Buffer
can be passed in to the other function calls and will get a correct result back from Accumulo instead of an Exception.
This was put in as an issue with Thrift here and has apparently been fixed in the master branch.