@Aaron:

Thanks for your quick response.

Let me look into that and see..

Thanks


On Tue, May 27, 2014 at 8:07 PM, Aaron Mefford <[email protected]> wrote:
> Have you verified that the Protocol and Transport on each end are the same?
> Are you using a client with the same generated stubs, or is the client in
> another language?
>
> It looks like the server was expecting to read more bytes than it was sent.
> This would seem to point to some difference in expectations between the
> client and the server.  For instance, if the client were using the compact
> binary protocol it would be sending fewer bytes than would be expected by
> the standard binary protocol.
>
> I am by no means an expert in Thrift or PHP but wanted to offer my
> observations in case they happen to help you find your problem.
>
>
> On 5/27/14, 11:00 AM, Phillip Simbwa wrote:
>>
>> Greetings,
>>
>> I think the thrift-0.9.1 php libs have a bug somewhere. I seem to get
>> this when I try to read the returned values from a client RPC call.
>>
>>
>> 2014/05/27 18:56:54 [error] 8129#0: *9 FastCGI sent in stderr: "PHP
>> message: PHP Fatal error:  Uncaught exception
>> 'Thrift\Exception\TTransportException' with message 'TSocket: timed
>> out reading 4 bytes from localhost:9090' in
>> /usr/local/src/thrift-0.9.1/lib/php/lib/Thrift/Transport/TSocket.php:274
>> Stack trace:
>> #0
>> /usr/local/src/thrift-0.9.1/lib/php/lib/Thrift/Transport/TTransport.php(74):
>> Thrift\Transport\TSocket->read(4)
>> #1
>> /usr/local/src/thrift-0.9.1/lib/php/lib/Thrift/Transport/TBufferedTransport.php(113):
>> Thrift\Transport\TTransport->readAll(4)
>> #2
>> /usr/local/src/thrift-0.9.1/lib/php/lib/Thrift/Protocol/TBinaryProtocol.php(305):
>> Thrift\Transport\TBufferedTransport->readAll(4)
>> #3
>> /usr/local/src/thrift-0.9.1/lib/php/lib/Thrift/Protocol/TBinaryProtocol.php(197):
>> Thrift\Protocol\TBinaryProtocol->readI32(NULL)
>> #4 /srv/www/vhosts/async/lib/v1/php/gen-php/wiadSysAPIv1.php(114):
>> Thrift\Protocol\TBinaryProtocol->readMessageBegin(NULL, 0, 0)
>> #5 /srv/www/vhosts/async/lib/v1/php/gen-php/wiadSysAPIv1.php(82):
>> wiadSysAPIv1Client->recv_createUser()
>>
>>
>> And my .thrift file looks like this:
>>
>> struct useraccount {
>>          1:i64 uid,
>>          2:string owner,
>>          3:string email,
>>          4:string passwd,
>>          5:i32 enabled,
>>          6:i32 deleted,
>>          7:i32 gid,
>>          8:string creator
>> }
>>
>> struct auditf {
>>          1:string schema,
>>          2:string table,
>>          3:i64 uid,
>>          4:i64 gid,
>>          5:string account,
>>          6:string ip,
>>          7:string qtype,
>>          8:string vafter,
>>          9:string vbefore,
>>          10:string detail
>> }
>>
>> service wiadSysAPIv1 {
>>          i32 ping(),
>>          string createUser(1:auditf af, 2:useraccount u)
>> }
>>
>>
>> Can someone advise on how I can get around this?
>>
>>
>



-- 
- Phillip.

"Aoccdrnig to rscheearch at an Elingsh uinervtisy, it deosn't mttaer in waht
oredr the ltteers in a wrod are, the olny iprmoetnt tihng is taht the frist
and lsat ltteer are in the rghit pclae.
 The rset can be a toatl mses  and
you can sitll raed it wouthit a porbelm. Tihs is bcuseae we do not raed
ervey lteter by it slef but the wrod as a wlohe and the biran fguiers it
out aynawy."

Reply via email to