manticoresoftware / manticoresearch-buddy

Manticore Buddy is a Manticore Search's sidecar which helps it with various tasks
GNU General Public License v3.0
20 stars 2 forks source link

Broken auto-schema after changes in Manticore #372

Open donhardman opened 2 weeks ago

donhardman commented 2 weeks ago

Bug Description:

There is an issue with CI, and tests are failing for auto schema.

Here is the pipeline: https://github.com/manticoresoftware/manticoresearch-buddy/actions/runs/11211972076/job/31397270089

After a brief investigation, it looks like the changes in the SQL endpoint caused it, but we're still not sure.

Tests fail on: Manticore 6.3.7 a8991355d@24101013 dev (columnar 2.3.1 30ad2d6@24100914) (secondary 2.3.1 30ad2d6@24100914) (knn 2.3.1 30ad2d6@24100914)

Tests succeed on: Manticore 6.3.7 39f0c0456@24100706 dev (columnar 2.3.1 3c05f76@24100109) (secondary 2.3.1 3c05f76@24100109) (knn 2.3.1 3c05f76@24100109)

We should investigate and find the root cause.

Manticore Search Version:

Latest dev version

Operating System Version:

Ubuntu Jammy

Have you tried the latest development version?

None

Internal Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

- [x] Implementation completed - [ ] Tests developed - [x] Documentation updated - [x] Documentation reviewed - [ ] Changelog updated
Nick-S-2018 commented 1 week ago

The issue can be reproduced with Manticore 6.3.7 a8991355d@24101013 dev. It does seem to be related to the changes in how daemon handles Buddy sql endpoints.

curl localhost:9308/sql?mode=raw -d 'show tables'
[{
"columns":[{"Index":{"type":"string"}},{"Type":{"type":"string"}}],
"data":[

],
"total":0,
"error":"",
"warning":""
}]

curl localhost:9308/sql?mode=raw -d 'insert into test(a) values(1)'
{"error":"table 'test' absent, or does not support INSERT"}

But, in fact, the insert request has been executed properly:

curl localhost:9308/sql?mode=raw -d 'select * from test'
[{
"columns":[{"id":{"type":"long long"}},{"a":{"type":"long"}}],
"data":[
{"id":6704245913751126018,"a":1}
],
"total":1,
"error":"",
"warning":""
}]
tomatolog commented 1 week ago

fixed at https://github.com/manticoresoftware/manticoresearch/commit/85f4b7629bd9613540af09efc5c6352745771014

@PavelShilin89 should add the CLT test case like

mysql -h 127.0.0.1 -P 9306 -e "drop table test"
curl -X POST "localhost:9308/sql?mode=raw" -d "insert into test(a) values(1)"
mysql -h 127.0.0.1 -P 9306 -e "select * from test"

the curl should not return error message then select should returns the document

PavelShilin89 commented 1 week ago

Testing performed in PR - https://github.com/manticoresoftware/manticoresearch/pull/2664 @donhardman - please consider this PR. In table test2, the values for the vector field, which were inserted as (0.1, 0.2, 0.3, 0.4) and (0.5, -0.3, 0.9, -0.1), are returned as zeros 0,0,0,0. This indicates an issue with either the storage or interpretation of the vector data.

PavelShilin89 commented 1 week ago

Blocked by https://github.com/manticoresoftware/manticoresearch-buddy/issues/377