[ https://issues.apache.org/jira/browse/THRIFT-788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12880269#action_12880269 ]
Arya Goudarzi commented on THRIFT-788: -------------------------------------- It just came to me THRIFT-638. This might be related to the same issue because I have studied the output of stream_get_meta and it stops at some point, then resumes all of a sudden. So, to me it makes sense that when multiget_slice returns large results, the read if TSocket binded to C lib had to read from stream many times and faces the issue in THRIFT-638. > thrift_protocol.so: multiget/multiget_slice does not handle more than 17 keys > correctly > --------------------------------------------------------------------------------------- > > Key: THRIFT-788 > URL: https://issues.apache.org/jira/browse/THRIFT-788 > Project: Thrift > Issue Type: Bug > Components: Library (PHP) > Environment: - ubuntu 10.04 32bit > - thrift svn > - php-5.3.2 with thrift_protocol.so 1.0 enabled > - cassandra 0.6+0.7/trunk > Reporter: Alexander Liemen > Attachments: multiget_slice.php > > > thrift_protocol.so does not handle multiget/multiget_slice with more than 17 > keys correctly. The query time sky rockets from 10ms to a steady 900ms > starting with 18 keys. It doesn't matter if you fetch 18 or 50. Solid 900ms... > The bug can easily + steadily be reproduced: > - standard Keyspace1 / CF Standard1 setup > - name: Keyspace1 > replica_placement_strategy: > org.apache.cassandra.locator.RackUnawareStrategy > replication_factor: 1 > column_families: > - name: Standard1 > compare_with: BytesType > - insert e.g. 1000 columns email:value / testmail1-testmail1000 with key = > 1...1000 > - $keys=array('1','2',.....'17') > - $client->multiget_slice($keys,$columnParent,$predicate,$consistency_level); > -> 10ms > - $keys=array('1','2',.....'18') > - $client->multiget_slice($keys,$columnParent,$predicate,$consistency_level); > -> 900ms > > - $keys=array('1','2',.....'100') > - $client->multiget_slice($keys,$columnParent,$predicate,$consistency_level); > -> 900ms > It does return the right columns though. > It can easily be fixed: disable thrift_protocol.so ;) > This might be a 32bit microseconds issue. Still very strange though. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.