Драйвер Datastax Cassandra PHP: & quot; неверный тип значения & quot; исключение при использовании timeuuid в подготовленном утверждении

Я пытаюсь выполнить подготовленный оператор со значением timeuuid и получить исключение «Недопустимый тип значения».

Вот код:

$builder = \Cassandra::cluster();
$cluster = $builder->withContactPoints('127.0.0.1')
->build();

$session = $cluster->connect();
$preparedStatement = $session->prepare("SELECT * FROM test.timeuuid_test WHERE account_id = :accId and item_time_uid >= minTimeuuid(:minTime);");
$options = new ExecutionOptions([
'arguments' => [
'accId' => 1234,
'minTime' => new \Cassandra\Timeuuid(1458118516)
]
]);
$session->execute($preparedStatement, $options);

Я получаю следующее исключение:

«Cassandra \ Exception \ InvalidArgumentException: недопустимый тип значения»

Вот схема таблицы:

CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1 };

CREATE TABLE test.timeuuid_test (
account_id int,
item_time_uid timeuuid,
PRIMARY KEY ((account_id), item_time_uid)
) WITH CLUSTERING ORDER BY (item_time_uid DESC);

Что я делаю неправильно?

Я использую PECL Cassandra 1.1.0 и Cassandra 2.0.15:

Установленные cassandra связанные пакеты:
cassandra20-2.0.15-1.noarch
Cassandra-каст-водитель-2.2.2-1.el6.x86_64
Cassandra-каст-водитель-разви-2.2.2-1.el6.x86_64

0

Решение

Вы привязываете неправильный тип к minTime: minTimeUuid занимает timestamp аргумент, а не timeuuid,

2

Другие решения

Других решений пока нет …