public function streamExecuteShards(Context $ctx, $query, $keyspace, array $shards, array $bind_vars, $tablet_type) { $request = new Proto\Vtgate\StreamExecuteShardsRequest(); $request->setQuery(ProtoUtils::BoundQuery($query, $bind_vars)); $request->setKeyspace($keyspace); $request->setShards($shards); $request->setTabletType($tablet_type); if ($ctx->getCallerId()) { $request->setCallerId($ctx->getCallerId()); } $call = $this->client->streamExecuteShards($ctx, $request); return new StreamCursor($call); }