manticoresoftware / manticoresearch-php

Official PHP client for Manticore Search
MIT License
167 stars 32 forks source link

Can't create a table with a field with a property with a value #215

Open sanikolaev opened 2 months ago

sanikolaev commented 2 months ago

I can't create a table with a field with the property engine='columnar'.

snikolaev@dev2:~$ cat test_client.php
<?php
require_once __DIR__ . '/vendor/autoload.php';

$config = ['host'=>'127.0.0.1','port'=>9308];
$client = new \Manticoresearch\Client($config);
$index = $client->index('t');
$index->drop(true);
$index->create([
    'a'=>['type'=>'int', 'options' => ['engine' => 'columnar']]
]);
snikolaev@dev2:~$ php test_client.php
PHP Fatal error:  Uncaught Manticoresearch\Exceptions\ResponseException: "P03: syntax error, unexpected COLUMNAR, expecting ',' or ')' near 'columnar)'" in /home/snikolaev/vendor/manticoresoftware/manticoresearch-php/src/Manticoresearch/Transport/Http.php:127
Stack trace:
#0 /home/snikolaev/vendor/manticoresoftware/manticoresearch-php/src/Manticoresearch/Client.php(372): Manticoresearch\Transport\Http->execute()
#1 /home/snikolaev/vendor/manticoresoftware/manticoresearch-php/src/Manticoresearch/Indices.php(74): Manticoresearch\Client->request()
#2 /home/snikolaev/vendor/manticoresoftware/manticoresearch-php/src/Manticoresearch/Index.php(246): Manticoresearch\Indices->create()
#3 /home/snikolaev/test_client.php(9): Manticoresearch\Index->create()
#4 {main}
  thrown in /home/snikolaev/vendor/manticoresoftware/manticoresearch-php/src/Manticoresearch/Transport/Http.php on line 127

The query it generates is:

/* Wed Aug 07 11:42:06.862 2024 conn 2213 (127.0.0.1:52026) real 0.000 */ CREATE TABLE t(`a` int columnar);

Expected:

/* Wed Aug 07 11:42:06.862 2024 conn 2213 (127.0.0.1:52026) real 0.000 */ CREATE TABLE t(`a` int engine='columnar');