I am using hhvm extensions api to try and build predis as a php only extension at the time of building HHVM. The purpose is to hopefully get better performance from it. After concatenating and reformatting the predis library to get it it successfully compile, i was able to get the Predis\Client class working.
It completely fails when being used for a cluster configuration.
Catchable fatal error: Argument 1 passed to Predis\Connection\Aggregate\RedisCluster::__construct() must be an instance of Predis\Connection\Aggregate\FactoryInterface, Predis\Connection\Factory given
I have no idea what i did wrong.
Found the solution to my problem. upon consultation with the owner of predis on github
The issue was in the create-single-file script that ships with Predis. There are other issues with it also. I will advise against using it, unless you are ready to pun in the required time to sort out the issues.
This particular issue was wrong class type in the constructor of class RedisCluster implements ClusterInterface
Upon correcting it, It works properly.
Hopefully this will help someone with a similar issue