Skip to content

test queries with libfuzzer#3571

Merged
klirichek merged 26 commits into
masterfrom
qfuzzer
Jul 22, 2025
Merged

test queries with libfuzzer#3571
klirichek merged 26 commits into
masterfrom
qfuzzer

Conversation

@klirichek

Copy link
Copy Markdown
Contributor

sphParseExtendedQuery, and then sphTransformExtendedQuery executed over random generated input to find crashes and memory leaks.

See https://github.com/google/fuzzing/blob/master/tutorial/libFuzzerTutorial.md for details
Quickstart guide located at the bottom of src/fuzzer/fuzzer.cpp:

mkdir build && cd build
export CC=`which clang`
export CXX=`which clang++`
cmake -DQFUZZER=ON /path/to/manticore
cmake --build . --target qfuzzer

cd src/fuzzer
mkdir corpus
./qfuzzer -dict=/path/to/manticore/src/fuzzer/dict.txt corpus

For the moment most annoying 'breaks' - query '$' and ' @@' are muted (commented out) in xqnode.cpp (without that it is practically impossible to perform fuzzing, as they fires very quickly and leave no chance for other cases to be located).

Raw (binary) check reveals no problems, however dictionary-driven (with provided dict) runs about 3-5 seconds before a defect located (right now mostly mem corruption).

This PR is wip and will be enhanced by concrete fixes

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/kibana/
✅ OK: 0
❌ Failed: 2
⏳ Duration: 12s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/kibana/test-kibana-log-to-test-script.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X HEAD -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.apm-agent-configuration'
––– output –––
- {"error":{"type":"index_not_found_exception","reason":"no such index [.apm-agent-configuration]","table":".apm-agent-configuration"},"status":404}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_xpack'
––– output –––
- {"build":{"date":"2020-02-06T00:09:00.449973Z","hash":"7f634e9f44834fbc12724506cc1da681b0c3b1e3"},"features":{"analytics":{"available ":true,"enabled":true},"ccr":{"available":false,"enabled":true},"enrich":{"available":true,"enabled":true},"flattened":{"available":true,"enabled":true},"frozen_indices":{"available":true,"enabled":true},"graph":{"available":false,"enabled":true},"ilm":{"available":true,"enabled":true},"logstash":{"available":false,"enabled":true},"ml":{"available":false,"enabled":false,"native_code_info":{"build_hash":"N/A","version":"N/A"}},"monitoring":{"available":true,"enabled":true},"rollup":{"available":true,"enabled":true},"security":{"available":true,"enabled":false},"slm":{"available":true,"enabled":true},"spatial":{"available":true,"enabled":true},"sql":{"available":true,"enabled":true},"transform":{"available":true,"enabled":true},"vectors":{"available":true,"enabled":true},"voting_only":{"available":true,"enabled":true},"watcher":{"available":false,"enabled":true}},"license":{"mode":"basic","status":"active","type":"basic","uid":"f517b738-4fbd-4820-aca3-0710c1017f1a"},"tagline":"You know, for X"}
––– input –––
curl -s -X PUT -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 602' -H 'Connection: keep-alive' -d '{"settings":{"index.auto_expand_replicas":"0-1"},"mappings":{"properties":{"@timestamp":{"type":"date"},"service":{"properties":{"name":{"type":"keyword","ignore_above":1024},"environment":{"type":"keyword","ignore_above":1024}}},"settings":{"properties":{"transaction_sample_rate":{"type":"scaled_float","scaling_factor":1000,"ignore_malformed":true,"coerce":false},"capture_body":{"type":"keyword","ignore_above":1024},"transaction_max_spans":{"type":"short"}}},"applied_by_agent":{"type":"boolean"},"agent_name":{"type":"keyword","ignore_above":1024},"etag":{"type":"keyword","ignore_above":1024}}}}' 'localhost:9308/.apm-agent-configuration'
––– output –––
- {"acknowledged":true,"index":".apm-agent-configuration","shards_acknowledged":true}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana'
––– output –––
- {"error":{"index":".kibana","index_uuid":"_na_","reason":"no such index [.kibana]","resource.id":".kibana","resource.type":"index_or_alias","root_cause":[{"index":".kibana","index_uuid":"_na_","reason":"no such index [.kibana]","resource.id":".kibana","resource.type":"index_or_alias","type":"index_not_found_exception"}],"type":"index_not_found_exception"},"status":404}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana_task_manager'
––– output –––
- {"error":{"index":".kibana_task_manager","index_uuid":"_na_","reason":"no such index [.kibana_task_manager]","resource.id":".kibana_task_manager","resource.type":"index_or_alias","root_cause":[{"index":".kibana_task_manager","index_uuid":"_na_","reason":"no such index [.kibana_task_manager]","resource.id":".kibana_task_manager","resource.type":"index_or_alias","type":"index_not_found_exception"}],"type":"index_not_found_exception"},"status":404}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana'
––– output –––
- {"error":{"index":".kibana","index_uuid":"_na_","reason":"no such index [.kibana]","resource.id":".kibana","resource.type":"index_or_alias","root_cause":[{"index":".kibana","index_uuid":"_na_","reason":"no such index [.kibana]","resource.id":".kibana","resource.type":"index_or_alias","type":"index_not_found_exception"}],"type":"index_not_found_exception"},"status":404}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana_task_manager'
––– output –––
- {"error":{"index":".kibana_task_manager","index_uuid":"_na_","reason":"no such index [.kibana_task_manager]","resource.id":".kibana_task_manager","resource.type":"index_or_alias","root_cause":[{"index":".kibana_task_manager","index_uuid":"_na_","reason":"no such index [.kibana_task_manager]","resource.id":".kibana_task_manager","resource.type":"index_or_alias","type":"index_not_found_exception"}],"type":"index_not_found_exception"},"status":404}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_cat/templates/kibana_index_template*?format=json'
––– output –––
- []
––– input –––
curl -s -X PUT -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 1225' -H 'Connection: keep-alive' -d '{"mappings":{"dynamic":"strict","properties":{"config":{"dynamic":"true","properties":{"buildNum":{"type":"keyword"}}},"migrationVersion":{"dynamic":"true","type":"object"},"type":{"type":"keyword"},"namespace":{"type":"keyword"},"updated_at":{"type":"date"},"references":{"type":"nested","properties":{"name":{"type":"keyword"},"type":{"type":"keyword"},"id":{"type":"keyword"}}},"task":{"properties":{"taskType":{"type":"keyword"},"scheduledAt":{"type":"date"},"runAt":{"type":"date"},"startedAt":{"type":"date"},"retryAt":{"type":"date"},"schedule":{"properties":{"interval":{"type":"keyword"}}},"attempts":{"type":"integer"},"status":{"type":"keyword"},"params":{"type":"text"},"state":{"type":"text"},"user":{"type":"keyword"},"scope":{"type":"keyword"},"ownerId":{"type":"keyword"}}}},"_meta":{"migrationMappingPropertyHashes":{"config":"87aca8fdb053154f11383fce3dbf3edf","migrationVersion":"4a1746014a75ade3a714e1db5763276f","type":"2f4316de49999235636386fe51dc06c1","namespace":"2f4316de49999235636386fe51dc06c1","updated_at":"00da57df13e94e9d98437d13ace4bfe0","references":"7997cf5a56cc02bdc9c93361bde732b0","task":"235412e52d09e7165fac8a67a43ad6b4"}}},"settings":{"number_of_shards":1,"auto_expand_replicas":"0-1"}}' 'localhost:9308/.kibana_task_manager_1'
––– output –––
- {"acknowledged":true,"index":".kibana_task_manager_1","shards_acknowledged":true}
––– input –––
curl -s -X PUT -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 15115' -H 'Connection: keep-alive' -d '{"mappings":{"dynamic":"strict","properties":{"config":{"dynamic":"true","properties":{"buildNum":{"type":"keyword"}}},"migrationVersion":{"dynamic":"true","type":"object"},"type":{"type":"keyword"},"namespace":{"type":"keyword"},"updated_at":{"type":"date"},"references":{"type":"nested","properties":{"name":{"type":"keyword"},"type":{"type":"keyword"},"id":{"type":"keyword"}}},"graph-workspace":{"properties":{"description":{"type":"text"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"numLinks":{"type":"integer"},"numVertices":{"type":"integer"},"title":{"type":"text"},"version":{"type":"integer"},"wsState":{"type":"text"}}},"space":{"properties":{"name":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":2048}}},"description":{"type":"text"},"initials":{"type":"keyword"},"color":{"type":"keyword"},"disabledFeatures":{"type":"keyword"},"imageUrl":{"type":"text","index":false},"_reserved":{"type":"boolean"}}},"ml-telemetry":{"properties":{"file_data_visualizer":{"properties":{"index_creation_count":{"type":"long"}}}}},"apm-services-telemetry":{"properties":{"has_any_services":{"type":"boolean"},"services_per_agent":{"properties":{"python":{"type":"long","null_value":0},"java":{"type":"long","null_value":0},"nodejs":{"type":"long","null_value":0},"js-base":{"type":"long","null_value":0},"rum-js":{"type":"long","null_value":0},"dotnet":{"type":"long","null_value":0},"ruby":{"type":"long","null_value":0},"go":{"type":"long","null_value":0}}}}},"apm-indices":{"properties":{"apm_oss.sourcemapIndices":{"type":"keyword"},"apm_oss.errorIndices":{"type":"keyword"},"apm_oss.onboardingIndices":{"type":"keyword"},"apm_oss.spanIndices":{"type":"keyword"},"apm_oss.transactionIndices":{"type":"keyword"},"apm_oss.metricsIndices":{"type":"keyword"}}},"map":{"properties":{"description":{"type":"text"},"title":{"type":"text"},"version":{"type":"integer"},"bounds":{"type":"geo_shape"},"mapStateJSON":{"type":"text"},"layerListJSON":{"type":"text"},"uiStateJSON":{"type":"text"}}},"maps-telemetry":{"properties":{"settings":{"properties":{"showMapVisualizationTypes":{"type":"boolean"}}},"indexPatternsWithGeoFieldCount":{"type":"long"},"mapsTotalCount":{"type":"long"},"timeCaptured":{"type":"date"},"attributesPerMap":{"properties":{"dataSourcesCount":{"properties":{"min":{"type":"long"},"max":{"type":"long"},"avg":{"type":"long"}}},"layersCount":{"properties":{"min":{"type":"long"},"max":{"type":"long"},"avg":{"type":"long"}}},"layerTypesCount":{"dynamic":"true","properties":{}},"emsVectorLayersCount":{"dynamic":"true","properties":{}}}}}},"canvas-workpad":{"dynamic":false,"properties":{"name":{"type":"text","fields":{"keyword":{"type":"keyword"}}},"@timestamp":{"type":"date"},"@created":{"type":"date"}}},"canvas-element":{"dynamic":false,"properties":{"name":{"type":"text","fields":{"keyword":{"type":"keyword"}}},"help":{"type":"text"},"content":{"type":"text"},"image":{"type":"text"},"@timestamp":{"type":"date"},"@created":{"type":"date"}}},"infrastructure-ui-source":{"properties":{"name":{"type":"text"},"description":{"type":"text"},"metricAlias":{"type":"keyword"},"logAlias":{"type":"keyword"},"fields":{"properties":{"container":{"type":"keyword"},"host":{"type":"keyword"},"pod":{"type":"keyword"},"tiebreaker":{"type":"keyword"},"timestamp":{"type":"keyword"}}},"logColumns":{"type":"nested","properties":{"timestampColumn":{"properties":{"id":{"type":"keyword"}}},"messageColumn":{"properties":{"id":{"type":"keyword"}}},"fieldColumn":{"properties":{"id":{"type":"keyword"},"field":{"type":"keyword"}}}}}}},"metrics-explorer-view":{"properties":{"name":{"type":"keyword"},"options":{"properties":{"metrics":{"type":"nested","properties":{"aggregation":{"type":"keyword"},"field":{"type":"keyword"},"color":{"type":"keyword"},"label":{"type":"keyword"}}},"limit":{"type":"integer"},"groupBy":{"type":"keyword"},"filterQuery":{"type":"keyword"},"aggregation":{"type":"keyword"}}},"chartOptions":{"properties":{"type":{"type":"keyword"},"yAxisMode":{"type":"keyword"},"stack":{"type":"boolean"}}},"currentTimerange":{"properties":{"from":{"type":"keyword"},"to":{"type":"keyword"},"interval":{"type":"keyword"}}}}},"inventory-view":{"properties":{"name":{"type":"keyword"},"metric":{"properties":{"type":{"type":"keyword"}}},"groupBy":{"type":"nested","properties":{"label":{"type":"keyword"},"field":{"type":"keyword"}}},"nodeType":{"type":"keyword"},"view":{"type":"keyword"},"customOptions":{"type":"nested","properties":{"text":{"type":"keyword"},"field":{"type":"keyword"}}},"boundsOverride":{"properties":{"max":{"type":"integer"},"min":{"type":"integer"}}},"autoBounds":{"type":"boolean"},"time":{"type":"integer"},"autoReload":{"type":"boolean"},"filterQuery":{"properties":{"kind":{"type":"keyword"},"expression":{"type":"keyword"}}}}},"siem-ui-timeline":{"properties":{"columns":{"properties":{"aggregatable":{"type":"boolean"},"category":{"type":"keyword"},"columnHeaderType":{"type":"keyword"},"description":{"type":"text"},"example":{"type":"text"},"indexes":{"type":"keyword"},"id":{"type":"keyword"},"name":{"type":"text"},"placeholder":{"type":"text"},"searchable":{"type":"boolean"},"type":{"type":"keyword"}}},"dataProviders":{"properties":{"id":{"type":"keyword"},"name":{"type":"text"},"enabled":{"type":"boolean"},"excluded":{"type":"boolean"},"kqlQuery":{"type":"text"},"queryMatch":{"properties":{"field":{"type":"text"},"displayField":{"type":"text"},"value":{"type":"text"},"displayValue":{"type":"text"},"operator":{"type":"text"}}},"and":{"properties":{"id":{"type":"keyword"},"name":{"type":"text"},"enabled":{"type":"boolean"},"excluded":{"type":"boolean"},"kqlQuery":{"type":"text"},"queryMatch":{"properties":{"field":{"type":"text"},"displayField":{"type":"text"},"value":{"type":"text"},"displayValue":{"type":"text"},"operator":{"type":"text"}}}}}}},"description":{"type":"text"},"eventType":{"type":"keyword"},"favorite":{"properties":{"keySearch":{"type":"text"},"fullName":{"type":"text"},"userName":{"type":"text"},"favoriteDate":{"type":"date"}}},"filters":{"properties":{"meta":{"properties":{"alias":{"type":"text"},"controlledBy":{"type":"text"},"disabled":{"type":"boolean"},"field":{"type":"text"},"formattedValue":{"type":"text"},"index":{"type":"keyword"},"key":{"type":"keyword"},"negate":{"type":"boolean"},"params":{"type":"text"},"type":{"type":"keyword"},"value":{"type":"text"}}},"exists":{"type":"text"},"match_all":{"type":"text"},"missing":{"type":"text"},"query":{"type":"text"},"range":{"type":"text"},"script":{"type":"text"}}},"kqlMode":{"type":"keyword"},"kqlQuery":{"properties":{"filterQuery":{"properties":{"kuery":{"properties":{"kind":{"type":"keyword"},"expression":{"type":"text"}}},"serializedQuery":{"type":"text"}}}}},"title":{"type":"text"},"dateRange":{"properties":{"start":{"type":"date"},"end":{"type":"date"}}},"savedQueryId":{"type":"keyword"},"sort":{"properties":{"columnId":{"type":"keyword"},"sortDirection":{"type":"keyword"}}},"created":{"type":"date"},"createdBy":{"type":"text"},"updated":{"type":"date"},"updatedBy":{"type":"text"}}},"siem-ui-timeline-note":{"properties":{"timelineId":{"type":"keyword"},"eventId":{"type":"keyword"},"note":{"type":"text"},"created":{"type":"date"},"createdBy":{"type":"text"},"updated":{"type":"date"},"updatedBy":{"type":"text"}}},"siem-ui-timeline-pinned-event":{"properties":{"timelineId":{"type":"keyword"},"eventId":{"type":"keyword"},"created":{"type":"date"},"createdBy":{"type":"text"},"updated":{"type":"date"},"updatedBy":{"type":"text"}}},"siem-detection-engine-rule-status":{"properties":{"alertId":{"type":"keyword"},"status":{"type":"keyword"},"statusDate":{"type":"date"},"lastFailureAt":{"type":"date"},"lastSuccessAt":{"type":"date"},"lastFailureMessage":{"type":"text"},"lastSuccessMessage":{"type":"text"}}},"upgrade-assistant-reindex-operation":{"dynamic":true,"properties":{"indexName":{"type":"keyword"},"status":{"type":"integer"}}},"upgrade-assistant-telemetry":{"properties":{"ui_open":{"properties":{"overview":{"type":"long","null_value":0},"cluster":{"type":"long","null_value":0},"indices":{"type":"long","null_value":0}}},"ui_reindex":{"properties":{"close":{"type":"long","null_value":0},"open":{"type":"long","null_value":0},"start":{"type":"long","null_value":0},"stop":{"type":"long","null_value":0}}},"features":{"properties":{"deprecation_logging":{"properties":{"enabled":{"type":"boolean","null_value":true}}}}}}},"file-upload-telemetry":{"properties":{"filesUploadedTotalCount":{"type":"long"}}},"lens":{"properties":{"title":{"type":"text"},"visualizationType":{"type":"keyword"},"state":{"type":"flattened"},"expression":{"index":false,"type":"keyword"}}},"lens-ui-telemetry":{"properties":{"name":{"type":"keyword"},"type":{"type":"keyword"},"date":{"type":"date"},"count":{"type":"integer"}}},"action":{"properties":{"name":{"type":"text"},"actionTypeId":{"type":"keyword"},"config":{"enabled":false,"type":"object"},"secrets":{"type":"binary"}}},"action_task_params":{"properties":{"actionId":{"type":"keyword"},"params":{"enabled":false,"type":"object"},"apiKey":{"type":"binary"}}},"alert":{"properties":{"enabled":{"type":"boolean"},"name":{"type":"text"},"tags":{"type":"keyword"},"alertTypeId":{"type":"keyword"},"schedule":{"properties":{"interval":{"type":"keyword"}}},"consumer":{"type":"keyword"},"actions":{"type":"nested","properties":{"group":{"type":"keyword"},"actionRef":{"type":"keyword"},"actionTypeId":{"type":"keyword"},"params":{"enabled":false,"type":"object"}}},"params":{"enabled":false,"type":"object"},"scheduledTaskId":{"type":"keyword"},"createdBy":{"type":"keyword"},"updatedBy":{"type":"keyword"},"createdAt":{"type":"date"},"apiKey":{"type":"binary"},"apiKeyOwner":{"type":"keyword"},"throttle":{"type":"keyword"},"muteAll":{"type":"boolean"},"mutedInstanceIds":{"type":"keyword"}}},"query":{"properties":{"title":{"type":"text"},"description":{"type":"text"},"query":{"properties":{"language":{"type":"keyword"},"query":{"type":"keyword","index":false}}},"filters":{"type":"object","enabled":false},"timefilter":{"type":"object","enabled":false}}},"index-pattern":{"properties":{"fieldFormatMap":{"type":"text"},"fields":{"type":"text"},"intervalName":{"type":"keyword"},"notExpandable":{"type":"boolean"},"sourceFilters":{"type":"text"},"timeFieldName":{"type":"keyword"},"title":{"type":"text"},"type":{"type":"keyword"},"typeMeta":{"type":"keyword"}}},"visualization":{"properties":{"description":{"type":"text"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"savedSearchRefName":{"type":"keyword"},"title":{"type":"text"},"uiStateJSON":{"type":"text"},"version":{"type":"integer"},"visState":{"type":"text"}}},"search":{"properties":{"columns":{"type":"keyword"},"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"sort":{"type":"keyword"},"title":{"type":"text"},"version":{"type":"integer"}}},"dashboard":{"properties":{"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"optionsJSON":{"type":"text"},"panelsJSON":{"type":"text"},"refreshInterval":{"properties":{"display":{"type":"keyword"},"pause":{"type":"boolean"},"section":{"type":"integer"},"value":{"type":"integer"}}},"timeFrom":{"type":"keyword"},"timeRestore":{"type":"boolean"},"timeTo":{"type":"keyword"},"title":{"type":"text"},"version":{"type":"integer"}}},"url":{"properties":{"accessCount":{"type":"long"},"accessDate":{"type":"date"},"createDate":{"type":"date"},"url":{"type":"text","fields":{"keyword":{"type":"keyword","ignore_above":2048}}}}},"server":{"properties":{"uuid":{"type":"keyword"}}},"kql-telemetry":{"properties":{"optInCount":{"type":"long"},"optOutCount":{"type":"long"}}},"sample-data-telemetry":{"properties":{"installCount":{"type":"long"},"unInstallCount":{"type":"long"}}},"telemetry":{"properties":{"enabled":{"type":"boolean"},"sendUsageFrom":{"ignore_above":256,"type":"keyword"},"lastReported":{"type":"date"},"lastVersionChecked":{"ignore_above":256,"type":"keyword"},"userHasSeenNotice":{"type":"boolean"}}},"timelion-sheet":{"properties":{"description":{"type":"text"},"hits":{"type":"integer"},"kibanaSavedObjectMeta":{"properties":{"searchSourceJSON":{"type":"text"}}},"timelion_chart_height":{"type":"integer"},"timelion_columns":{"type":"integer"},"timelion_interval":{"type":"keyword"},"timelion_other_interval":{"type":"keyword"},"timelion_rows":{"type":"integer"},"timelion_sheet":{"type":"text"},"title":{"type":"text"},"version":{"type":"integer"}}},"ui-metric":{"properties":{"count":{"type":"integer"}}},"tsvb-validation-telemetry":{"properties":{"failedRequests":{"type":"long"}}}},"_meta":{"migrationMappingPropertyHashes":{"config":"87aca8fdb053154f11383fce3dbf3edf","migrationVersion":"4a1746014a75ade3a714e1db5763276f","type":"2f4316de49999235636386fe51dc06c1","namespace":"2f4316de49999235636386fe51dc06c1","updated_at":"00da57df13e94e9d98437d13ace4bfe0","references":"7997cf5a56cc02bdc9c93361bde732b0","graph-workspace":"cd7ba1330e6682e9cc00b78850874be1","space":"c5ca8acafa0beaa4d08d014a97b6bc6b","ml-telemetry":"257fd1d4b4fdbb9cb4b8a3b27da201e9","apm-services-telemetry":"07ee1939fa4302c62ddc052ec03fed90","apm-indices":"9bb9b2bf1fa636ed8619cbab5ce6a1dd","map":"23d7aa4a720d4938ccde3983f87bd58d","maps-telemetry":"268da3a48066123fc5baf35abaa55014","canvas-workpad":"b0a1706d356228dbdcb4a17e6b9eb231","canvas-element":"7390014e1091044523666d97247392fc","infrastructure-ui-source":"ddc0ecb18383f6b26101a2fadb2dab0c","metrics-explorer-view":"53c5365793677328df0ccb6138bf3cdd","inventory-view":"84b320fd67209906333ffce261128462","siem-ui-timeline":"ac8020190f5950dd3250b6499144e7fb","siem-ui-timeline-note":"8874706eedc49059d4cf0f5094559084","siem-ui-timeline-pinned-event":"20638091112f0e14f0e443d512301c29","siem-detection-engine-rule-status":"0367e4d775814b56a4bee29384f9aafe","upgrade-assistant-reindex-operation":"a53a20fe086b72c9a86da3cc12dad8a6","upgrade-assistant-telemetry":"56702cec857e0a9dacfb696655b4ff7b","file-upload-telemetry":"0ed4d3e1983d1217a30982630897092e","lens":"21c3ea0763beb1ecb0162529706b88c5","lens-ui-telemetry":"509bfa5978586998e05f9e303c07a327","action":"c0c235fba02ebd2a2412bcda79009b58","action_task_params":"a9d49f184ee89641044be0ca2950fa3a","alert":"e588043a01d3d43477e7cad7efa0f5d8","query":"11aaeb7f5f7fa5bb43f25e18ce26e7d9","index-pattern":"66eccb05066c5a89924f48a9e9736499","visualization":"52d7a13ad68a150c4525b292d23e12cc","search":"181661168bbadd1eff5902361e2a0d5c","dashboard":"d00f614b29a80360e1190193fd333bab","url":"c7f66a0df8b1b52f17c28c4adb111105","server":"ec97f1c5da1a19609a60874e5af1100c","kql-telemetry":"d12a98a6f19a2d273696597547e064ee","sample-data-telemetry":"7d3cfeb915303c9641c59681967ffeb4","telemetry":"358ffaa88ba34a97d55af0933a117de4","timelion-sheet":"9a2a2748877c7a7b582fef201ab1d4cf","ui-metric":"0d409297dc5ebe1e3a1da691c6ee32e3","tsvb-validation-telemetry":"3a37ef6c8700ae6fc97d5c7da00e9215"}}},"settings":{"number_of_shards":1,"auto_expand_replicas":"0-1"}}' 'localhost:9308/.kibana_1'
––– output –––
- {"acknowledged":true,"index":".kibana_1","shards_acknowledged":true}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_alias/.kibana_task_manager'
––– output –––
- []
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_alias/.kibana'
––– output –––
- []
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 87' -H 'Connection: keep-alive' -d '{"actions":[{"add":{"index":".kibana_task_manager_1","alias":".kibana_task_manager"}}]}' 'localhost:9308/_aliases'
––– output –––
- {"acknowledged":"true"}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 61' -H 'Connection: keep-alive' -d '{"actions":[{"add":{"index":".kibana_1","alias":".kibana"}}]}' 'localhost:9308/_aliases'
––– output –––
- {"acknowledged":"true"}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana_task_manager_1/_refresh'
––– output –––
- { "_shards": { "total": 1, "successful": 1, "failed": 0 } }
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana_1/_refresh'
––– output –––
- { "_shards": { "total": 1, "successful": 1, "failed": 0 } }
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_xpack'
––– output –––
- {"build":{"date":"2020-02-06T00:09:00.449973Z","hash":"7f634e9f44834fbc12724506cc1da681b0c3b1e3"},"features":{"analytics":{"available ":true,"enabled":true},"ccr":{"available":false,"enabled":true},"enrich":{"available":true,"enabled":true},"flattened":{"available":true,"enabled":true},"frozen_indices":{"available":true,"enabled":true},"graph":{"available":false,"enabled":true},"ilm":{"available":true,"enabled":true},"logstash":{"available":false,"enabled":true},"ml":{"available":false,"enabled":false,"native_code_info":{"build_hash":"N/A","version":"N/A"}},"monitoring":{"available":true,"enabled":true},"rollup":{"available":true,"enabled":true},"security":{"available":true,"enabled":false},"slm":{"available":true,"enabled":true},"spatial":{"available":true,"enabled":true},"sql":{"available":true,"enabled":true},"transform":{"available":true,"enabled":true},"vectors":{"available":true,"enabled":true},"voting_only":{"available":true,"enabled":true},"watcher":{"available":false,"enabled":true}},"license":{"mode":"basic","status":"active","type":"basic","uid":"f517b738-4fbd-4820-aca3-0710c1017f1a"},"tagline":"You know, for X"}
––– input –––
curl -s -X PUT -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 1307' -H 'Connection: keep-alive' -d '{"index_patterns":[".management-beats"],"version":70000,"settings":{"index":{"number_of_shards":1,"auto_expand_replicas":"0-1","codec":"best_compression"}},"mappings":{"dynamic":"strict","properties":{"type":{"type":"keyword"},"configuration_block":{"properties":{"id":{"type":"keyword"},"type":{"type":"keyword"},"tag":{"type":"keyword"},"description":{"type":"text"},"config":{"type":"keyword"},"last_updated":{"type":"date"}}},"enrollment_token":{"properties":{"token":{"type":"keyword"},"expires_on":{"type":"date"}}},"tag":{"properties":{"id":{"type":"keyword"},"name":{"type":"keyword"},"color":{"type":"keyword"},"hasConfigurationBlocksTypes":{"type":"keyword"}}},"beat":{"properties":{"id":{"type":"keyword"},"status":{"properties":{"type":{"type":"keyword"},"timestamp":{"type":"date"},"event":{"properties":{"type":{"type":"keyword"},"message":{"type":"text"},"uuid":{"type":"keyword"}}}}},"active":{"type":"boolean"},"last_checkin":{"type":"date"},"enrollment_token":{"type":"keyword"},"access_token":{"type":"keyword"},"verified_on":{"type":"date"},"type":{"type":"keyword"},"version":{"type":"keyword"},"host_ip":{"type":"ip"},"host_name":{"type":"keyword"},"ephemeral_id":{"type":"keyword"},"tags":{"type":"keyword"},"metadata":{"dynamic":"true","type":"object"},"name":{"type":"keyword"}}}}}}' 'localhost:9308/_template/.management-beats'
––– output –––
- {"acknowledged":true,"index":"_template","shards_acknowledged":true}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_xpack'
––– output –––
- {"build":{"date":"2020-02-06T00:09:00.449973Z","hash":"7f634e9f44834fbc12724506cc1da681b0c3b1e3"},"features":{"analytics":{"available ":true,"enabled":true},"ccr":{"available":false,"enabled":true},"enrich":{"available":true,"enabled":true},"flattened":{"available":true,"enabled":true},"frozen_indices":{"available":true,"enabled":true},"graph":{"available":false,"enabled":true},"ilm":{"available":true,"enabled":true},"logstash":{"available":false,"enabled":true},"ml":{"available":false,"enabled":false,"native_code_info":{"build_hash":"N/A","version":"N/A"}},"monitoring":{"available":true,"enabled":true},"rollup":{"available":true,"enabled":true},"security":{"available":true,"enabled":false},"slm":{"available":true,"enabled":true},"spatial":{"available":true,"enabled":true},"sql":{"available":true,"enabled":true},"transform":{"available":true,"enabled":true},"vectors":{"available":true,"enabled":true},"voting_only":{"available":true,"enabled":true},"watcher":{"available":false,"enabled":true}},"license":{"mode":"basic","status":"active","type":"basic","uid":"f517b738-4fbd-4820-aca3-0710c1017f1a"},"tagline":"You know, for X"}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 354' -H 'Connection: keep-alive' -d '{"seq_no_primary_term":true,"query":{"bool":{"filter":[{"bool":{"should":[{"bool":{"must":[{"term":{"type":"upgrade-assistant-reindex-operation"}}],"must_not":[{"exists":{"field":"namespace"}}]}}],"minimum_should_match":1}}],"must":[{"simple_query_string":{"query":"0","fields":["upgrade-assistant-reindex-operation.status"],"default_operator":"OR"}}]}}}' 'localhost:9308/.kibana/_search?size=20&from=0&rest_total_hits_as_int=true'
––– output –––
- {"_shards":{"failed":0,"skipped":0,"successful":1,"total":1},"hits":{"hits":[],"max_score":0,"total":0,"total_relation":"eq"},"status":200,"timed_out":false,"took":0}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/.kibana/_doc/space%3Adefault'
––– output –––
- {"_id":"space:default","_index":".kibana_1","_type":"_doc","found":false}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 237' -H 'Connection: keep-alive' -d '{"space":{"name":"Default","description":"This is your default space!","color":"#00bfb3","disabledFeatures":[],"_reserved":true},"type":"space","references":[],"migrationVersion":{"space":"6.6.0"},"updated_at":"2025-04-16T12:06:54.147Z"}' 'localhost:9308/.kibana/_create/space%3Adefault?refresh=wait_for'
––– output –––
- {"_id":"space:default","_index":".kibana_1","_primary_term":1,"_seq_no":0,"_shards":{"failed":0,"successful":1,"total":1},"_type":"_doc","_version":1,"result":"created"}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X HEAD --max-time 5 -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/'
––– output –––
OK
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_cluster/settings?include_defaults=true'
––– output –––
- {"defaults":{"action":{"auto_create_index":"true","destructive_requires_name":"false","search":{"shard_count":{"limit":9223372036854775807}}},"bootstrap":{"ctrlhandler":"true","memory_lock":"false","system_call_filter":"true"},"cache":{"recycler":{"page":{"limit":{"heap":"10%"},"type":"CONCURRENT","weight":{"bytes":1.000000,"ints":1.000000,"longs":1.000000,"objects":0.100000}}}},"ccr":{"auto_follow":{"wait_for_metadata_timeout":"60s"},"indices":{"recovery":{"chunk_size":"1mb","internal_action_timeout":"60s","max_bytes_per_sec":"40mb","max_concurrent_file_chunks":5,"recovery_activity_timeout":"60s"}},"wait_for_metadata_timeout":"60s"},"client":{"transport":{"ignore_cluster_name":"false","nodes_sampler_interval":"5s","ping_timeout":"5s","sniff":"false"},"type":"node"},"cluster":{"auto_shrink_voting_configuration":"true","blocks":{"read_only":"false","read_only_allow_delete":"false"},"election":{"back_off_time":"100ms","duration":"500ms","initial_timeout":"100ms","max_timeout":"10s","strategy":"supports_voting_only"},"fault_detection":{"follower_check":{"interval":"1000ms","retry_count":3,"timeout":"10000ms"},"leader_check":{"interval":"1000ms","retry_count":3,"timeout":"10000ms"}},"follower_lag":{"timeout":"90000ms"},"indices":{"close":{"enable":"true"},"tombstones":{"size":500}},"info":{"update":{"interval":"30s","timeout":"15s"}},"initial_master_nodes":[],"join":{"timeout":"60000ms"},"max_shards_per_node":1000,"max_voting_config_exclusions":10,"name":"docker-cluster","no_master_block":"write","nodes":{"reconnect_interval":"10s"},"persistent_tasks":{"allocation":{"enable":"all","recheck_interval":"30s"}},"publish":{"info_timeout":"10000ms","timeout":"30000ms"},"remote":{"connect":"true","connections_per_cluster":3,"initial_connect_timeout":"30s","node":{"attr":""}},"routing":{"allocation":{"allow_rebalance":"indices_all_active","awareness":{"attributes":[]},"balance":{"index":0.550000,"shard":0.450000,"threshold":1.000000},"cluster_concurrent_rebalance":2,"disk":{"include_relocations":"true","reroute_interval":"60s","threshold_enabled":"true","watermark":{"flood_stage":"95%","high":"90%","low":"85%"}},"enable":"all","node_concurrent_incoming_recoveries":2,"node_concurrent_outgoing_recoveries":2,"node_concurrent_recoveries":2,"node_initial_primaries_recoveries":4,"same_shard":{"host":"false"},"shard_state":{"reroute":{"priority":"NORMAL"}},"total_shards_per_node":-1,"type":"balanced"},"rebalance":{"enable":"all"},"use_adaptive_replica_selection":"true"},"service":{"slow_master_task_logging_threshold":"10s","slow_task_logging_threshold":"30s"}},"discovery":{"cluster_formation_warning_timeout":"10000ms","find_peers_interval":"1000ms","initial_state_timeout":"30s","request_peers_timeout":"3000ms","seed_hosts":[],"seed_providers":[],"seed_resolver":{"max_concurrent_resolvers":10,"timeout":"5s"},"type":"single-node","unconfigured_bootstrap_timeout":"3s","zen":{"bwc_ping_timeout":"3s","commit_timeout":"30s","fd":{"connect_on_network_disconnect":"false","ping_interval":"1s","ping_retries":3,"ping_timeout":"30s","register_connection_listener":"true"},"hosts_provider":[],"join_retry_attempts":3,"join_retry_delay":"100ms","join_timeout":"60000ms","master_election":{"ignore_non_master_pings":"false","wait_for_joins_timeout":"30000ms"},"max_pings_from_another_master":3,"minimum_master_nodes":-1,"no_master_block":"write","ping":{"unicast":{"concurrent_connects":10,"hosts":[],"hosts.resolve_timeout":"5s"}},"ping_timeout":"3s","publish":{"max_pending_cluster_states":25},"publish_diff":{"enable":"true"},"publish_timeout":"30s","send_leave_request":"true","unsafe_rolling_upgrades_enabled":"true"}},"enrich":{"cleanup_period":"15m","coordinator_proxy":{"max_concurrent_requests":8,"max_lookups_per_request":128,"queue_capacity":1024},"fetch_size":10000,"max_concurrent_policy_executions":50,"max_force_merge_attempts":3},"gateway":{"auto_import_dangling_indices":"true","expected_data_nodes":-1,"expected_master_nodes":-1,"expected_nodes":-1,"recover_after_data_nodes":-1,"recover_after_master_nodes":0,"recover_after_nodes":-1,"recover_after_time":"0ms","slow_write_logging_threshold":"10s","write_dangling_indices_info":"true"},"http":{"bind_host":[],"compression":"true","compression_level":3,"content_type":{"required":"true"},"cors":{"allow-credentials":"false","allow-headers":"X-Requested-With,Content-Type,Content-Length","allow-methods":"OPTIONS,HEAD,GET,POST,PUT,DELETE","allow-origin":"","enabled":"false","max-age":1728000},"detailed_errors":{"enabled":"true"},"host":[],"max_chunk_size":"8kb","max_content_length":"100mb","max_header_size":"8kb","max_initial_line_length":"4kb","max_warning_header_count":-1,"max_warning_header_size":"-1b","netty":{"max_composite_buffer_components":69905,"receive_predictor_size":"64kb","worker_count":4},"pipelining":{"max_events":10000},"port":"9200-9300","publish_host":[],"publish_port":-1,"read_timeout":"0ms","reset_cookies":"false","tcp":{"keep_alive":"true","keep_count":-1,"keep_idle":-1,"keep_interval":-1,"no_delay":"true","receive_buffer_size":"-1b","reuse_address":"true","send_buffer_size":"-1b"},"tcp_no_delay":"true","type":"security4","type.default":"netty4"},"index":{"codec":"default","store":{"fs":{"fs_lock":"native"},"preload":[],"type":""}},"indices":{"analysis":{"hunspell":{"dictionary":{"ignore_case":"false","lazy":"false"}}},"breaker":{"accounting":{"limit":"100%","overhead":1.000000},"fielddata":{"limit":"40%","overhead":1.030000,"type":"memory"},"request":{"limit":"60%","overhead":1.000000,"type":"memory"},"total":{"limit":"95%","use_real_memory":"true"},"type":"hierarchy"},"cache":{"cleanup_interval":"1m"},"fielddata":{"cache":{"size":"-1b"}},"id_field_data":{"enabled":"true"},"lifecycle":{"history_index_enabled":"true","poll_interval":"10m"},"mapping":{"dynamic_timeout":"30s"},"memory":{"index_buffer_size":"10%","interval":"5s","max_index_buffer_size":-1,"min_index_buffer_size":"48mb","shard_inactive_time":"5m"},"queries":{"cache":{"all_segments":"false","count":10000,"size":"10%"}},"query":{"bool":{"max_clause_count":1024},"query_string":{"allowLeadingWildcard":"true","analyze_wildcard":"false"}},"recovery":{"internal_action_long_timeout":"1800000ms","internal_action_timeout":"15m","max_bytes_per_sec":"40mb","max_concurrent_file_chunks":2,"recovery_activity_timeout":"1800000ms","retry_delay_network":"5s","retry_delay_state_sync":"500ms"},"requests":{"cache":{"expire":"0ms","size":"1%"}},"store":{"delete":{"shard":{"timeout":"30s"}}}},"ingest":{"geoip":{"cache_size":1000},"grok":{"watchdog":{"interval":"1s","max_execution_time":"1s"}},"user_agent":{"cache_size":1000}},"logger":{"level":"INFO"},"monitor":{"fs":{"refresh_interval":"1s"},"jvm":{"gc":{"enabled":"true","overhead":{"debug":10,"info":25,"warn":50},"refresh_interval":"1s"},"refresh_interval":"1s"},"os":{"refresh_interval":"1s"},"process":{"refresh_interval":"1s"}},"network":{"bind_host":["0.0.0.0"],"breaker":{"inflight_requests":{"limit":"100%","overhead":2.000000}},"host":["0.0.0.0"],"publish_host":["0.0.0.0"],"server":"true","tcp":{"connect_timeout":"30s","keep_alive":"true","keep_count":-1,"keep_idle":-1,"keep_interval":-1,"no_delay":"true","receive_buffer_size":"-1b","reuse_address":"true","send_buffer_size":"-1b"}},"no":{"model":{"state":{"persist":"false"}}},"node":{"attr":{"xpack":{"installed":"true"}},"data":"true","enable_lucene_segment_infos_trace":"false","id":{"seed":0},"ingest":"true","local_storage":"true","master":"true","max_local_storage_nodes":1,"ml":"false","name":"ec0f9510557a","pidfile":"","portsfile":"false","processors":2,"store":{"allow_mmap":"true"},"voting_only":"false"},"path":{"data":[],"home":"/usr/share/elasticsearch","logs":"/usr/share/elasticsearch/logs","repo":[],"shared_data":""},"pidfile":"","plugin":{"mandatory":[]},"processors":2,"reindex":{"remote":{"whitelist":[]}},"repositories":{"fs":{"chunk_size":"9223372036854775807b","compress":"false","location":""},"url":{"allowed_urls":[],"supported_protocols":["http","https","ftp","file","jar"],"url":"http:"}},"resource":{"reload":{"enabled":"true","interval":{"high":"5s","low":"60s","medium":"30s"}}},"rest":{"action":{"multi":{"allow_explicit_index":"true"}}},"script":{"allowed_contexts":[],"allowed_types":[],"cache":{"expire":"0ms","max_size":100},"max_compilations_rate":"75/5m","max_size_in_bytes":65535,"painless":{"regex":{"enabled":"false"}}},"search":{"default_allow_partial_results":"true","default_keep_alive":"5m","default_search_timeout":-1,"highlight":{"term_vector_multi_value":"true"},"keep_alive_interval":"1m","low_level_cancellation":"true","max_buckets":10000,"max_keep_alive":"24h","max_open_scroll_context":500,"remote":{"connect":"true","connections_per_cluster":3,"initial_connect_timeout":"30s","node":{"attr":""}}},"security":{"manager":{"filter_bad_defaults":"true"}},"slm":{"history_index_enabled":"true","retention_duration":"1h","retention_schedule":"0 30 1 * * ?"},"thread_pool":{"analyze":{"queue_size":16,"size":1},"estimated_time_interval":"200ms","fetch_shard_started":{"core":1,"keep_alive":"5m","max":4},"fetch_shard_store":{"core":1,"keep_alive":"5m","max":4},"flush":{"core":1,"keep_alive":"5m","max":1},"force_merge":{"queue_size":-1,"size":1},"generic":{"core":4,"keep_alive":"30s","max":128},"get":{"queue_size":1000,"size":2},"listener":{"queue_size":-1,"size":1},"management":{"core":1,"keep_alive":"5m","max":5},"refresh":{"core":1,"keep_alive":"5m","max":1},"search":{"auto_queue_frame_size":2000,"max_queue_size":1000,"min_queue_size":1000,"queue_size":1000,"size":4,"target_response_time":"1s"},"search_throttled":{"auto_queue_frame_size":200,"max_queue_size":100,"min_queue_size":100,"queue_size":100,"size":1,"target_response_time":"1s"},"snapshot":{"core":1,"keep_alive":"5m","max":1},"warmer":{"core":1,"keep_alive":"5m","max":1},"write":{"queue_size":200,"size":2}},"transform":{"task_thread_pool":{"queue_size":4,"size":4}},"transport":{"bind_host":[],"compress":"false","connect_timeout":"30s","connections_per_node":{"bulk":3,"ping":1,"recovery":2,"reg":6,"state":1},"features":{"x-pack":"true"},"host":[],"netty":{"boss_count":1,"receive_predictor_max":"64kb","receive_predictor_min":"64kb","receive_predictor_size":"64kb","worker_count":4},"ping_schedule":-1,"port":"9300-9400","publish_host":[],"publish_port":-1,"tcp":{"compress":"false","connect_timeout":"30s","keep_alive":"true","keep_count":-1,"keep_idle":-1,"keep_interval":-1,"no_delay":"true","port":"9300-9400","receive_buffer_size":"-1b","reuse_address":"true","send_buffer_size":"-1b"},"tcp_no_delay":"true","tracer":{"exclude":["internal:discovery/zen/fd*","internal:coordination/fault_detection/*","cluster:monitor/nodes/liveness"],"include":[]},"type":"security4","type.default":"netty4"},"xpack":{"ccr":{"ccr_thread_pool":{"queue_size":100,"size":32},"enabled":"true"},"data_frame":{"enabled":"true"},"enrich":{"enabled":"true"},"flattened":{"enabled":"true"},"graph":{"enabled":"true"},"http":{"default_connection_timeout":"10s","default_read_timeout":"10s","max_response_size":"10mb","proxy":{"host":"","port":0,"scheme":""},"whitelist":["*"]},"ilm":{"enabled":"true"},"license":{"self_generated":{"type":"basic"},"upload":{"types":["standard","gold","platinum","enterprise","trial"]}},"logstash":{"enabled":"true"},"ml":{"autodetect_process":"true","enable_config_migration":"true","enabled":"false","inference_model":{"cache_size":"40%","time_to_live":"5m"},"max_anomaly_records":500,"max_inference_processors":50,"max_lazy_ml_nodes":0,"max_machine_memory_percent":30,"max_model_memory_limit":"0b","max_open_jobs":20,"min_disk_space_off_heap":"5gb","node_concurrent_job_allocations":2,"persist_results_max_retries":20,"process_connect_timeout":"10s"},"monitoring":{"collection":{"ccr":{"stats":{"timeout":"10s"}},"cluster":{"stats":{"timeout":"10s"}},"enabled":"false","enrich":{"stats":{"timeout":"10s"}},"index":{"recovery":{"active_only":"false","timeout":"10s"},"stats":{"timeout":"10s"}},"indices":[],"interval":"10s","ml":{"job":{"stats":{"timeout":"10s"}}},"node":{"stats":{"timeout":"10s"}}},"elasticsearch":{"collection":{"enabled":"true"}},"enabled":"true","history":{"duration":"168h"}},"notification":{"email":{"default_account":"","html":{"sanitization":{"allow":["body","head","_tables","_links","_blocks","_formatting","img:embedded"],"disallow":[],"enabled":"true"}}},"jira":{"default_account":""},"pagerduty":{"default_account":""},"reporting":{"interval":"15s","retries":40,"warning":{"enabled":"true"}},"slack":{"default_account":""}},"rollup":{"enabled":"true","task_thread_pool":{"queue_size":4,"size":4}},"security":{"audit":{"enabled":"false","logfile":{"emit_node_host_address":"false","emit_node_host_name":"false","emit_node_id":"true","emit_node_name":"false","events":{"emit_request_body":"false","exclude":[],"include":["ACCESS_DENIED","ACCESS_GRANTED","ANONYMOUS_ACCESS_DENIED","AUTHENTICATION_FAILED","CONNECTION_DENIED","TAMPERED_REQUEST","RUN_AS_DENIED","RUN_AS_GRANTED"]}}},"authc":{"anonymous":{"authz_exception":"true","roles":[],"username":"_anonymous"},"api_key":{"cache":{"hash_algo":"ssha256","max_keys":10000,"ttl":"24h"},"delete":{"interval":"24h","timeout":-1},"enabled":"false","hashing":{"algorithm":"pbkdf2"}},"password_hashing":{"algorithm":"bcrypt"},"reserved_realm":{"enabled":"true"},"run_as":{"enabled":"true"},"success_cache":{"enabled":"true","expire_after_access":"1h","size":10000},"token":{"delete":{"interval":"30m","timeout":-1},"enabled":"false","thread_pool":{"queue_size":1000,"size":1},"timeout":"20m"}},"authz":{"store":{"roles":{"cache":{"max_size":10000},"field_permissions":{"cache":{"max_size_in_bytes":104857600}},"index":{"cache":{"max_size":10000,"ttl":"20m"}},"negative_lookup_cache":{"max_size":10000}}}},"automata":{"cache":{"enabled":"true","size":10000,"ttl":"48h"},"max_determinized_states":100000},"dls":{"bitset":{"cache":{"size":"10%","ttl":"2h"}}},"dls_fls":{"enabled":"true"},"enabled":"true","encryption":{"algorithm":"AES/CTR/NoPadding"},"encryption_key":{"algorithm":"AES","length":128},"filter":{"always_allow_bound_address":"true"},"fips_mode":{"enabled":"false"},"http":{"filter":{"allow":[],"deny":[],"enabled":"true"},"ssl":{"enabled":"false"}},"ssl":{"diagnose":{"trust":"true"}},"transport":{"filter":{"allow":[],"deny":[],"enabled":"true"},"ssl":{"enabled":"false"}},"user":null},"slm":{"enabled":"true"},"sql":{"enabled":"true"},"transform":{"enabled":"true","num_transform_failure_retries":10},"vectors":{"enabled":"true"},"watcher":{"actions":{"bulk":{"default_timeout":""},"index":{"default_timeout":""}},"bulk":{"actions":1,"concurrent_requests":0,"flush_interval":"1s","size":"1mb"},"enabled":"true","encrypt_sensitive_data":"false","execution":{"default_throttle_period":"5s","scroll":{"size":0,"timeout":""}},"history":{"cleaner_service":{"enabled":"true"}},"index":{"rest":{"direct_access":""}},"input":{"search":{"default_timeout":""}},"internal":{"ops":{"bulk":{"default_timeout":""},"index":{"default_timeout":""},"search":{"default_timeout":""}}},"stop":{"timeout":"30s"},"thread_pool":{"queue_size":1000,"size":10},"transform":{"search":{"default_timeout":""}},"trigger":{"schedule":{"ticker":{"tick_interval":"500ms"}}},"watch":{"scroll":{"size":0}}}}},"persistent":[],"transient":[]}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 171' -H 'Connection: keep-alive' -d '{"sort":[{"task.runAt":"asc"},{"_id":"desc"}],"query":{"bool":{"must":[{"term":{"type":"task"}},{"bool":{"filter":{"term":{"_id":"task:oss_telemetry-vis_telemetry"}}}}]}}}' 'localhost:9308/.kibana_task_manager/_search?ignore_unavailable=true'
––– output –––
- {"_shards":{"failed":0,"skipped":0,"successful":1,"total":1},"hits":{"hits":[],"max_score":0,"total":0,"total_relation":"eq"},"status":200,"timed_out":false,"took":0}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 330' -H 'Connection: keep-alive' -d '{"task":{"taskType":"vis_telemetry","state":"{\"stats\":{},\"runs\":0}","params":"{}","attempts":0,"scheduledAt":"2025-04-16T12:07:00.161Z","startedAt":null,"retryAt":null,"runAt":"2025-04-16T12:07:00.161Z","status":"idle"},"type":"task","references":[],"migrationVersion":{"task":"7.6.0"},"updated_at":"2025-04-16T12:07:00.161Z"}' 'localhost:9308/.kibana_task_manager/_create/task%3Aoss_telemetry-vis_telemetry?refresh=false'
––– output –––
- {"_id":"task:oss_telemetry-vis_telemetry","_index":".kibana_task_manager_1","_primary_term":1,"_seq_no":0,"_shards":{"failed":0,"successful":1,"total":1},"_type":"_doc","_version":1,"result":"created"}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 370' -H 'Connection: keep-alive' -d '{"task":{"taskType":"lens_telemetry","state":"{\"byDate\":{},\"suggestionsByDate\":{},\"saved\":{},\"runs\":0}","params":"{}","attempts":0,"scheduledAt":"2025-04-16T12:07:00.161Z","startedAt":null,"retryAt":null,"runAt":"2025-04-16T12:07:00.161Z","status":"idle"},"type":"task","references":[],"migrationVersion":{"task":"7.6.0"},"updated_at":"2025-04-16T12:07:00.161Z"}' 'localhost:9308/.kibana_task_manager/_create/task%3ALens-lens_telemetry?refresh=false'
––– output –––
- {"_id":"task:Lens-lens_telemetry","_index":".kibana_task_manager_1","_primary_term":1,"_seq_no":0,"_shards":{"failed":0,"successful":1,"total":1},"_type":"_doc","_version":1,"result":"created"}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 1942' -H 'Connection: keep-alive' -d '{"query":{"bool":{"must":[{"term":{"type":"task"}},{"bool":{"must":[{"bool":{"should":[{"bool":{"must":[{"term":{"task.status":"idle"}},{"range":{"task.runAt":{"lte":"now"}}}]}},{"bool":{"must":[{"bool":{"should":[{"term":{"task.status":"running"}},{"term":{"task.status":"claiming"}}]}},{"range":{"task.retryAt":{"lte":"now"}}}]}}]}},{"bool":{"should":[{"exists":{"field":"task.schedule"}},{"bool":{"must":[{"term":{"task.taskType":"actions:.server-log"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.slack"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.email"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.index"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.pagerduty"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.webhook"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"alerting:siem.signals"}},{"range":{"task.attempts":{"lt":3}}}]}},{"bool":{"must":[{"term":{"task.taskType":"vis_telemetry"}},{"range":{"task.attempts":{"lt":3}}}]}},{"bool":{"must":[{"term":{"task.taskType":"lens_telemetry"}},{"range":{"task.attempts":{"lt":3}}}]}}]}}]}}]}},"sort":{"_script":{"type":"number","order":"asc","script":{"lang":"painless","source":"\nif (doc['\''task.retryAt'\''].size()!=0) {\n  return doc['\''task.retryAt'\''].value.toInstant().toEpochMilli();\n}\nif (doc['\''task.runAt'\''].size()!=0) {\n  return doc['\''task.runAt'\''].value.toInstant().toEpochMilli();\n}\n    "}}},"seq_no_primary_term":true,"script":{"source":"ctx._source.task.ownerId=params.ownerId; ctx._source.task.status=params.status; ctx._source.task.retryAt=params.retryAt;","lang":"painless","params":{"ownerId":"kibana:ce42b997-a913-4d58-be46-bb1937feedd6","status":"claiming","retryAt":"2025-04-16T12:07:30.419Z"}}}' 'localhost:9308/.kibana_task_manager/_update_by_query?ignore_unavailable=true&refresh=true&max_docs=10&conflicts=proceed'
––– output –––
- {"batches":0,"deleted":0,"failures":[],"noops":0,"requests_per_second":-1,"retries":{"bulk":0,"search":0},"throttled_millis":0,"throttled_until_millis":0,"timed_out":false,"took":0,"total":0,"updated":0,"version_conflicts":0}
––– input –––
curl -s -X GET -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'Content-Length: 0' -H 'Connection: keep-alive' 'localhost:9308/_nodes?filter_path=nodes.*.version%2Cnodes.*.http.publish_address%2Cnodes.*.ip'
––– output –––
- {"nodes":{"#!/[A-Za-z0-9]+/!#":{"http":{"publish_address":"127.0.0.1:9308"},"ip":"127.0.0.1","version":"7.6.0"}}}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 1942' -H 'Connection: keep-alive' -d '{"query":{"bool":{"must":[{"term":{"type":"task"}},{"bool":{"must":[{"bool":{"should":[{"bool":{"must":[{"term":{"task.status":"idle"}},{"range":{"task.runAt":{"lte":"now"}}}]}},{"bool":{"must":[{"bool":{"should":[{"term":{"task.status":"running"}},{"term":{"task.status":"claiming"}}]}},{"range":{"task.retryAt":{"lte":"now"}}}]}}]}},{"bool":{"should":[{"exists":{"field":"task.schedule"}},{"bool":{"must":[{"term":{"task.taskType":"actions:.server-log"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.slack"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.email"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.index"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.pagerduty"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"actions:.webhook"}},{"range":{"task.attempts":{"lt":1}}}]}},{"bool":{"must":[{"term":{"task.taskType":"alerting:siem.signals"}},{"range":{"task.attempts":{"lt":3}}}]}},{"bool":{"must":[{"term":{"task.taskType":"vis_telemetry"}},{"range":{"task.attempts":{"lt":3}}}]}},{"bool":{"must":[{"term":{"task.taskType":"lens_telemetry"}},{"range":{"task.attempts":{"lt":3}}}]}}]}}]}}]}},"sort":{"_script":{"type":"number","order":"asc","script":{"lang":"painless","source":"\nif (doc['\''task.retryAt'\''].size()!=0) {\n  return doc['\''task.retryAt'\''].value.toInstant().toEpochMilli();\n}\nif (doc['\''task.runAt'\''].size()!=0) {\n  return doc['\''task.runAt'\''].value.toInstant().toEpochMilli();\n}\n    "}}},"seq_no_primary_term":true,"script":{"source":"ctx._source.task.ownerId=params.ownerId; ctx._source.task.status=params.status; ctx._source.task.retryAt=params.retryAt;","lang":"painless","params":{"ownerId":"kibana:ce42b997-a913-4d58-be46-bb1937feedd6","status":"claiming","retryAt":"2025-04-16T12:07:30.509Z"}}}' 'localhost:9308/.kibana_task_manager/_update_by_query?ignore_unavailable=true&refresh=true&max_docs=10&conflicts=proceed'
––– output –––
- {"batches":0,"deleted":0,"failures":[],"noops":0,"requests_per_second":-1,"retries":{"bulk":0,"search":0},"throttled_millis":0,"throttled_until_millis":0,"timed_out":false,"took":0,"total":0,"updated":0,"version_conflicts":0}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 64' -H 'Connection: keep-alive' -d '{"query":{"bool":{"filter":{"term":{"type":"canvas-workpad"}}}}}' 'localhost:9308/.kibana/_search?size=10000&ignore_unavailable=true&filter_path=hits.hits._source.canvas-workpad%2C-hits.hits._source.canvas-workpad.assets'
––– output –––
- {"_shards":{"failed":0,"skipped":0,"successful":1,"total":1},"hits":{"hits":[],"max_score":0,"total":0,"total_relation":"eq"},"status":200,"timed_out":false,"took":0}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 64' -H 'Connection: keep-alive' -d '{"query":{"bool":{"filter":{"term":{"type":"canvas-element"}}}}}' 'localhost:9308/.kibana/_search?size=10000&ignore_unavailable=true&filter_path=hits.hits._source.canvas-element.content'
––– output –––
- {"_shards":{"failed":0,"skipped":0,"successful":1,"total":1},"hits":{"hits":[],"max_score":0,"total":0,"total_relation":"eq"},"status":200,"timed_out":false,"took":0}
––– input –––
curl -s -X POST -H 'Authorization: Basic ZWxhc3RpYzpwYXNz' -H 'content-type: application/json' -H 'Content-Length: 374' -H 'Connection: keep-alive' -d '{"seq_no_primary_term":true,"_source":{"excludes":["output.content"]},"query":{"bool":{"filter":{"bool":{"minimum_should_match":1,"should":[{"term":{"status":"pending"}},{"bool":{"must":[{"term":{"status":"processing"}},{"range":{"process_expiration":{"lte":"2025-04-16T12:07:03.101Z"}}}]}}]}}}},"sort":[{"priority":{"order":"asc"}},{"created_at":{"order":"asc"}}],"size":1}' 'localhost:9308/.reporting-*/_search'
––– output –––
- {
-   "took": 0,
-   "timed_out": false,
-   "_shards": {
-     "total": 0,
-     "successful": 0,
-     "skipped": 0,
-     "failed": 0
-   },
-   "hits": {
-     "total": {
-       "value": 0,
-       "relation": "eq"
-     },
-     "max_score": 0,
-     "hits": []
-   }
- }
test/clt-tests/kibana/test-parameter-for-installing-the-kibana-version.rec
––– input –––
echo -e "searchd {\n  listen = 9306:mysql\n  listen = 9312\n  listen = 9308:http\n  log = /var/log/manticore/searchd.log\n  query_log = /var/log/manticore/query.log\n  pid_file = /var/run/manticore/searchd.pid\n  kibana_version_string = 7.10.2\n}" > /tmp/manticore.conf; echo $?
––– output –––
OK
––– input –––
pkill -9 searchd; stdbuf -oL searchd -c /tmp/manticore.conf > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "SHOW SETTINGS;" | grep -i "kibana_version_string"
––– output –––
- | searchd.kibana_version_string | 7.10.2                         |
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
echo -e "searchd {\n  listen = 9306:mysql\n  listen = 9312\n  listen = 9308:http\n  log = /var/log/manticore/searchd.log\n  query_log = /var/log/manticore/query.log\n  pid_file = /var/run/manticore/searchd.pid\n  kibana_version_string = 8.17.4\n}" > /tmp/manticore.conf; echo $?
––– output –––
OK
––– input –––
pkill -9 searchd; stdbuf -oL searchd -c /tmp/manticore.conf > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "SHOW SETTINGS;" | grep -i "kibana_version_string"
––– output –––
- | searchd.kibana_version_string | 8.17.4                         |
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
echo -e "searchd {\n  listen = 9306:mysql\n  listen = 9312\n  listen = 9308:http\n  log = /var/log/manticore/searchd.log\n  query_log = /var/log/manticore/query.log\n  pid_file = /var/run/manticore/searchd.pid\n  kibana_version_string = \n}" > /tmp/manticore.conf; echo $?
––– output –––
OK
––– input –––
pkill -9 searchd; stdbuf -oL searchd -c /tmp/manticore.conf > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "SHOW SETTINGS;" | grep -i "kibana_version_string"
––– output –––
- | searchd.kibana_version_string |                                |
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/plugins/
✅ OK: 0
❌ Failed: 1
⏳ Duration: 10s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/plugins/test-enable-disable-buddy-plugin.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
mysql -h0 -P9306 -e "SHOW QUERIES\G"|grep "1. row"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "DISABLE BUDDY PLUGIN manticoresoftware/buddy-plugin-show"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SHOW QUERIES"
––– output –––
- ERROR 1064 (42000) at line 1: Plugin 'show' is disabled
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "ENABLE BUDDY PLUGIN manticoresoftware/buddy-plugin-show"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SHOW QUERIES\G"|grep "1. row"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "create table t (id bigint, vector float_vector knn_type='hnsw' knn_dims='4' hnsw_similarity='l2')"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "select id, knn_dist() from t where knn ( image_vector, 5, 1 );"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "DISABLE BUDDY PLUGIN manticoresoftware/buddy-plugin-knn"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "select id, knn_dist() from t where knn ( image_vector, 5, 1 );"
––– output –––
- ERROR 1064 (42000) at line 1: Plugin 'knn' is disabled
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "ENABLE BUDDY PLUGIN manticoresoftware/buddy-plugin-knn"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "select id, knn_dist() from t where knn ( image_vector, 5, 1 );"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/http-interface/
✅ OK: 0
❌ Failed: 6
⏳ Duration: 17s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/http-interface/multi-query.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
apt-get install jq -y > /dev/null; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT, value_attr STRING) min_infix_len = '3' min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example', 'example'), (2, 'test', 'test'), (3, 'sample', 'sample');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s "http://localhost:9308/cli?select%20*%20from%20t%20limit%201;show%20tables" | grep -v 'row in set'
––– output –––
- +----+---------+------------+
- | id | value   | value_attr |
- +----+---------+------------+
- | 1  | example | example    |
- +----+---------+------------+
––– input –––
curl -s "http://localhost:9308/cli?select%20*%20from%20t%20where%20match('test');show%20meta" | grep -v 'row\|rows'
––– output –––
- +----+-------+------------+
- | id | value | value_attr |
- +----+-------+------------+
- | 2  | test  | test       |
- +----+-------+------------+
- +----------------+-------+
- | Variable_name  | Value |
- +----------------+-------+
- | total          | 1     |
- | total_found    | 1     |
- | total_relation | eq    |
- | time           | 0.000 |
- | keyword[0]     | test  |
- | docs[0]        | 1     |
- | hits[0]        | 1     |
- +----------------+-------+
––– input –––
curl -s "http://localhost:9308/cli_json?select%20*%20from%20t%20limit%201;show%20tables" | grep -v 'row in set'
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],
- "data":[
- {"id":1,"value":"example","value_attr":"example"}
- ],
- "total":1,
- "error":"",
- "warning":""
- }]
––– input –––
curl -s "http://localhost:9308/cli_json?select%20*%20from%20t%20where%20match('test');show%20meta"
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],
- "data":[
- {"id":2,"value":"test","value_attr":"test"}
- ],
- "total":1,
- "error":"",
- "warning":""
- },
- {
- "columns":[{"Variable_name":{"type":"string"}},{"Value":{"type":"string"}}],
- "data":[
- {"Variable_name":"total","Value":"1"},
- {"Variable_name":"total_found","Value":"1"},
- {"Variable_name":"total_relation","Value":"eq"},
- {"Variable_name":"time","Value":"0.000"},
- {"Variable_name":"keyword[0]","Value":"test"},
- {"Variable_name":"docs[0]","Value":"1"},
- {"Variable_name":"hits[0]","Value":"1"}
- ],
- "total":7,
- "error":"",
- "warning":""
- }]
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select * from t limit 1;show tables"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select * from t where match('test');show meta"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "select * from t limit 1;show tables"
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],
- "data":[
- {"id":1,"value":"example","value_attr":"example"}
- ],
- "total":1,
- "error":"",
- "warning":""
- }]
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "select * from t where match('test');show meta"
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],
- "data":[
- {"id":2,"value":"test","value_attr":"test"}
- ],
- "total":1,
- "error":"",
- "warning":""
- },
- {
- "columns":[{"Variable_name":{"type":"string"}},{"Value":{"type":"string"}}],
- "data":[
- {"Variable_name":"total","Value":"1"},
- {"Variable_name":"total_found","Value":"1"},
- {"Variable_name":"total_relation","Value":"eq"},
- {"Variable_name":"time","Value":"0.000"},
- {"Variable_name":"keyword[0]","Value":"test"},
- {"Variable_name":"docs[0]","Value":"1"},
- {"Variable_name":"hits[0]","Value":"1"}
- ],
- "total":7,
- "error":"",
- "warning":""
- }]
test/clt-tests/http-interface/error-handling.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT) min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example'), (2, 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s "http://localhost:9308/cli_json" -d "SELEKT * FROM t"; echo
––– output –––
- {"error":"P02: syntax error, unexpected identifier near 'SELEKT * FROM t'"}
––– input –––
curl -s "http://localhost:9308/cli_json" -d "SELECT * FROM nonexistent_table"; echo
––– output –––
- {"error":"unknown local table(s) 'nonexistent_table' in search request"}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "SELECT * FROM t; SHOW META"; echo
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s "http://localhost:9308/cli_json" -d "DESCRIBE t; SELECT * FROM t" | awk '!/row.*in set/'; echo
––– output –––
- {"error":"P01: syntax error, unexpected ';' near '; SELECT * FROM '"}
––– input –––
curl -s "http://localhost:9308/cli_json" -d "SELECT * FROM t WHERE MATCH('@value \!@#$%')"; echo
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}}],
- "data":[
- ],
- "total":0,
- "error":"",
- "warning":""
- }]
––– input –––
curl -s "http://localhost:9308/cli_json" -d "SELECT * FROM t ORDER BY unknown_column"; echo
––– output –––
- {"error":"table t: sort-by attribute 'unknown_column' not found"}
––– input –––
curl -s "http://localhost:9308/cli_json" -d "SELECT * FROM t LIMIT -5"; echo
––– output –––
- {"error":"limit out of bounds (limit=-5)"}
––– input –––
curl -s "http://localhost:9308/cli_json" -d "UPDATE t SET value='new_value' WHERE id=1"; echo
––– output –––
- {"error":"table t: attribute 'value' not found"}
test/clt-tests/http-interface/sql-endpoint.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT, value_attr STRING) min_infix_len = '3' min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example', 'example'), (2, 'test', 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select * from t limit 1"
––– output –––
- {"took":%{NUMBER},"timed_out":false,"hits":{"total":%{NUMBER},"total_relation":"gte","hits":[{"_id":1,"_score":%{NUMBER},"_source":{"value":"example","value_attr":"example"}}]}}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select * from t where match('test')"
––– output –––
- {"took":%{NUMBER},"timed_out":false,"hits":{"total":%{NUMBER},"total_relation":"eq","hits":[{"_id":2,"_score":%{NUMBER},"_source":{"value":"test","value_attr":"test"}}]}}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select count(*) from t"
––– output –––
- {"took":%{NUMBER},"timed_out":false,"hits":{"total":%{NUMBER},"total_relation":"gte","hits":[{"_score":%{NUMBER},"_source":{"count(*)":2}}]}}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "select * from t where match('exmaple') option fuzzy=1"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "create table t_copy like t"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "show tables"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s -X POST "http://localhost:9308/sql" -d "insert into t values (3, 'new', 'new')"
––– output –––
- {"error":"only SELECT queries are supported"}
––– input –––
curl -s "http://localhost:9308/sql?query=select%20count(*)%20from%20t"
––– output –––
- {"took":%{NUMBER},"timed_out":false,"hits":{"total":%{NUMBER},"total_relation":"gte","hits":[{"_score":1,"_source":{"count(*)":2}}]}}
test/clt-tests/http-interface/cli-endpoint.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT, value_attr STRING) min_infix_len = '3' min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example', 'example'), (2, 'test', 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s "http://localhost:9308/cli?show%20version" | grep -v 'rows in set' | head -n 4
––– output –––
- %{TABLE_LINE}
- %{TABLE_ROW}
- %{TABLE_LINE}
- %{TABLE_ROW}
––– input –––
curl -s "http://localhost:9308/cli?show%20buddy%20plugins" | grep -v 'rows in set' | head -n 4
––– output –––
- %{TABLE_LINE}
- %{TABLE_ROW}
- %{TABLE_LINE}
- %{TABLE_ROW}
––– input –––
curl -s "http://localhost:9308/cli?select%20*%20from%20t%20where%20match('exmaple')%20option%20fuzzy=1" | grep -v 'row in set'
––– output –––
- +----+---------+------------+
- | id | value   | value_attr |
- +----+---------+------------+
- | 1  | example | example    |
- +----+---------+------------+
––– input –––
curl -s "http://localhost:9308/cli?show%20fields%20from%20t" | grep -v 'rows in set'
––– output –––
- +------------+--------+------+-----+---------+-------+
- | Field      | Type   | Null | Key | Default | Extra |
- +------------+--------+------+-----+---------+-------+
- | id         | bigint | NO   |     |         |       |
- | value      | text   | NO   |     |         |       |
- | value_attr | string | NO   |     |         |       |
- +------------+--------+------+-----+---------+-------+
––– input –––
curl -s "http://localhost:9308/cli?show%20full%20tables" | grep -v 'row in set'
––– output –––
- +---------------------+------------+
- | Tables_in_Manticore | Table_type |
- +---------------------+------------+
- | t                   | BASE TABLE |
- +---------------------+------------+
––– input –––
curl -s "http://localhost:9308/cli?create%20table%20t_copy%20like%20t" > /dev/null; echo $?
––– output –––
- 0
+ 7
––– input –––
curl -s "http://localhost:9308/cli?insert%20into%20auto_created%20(id,%20value)%20values%20(10,%20'abc')" > /dev/null; echo $?
––– output –––
- 0
+ 7
––– input –––
curl -s "http://localhost:9308/cli?alter%20table%20t%20add%20column%20extra_field%20int" > /dev/null; echo $?
––– output –––
- 0
+ 7
––– input –––
curl -s "http://localhost:9308/cli?replace%20into%20t%20(id,%20value)%20values%20(1,%20'replaced_value')" > /dev/null; echo $?
––– output –––
- 0
+ 7
––– input –––
curl -s "http://localhost:9308/cli?select%20*%20from%20t%20limit%201" | grep -v 'row in set'
––– output –––
- +----+-------+------------+-------------+
- | id | value | value_attr | extra_field |
- +----+-------+------------+-------------+
- | %{NUMBER}  | %{PATH}  | %{PATH}       | %{NUMBER}           |
- +----+-------+------------+-------------+
test/clt-tests/http-interface/sql-mode-raw-endpoint.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
apt-get install jq -y > /dev/null; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT, value_attr STRING) min_infix_len = '3' min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example', 'example'), (2, 'test', 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "show version" | jq '.[0].data'
––– output –––
- [
-   {
-     "Component": "Daemon",
-     "Version": "%{VERSION}"
-   },
-   {
-     "Component": "Columnar",
-     "Version": "columnar %{VERSION}"
-   },
-   {
-     "Component": "Secondary",
-     "Version": "secondary %{VERSION}"
-   },
-   {
-     "Component": "Knn",
-     "Version": "knn %{VERSION}"
-   },
-   {
-     "Component": "Embeddings",
-     "Version": "embeddings %{VERSION}"
-   },
-   {
-     "Component": "Buddy",
-     "Version": "buddy %{VERSION}"
-   }
- ]
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "show buddy plugins" | jq '.[0].data | .[0:3] | .[] | {Plugin, Type, Info}'
––– output –––
- {
-   "Plugin": "empty-string",
-   "Type": "core",
-   "Info": "Handles empty queries, which can occur when trimming comments or dealing with specific SQL protocol instructions in comments that are not supported"
- }
- {
-   "Plugin": "backup",
-   "Type": "core",
-   "Info": "BACKUP sql statement"
- }
- {
-   "Plugin": "emulate-elastic",
-   "Type": "core",
-   "Info": "Emulates some Elastic queries and generates responses as if they were made by ES"
- }
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "select * from t where match('exmaple') option fuzzy=1" | jq '.[0].data'
––– output –––
- [
-   {
-     "id": 1,
-     "value": "example",
-     "value_attr": "example"
-   }
- ]
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "show fields from t" | jq '.[0].data'
––– output –––
- [
-   {
-     "Field": "id",
-     "Type": "bigint",
-     "Null": "NO",
-     "Key": "",
-     "Default": "",
-     "Extra": ""
-   },
-   {
-     "Field": "value",
-     "Type": "text",
-     "Null": "NO",
-     "Key": "",
-     "Default": "",
-     "Extra": ""
-   },
-   {
-     "Field": "value_attr",
-     "Type": "string",
-     "Null": "NO",
-     "Key": "",
-     "Default": "",
-     "Extra": ""
-   }
- ]
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "create table t_copy like t" | jq '.[0] | {total, error, warning}'
––– output –––
- {
-   "total": 0,
-   "error": "",
-   "warning": ""
- }
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "show full tables" | jq '.[0].data'
––– output –––
- [
-   {
-     "Tables_in_Manticore": "t",
-     "Table_type": "BASE TABLE"
-   },
-   {
-     "Tables_in_Manticore": "t_copy",
-     "Table_type": "BASE TABLE"
-   }
- ]
––– input –––
curl -s -X POST "http://localhost:9308/sql?mode=raw" -d "select * from t limit 1" | jq '.[0].data'
––– output –––
- [
-   {
-     "id": 1,
-     "value": "example",
-     "value_attr": "example"
-   }
- ]
––– input –––
curl -s "http://localhost:9308/sql?mode=raw&query=select%20count(*)%20from%20t" | jq '.[0].data'
––– output –––
- [
-   {
-     "count(*)": 2
-   }
- ]
test/clt-tests/http-interface/cli-json-endpoint.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE t (id INT, value TEXT, value_attr STRING) min_infix_len = '3' min_prefix_len = '3'; INSERT INTO t VALUES (1, 'example', 'example'), (2, 'test', 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
curl -s "http://localhost:9308/cli_json?show%20version"
––– output –––
- [{"total":%{NUMBER},"error":"","warning":"","columns":[{"Component":{"type":"string"}},{"Version":{"type":"string"}}],"data":[{"Component":"Daemon","Version":"%{VERSION}"},{"Component":"Columnar","Version":"columnar %{VERSION}"},{"Component":"Secondary","Version":"secondary %{VERSION}"},{"Component":"Knn","Version":"knn %{VERSION}"},{"Component":"Embeddings","Version":"embeddings %{VERSION}"},{"Component":"Buddy","Version":"buddy %{VERSION}"}]}]
––– input –––
curl -s "http://localhost:9308/cli_json?show%20buddy%20plugins"
––– output –––
- [{"total":27,"error":"","warning":"","columns":[{"Package":{"type":"string"}},{"Plugin":{"type":"string"}},{"Version":{"type":"string"}},{"Type":{"type":"string"}},{"Info":{"type":"string"}}],"data":[{"Package":"manticoresoftware/buddy-plugin-empty-string","Plugin":"empty-string","Version":"%{VERSION}","Type":"core","Info":"Handles empty queries, which can occur when trimming comments or dealing with specific SQL protocol instructions in comments that are not supported"},{"Package":"manticoresoftware/buddy-plugin-backup","Plugin":"backup","Version":"%{VERSION}","Type":"core","Info":"BACKUP sql statement"},{"Package":"manticoresoftware/buddy-plugin-emulate-elastic","Plugin":"emulate-elastic","Version":"%{VERSION}","Type":"core","Info":"Emulates some Elastic queries and generates responses as if they were made by ES"},{"Package":"manticoresoftware/buddy-plugin-fuzzy","Plugin":"fuzzy","Version":"%{VERSION}","Type":"core","Info":"Fuzzy search plugin. It helps to find the best match for a given query."},{"Package":"manticoresoftware/buddy-plugin-create-table","Plugin":"create-table","Version":"%{VERSION}","Type":"core","Info":"Enables tables copying; handles CREATE TABLE statements with MySQL options not supported by Manticore"},{"Package":"manticoresoftware/buddy-plugin-create-cluster","Plugin":"create-cluster","Version":"%{VERSION}","Type":"core","Info":"Enable CREATE CLUSTER IF NOT EXISTS statements"},{"Package":"manticoresoftware/buddy-plugin-drop","Plugin":"drop","Version":"%{VERSION}","Type":"core","Info":"Handles DROP statements with MySQL options not supported by Manticore"},{"Package":"manticoresoftware/buddy-plugin-insert","Plugin":"insert","Version":"%{VERSION}","Type":"core","Info":"Auto schema support. When an insert operation is performed and the table does not exist, it creates it with data types auto-detection"},{"Package":"manticoresoftware/buddy-plugin-alias","Plugin":"alias","Version":"%{VERSION}","Type":"core","Info":""},{"Package":"manticoresoftware/buddy-plugin-select","Plugin":"select","Version":"%{VERSION}","Type":"core","Info":"Various SELECTs handlers needed for mysqldump and other software support, mostly aiming to work similarly to MySQL"},{"Package":"manticoresoftware/buddy-plugin-show","Plugin":"show","Version":"%{VERSION}","Type":"core","Info":"Various \"show\" queries handlers, for example, `show queries`, `show fields`, `show full tables`, etc"},{"Package":"manticoresoftware/buddy-plugin-plugin","Plugin":"plugin","Version":"%{VERSION}","Type":"core","Info":"Core logic for plugin support and helpers. Also handles `create buddy plugin`, `delete buddy plugin`, and `show buddy plugins`"},{"Package":"manticoresoftware/buddy-plugin-test","Plugin":"test","Version":"%{VERSION}","Type":"core","Info":"Test plugin, used exclusively for tests"},{"Package":"manticoresoftware/buddy-plugin-alter-column","Plugin":"alter-column","Version":"%{VERSION}","Type":"core","Info":"Enables adding/dropping table fields(columns)"},{"Package":"manticoresoftware/buddy-plugin-alter-distributed-table","Plugin":"alter-distributed-table","Version":"%{VERSION}","Type":"core","Info":"Enables alter for distributed tables"},{"Package":"manticoresoftware/buddy-plugin-alter-rename-table","Plugin":"alter-rename-table","Version":"%{VERSION}","Type":"core","Info":"Enables alter table rename"},{"Package":"manticoresoftware/buddy-plugin-modify-table","Plugin":"modify-table","Version":"%{VERSION}","Type":"core","Info":"Assists in standardizing options in create and alter table statements to show option=1 for integers."},{"Package":"manticoresoftware/buddy-plugin-knn","Plugin":"knn","Version":"%{VERSION}","Type":"core","Info":"Enables KNN by document id"},{"Package":"manticoresoftware/buddy-plugin-replace","Plugin":"replace","Version":"%{VERSION}","Type":"core","Info":"Enables partial replaces"},{"Package":"manticoresoftware/buddy-plugin-queue","Plugin":"queue","Version":"%{VERSION}","Type":"core","Info":""},{"Package":"manticoresoftware/buddy-plugin-sharding","Plugin":"sharding","Version":"%{VERSION}","Type":"core","Info":"Enables sharded tables."},{"Package":"manticoresoftware/buddy-plugin-update","Plugin":"update","Version":"%{VERSION}","Type":"core","Info":"Handles UPDATE statements sent by MySQL tools making possible for them to update full-text fields"},{"Package":"manticoresoftware/buddy-plugin-autocomplete","Plugin":"autocomplete","Version":"%{VERSION}","Type":"core","Info":"Autocomplete plugin that offers suggestions based on the starting query"},{"Package":"manticoresoftware/buddy-plugin-cli-table","Plugin":"cli-table","Version":"%{VERSION}","Type":"core","Info":"/cli endpoint based on /cli_json - outputs query result as a table"},{"Package":"manticoresoftware/buddy-plugin-distributed-insert","Plugin":"distributed-insert","Version":"%{VERSION}","Type":"core","Info":"The plugin enables data insertion into distributed sharded tables."},{"Package":"manticoresoftware/buddy-plugin-truncate","Plugin":"truncate","Version":"%{VERSION}","Type":"core","Info":"Handles TRUNCATE statements on distributed tables"},{"Package":"manticoresoftware/buddy-plugin-metrics","Plugin":"metrics","Version":"%{VERSION}","Type":"core","Info":"Returns Prometheus metrics"}]}]
––– input –––
curl -s "http://localhost:9308/cli_json?select%20*%20from%20t%20where%20match('exmaple')%20option%20fuzzy=1"
––– output –––
- [{"total":1,"error":"","warning":"","columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],"data":[{"id":1,"value":"example","value_attr":"example"}]}]
––– input –––
curl -s "http://localhost:9308/cli_json?show%20fields%20from%20t"
––– output –––
- [{
- "columns":[{"Field":{"type":"string"}},{"Type":{"type":"string"}},{"Null":{"type":"string"}},{"Key":{"type":"string"}},{"Default":{"type":"string"}},{"Extra":{"type":"string"}}],
- "data":[
- {"Field":"id","Type":"bigint","Null":"NO","Key":"","Default":"","Extra":""},
- {"Field":"value","Type":"text","Null":"NO","Key":"","Default":"","Extra":""},
- {"Field":"value_attr","Type":"string","Null":"NO","Key":"","Default":"","Extra":""}
- ],
- "total":3,
- "error":"",
- "warning":""
- }]
––– input –––
curl -s "http://localhost:9308/cli_json?create%20table%20t_copy2%20like%20t"
––– output –––
- [{"total":0,"error":"","warning":""}]
––– input –––
curl -s "http://localhost:9308/cli_json?select%20*%20from%20t%20limit%201"
––– output –––
- [{
- "columns":[{"id":{"type":"long long"}},{"value":{"type":"string"}},{"value_attr":{"type":"string"}}],
- "data":[
- {"id":1,"value":"example","value_attr":"example"}
- ],
- "total":1,
- "error":"",
- "warning":""
- }]

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/indexer/
✅ OK: 0
❌ Failed: 2
⏳ Duration: 12s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/indexer/test-max-iosize.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
for n in $(seq 1 10000); do echo "$n,abc"; done > /tmp/csv
––– output –––
OK
––– input –––
echo -e 'indexer {\n    max_iops = 100\n}\nsource src {\n    type = csvpipe\n    csvpipe_command = cat /tmp/csv\n    csvpipe_field = f\n}\n\nindex idx {\n    type = plain\n    source = src\n    path = /tmp/idx\n}' > plain_min.conf
––– output –––
OK
––– input –––
cat plain_min.conf
––– output –––
OK
––– input –––
indexer -c plain_min.conf idx|grep reads|awk '{print $2}'
––– output –––
OK
test/clt-tests/indexer/test-max-iops.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
(for n in `seq 1 100`; do echo "$n,abc"; done) > /tmp/csv
––– output –––
OK
––– input –––
echo -e 'indexer {\n    max_iops = 100\n}\nsource src {\n    type = csvpipe\n    csvpipe_command = cat /tmp/csv\n    csvpipe_field = f\n}\n\nindex idx {\n    type = plain\n    source = src\n    path = /tmp/idx\n}' > plain_min.conf
––– output –––
OK
––– input –––
cat plain_min.conf
––– output –––
OK
––– input –––
indexer -c plain_min.conf idx|grep reads|awk '{print $2}'
––– output –––
OK

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/optimisation-and-update/
✅ OK: 0
❌ Failed: 1
⏳ Duration: 22s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/optimisation-and-update/test-optimisation-and-update.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
apt-get update -y > /dev/null; echo $?
––– output –––
OK
––– input –––
apt-get install -y bc > /dev/null; echo $?
––– output –––
OK
––– input –––
chmod +x ./test/clt-tests/scripts/load_names_attr.php > /dev/null; echo $?
––– output –––
OK
––– input –––
php -d memory_limit=2G ./test/clt-tests/scripts/load_names_attr.php --batch-size=100000 --concurrency=4 --docs=2000000 --start-id=1 --drop-table > /dev/null; echo $?
––– output –––
- 0
+ 255
––– input –––
mysql -h0 -P9306 -e "FLUSH RAMCHUNK name;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "OPTIMIZE TABLE name OPTION sync=1, cutoff=2;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
sleep 1 && mysql -h0 -P9306 -e "show table name status like '%chunk%';"
––– output –––
- +--------------------------+-------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Variable_name            | Value |
- +--------------------------+-------+
- | ram_chunk                | 0     |
- | ram_chunk_segments_count | 0     |
- | disk_chunks              | 2     |
- +--------------------------+-------+
––– input –––
mysql -h0 -P9306 -e "SELECT COUNT(*) FROM name;"
––– output –––
- +----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | count(*) |
- +----------+
- |  2000000 |
- +----------+
––– input –––
php -d memory_limit=2G ./test/clt-tests/scripts/load_names_attr.php --batch-size=100000 --concurrency=4 --docs=2000000 --start-id=2000001 --no-drop-table > /dev/null; echo $?
––– output –––
- 0
+ 255
––– input –––
mysql -h0 -P9306 -e "FLUSH RAMCHUNK name;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "OPTIMIZE TABLE name OPTION sync=1, cutoff=2;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
sleep 5 && mysql -h0 -P9306 -e "show table name status like '%chunk%';"
––– output –––
- +--------------------------+-------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Variable_name            | Value |
- +--------------------------+-------+
- | ram_chunk                | 0     |
- | ram_chunk_segments_count | 0     |
- | disk_chunks              | 2     |
- +--------------------------+-------+
––– input –––
mysql -h0 -P9306 -e "SELECT COUNT(*) FROM name;"
––– output –––
- +----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | count(*) |
- +----------+
- |  4000000 |
- +----------+
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; (stdbuf -oL searchd 2>&1 | tee /var/log/manticore/searchd.log | grep -i precach & disown); sleep 0.5; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
- precaching table 'name'
+ stdbuf: failed to run command ‘searchd’: No such file or directory
- precached 1 tables in #!/[0-9]{1}.[0-9]{3}/!# sec
+ tee: /var/log/manticore/searchd.log: No such file or directory
- Buddy started!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "SHOW TABLES;"
––– output –––
- +-------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Table | Type |
- +-------+------+
- | name  | rt   |
- +-------+------+
––– input –––
mysql -h0 -P9306 -e "show table name status like '%chunk%';"
––– output –––
- +--------------------------+-------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Variable_name            | Value |
- +--------------------------+-------+
- | ram_chunk                | 0     |
- | ram_chunk_segments_count | 0     |
- | disk_chunks              | 2     |
- +--------------------------+-------+
––– input –––
mysql -h0 -P9306 -e "select * from name ORDER BY id ASC LIMIT 5;"
––– output –––
- +------+------------------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | username         | s    |
- +------+------------------+------+
- |    1 | CIRA HINOJOSA    | a    |
- |    2 | DENICE HATTON    | a    |
- |    3 | JOAQUIN FOLEY    | a    |
- |    4 | REBEKAH CARLISLE | a    |
- |    5 | EVE GUAJARDO     | a    |
- +------+------------------+------+
––– input –––
start_optimize=$(date +%s); time mysql -h0 -P9306 -e "OPTIMIZE TABLE name OPTION sync=1, cutoff=1;" &
––– output –––
OK
––– input –––
sleep 2 && start_update=$(date +%s); time_taken_update=$( { time mysql -h0 -P9306 -e "UPDATE name SET s='b' WHERE id=1;" > /dev/null 2>&1; } 2>&1 | grep real | awk '{print $2}'); update_duration=$(echo "$time_taken_update" | awk -F'm' '{print ($1 * 60) + $2}'); if (( $(echo "$update_duration > 1" | bc -l) )); then echo "FAIL: Update took longer than 1 second!"; exit 1; else echo "Update completed within acceptable time."; fi
––– output –––
- Update completed within acceptable time.
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
+ real	0m0.004s
+ user	0m0.000s
+ sys	0m0.004s
+ Update completed within acceptable time.
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM name WHERE s='b' ORDER BY id ASC LIMIT 5;"
––– output –––
- +------+---------------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | username      | s    |
- +------+---------------+------+
- |    1 | CIRA HINOJOSA | b    |
- +------+---------------+------+
––– input –––
start_update=$(date +%s); time_taken_update=$( { time mysql -h0 -P9306 -e "UPDATE name SET s=123 WHERE id=1;" > /dev/null 2>&1; } 2>&1 | grep real | awk '{print $2}'); update_duration=$(echo "$time_taken_update" | awk -F'm' '{print ($1 * 60) + $2}'); if (( $(echo "$update_duration > 1" | bc -l) )); then echo "FAIL: Update took longer than 1 second!"; exit 1; else echo "Update completed within acceptable time."; fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM name WHERE s='b' ORDER BY id ASC LIMIT 5;"
––– output –––
- +------+---------------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | username      | s    |
- +------+---------------+------+
- |    1 | CIRA HINOJOSA | b    |
- +------+---------------+------+
––– input –––
start_update=$(date +%s); time_taken_update=$( { time mysql -h0 -P9306 -e "UPDATE name SET s='b' WHERE id > 0;" > /dev/null 2>&1; } 2>&1 | grep real | awk '{print $2}'); update_duration=$(echo "$time_taken_update" | awk -F'm' '{print ($1 * 60) + $2}'); if (( $(echo "$update_duration > 3" | bc -l) )); then echo "FAIL: Update took longer than 3 seconds!"; false; else echo "Update completed within acceptable time."; fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM name WHERE s='b' ORDER BY id ASC LIMIT 5;"
––– output –––
- +------+------------------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | username         | s    |
- +------+------------------+------+
- |    1 | CIRA HINOJOSA    | b    |
- |    2 | DENICE HATTON    | b    |
- |    3 | JOAQUIN FOLEY    | b    |
- |    4 | REBEKAH CARLISLE | b    |
- |    5 | EVE GUAJARDO     | b    |
- +------+------------------+------+
––– input –––
start_update=$(date +%s); time_taken_update=$(mysql -h0 -P9306 -e "UPDATE name SET unknown='b' WHERE id=1;" 2>&1); update_duration=$(( $(date +%s) - start_update )); [[ "$time_taken_update" == *"ERROR"* ]] && echo "$time_taken_update"; if (( update_duration <= 1 )); then echo "The command is completed within a reasonable time frame."; else echo "FAIL: Update took longer than 1 second!"; false; fi
––– output –––
- ERROR 1064 (42000) at line 1: table name: attribute 'unknown' not found
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM name WHERE s='b' ORDER BY id ASC LIMIT 5;"
––– output –––
- +------+------------------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | username         | s    |
- +------+------------------+------+
- |    1 | CIRA HINOJOSA    | b    |
- |    2 | DENICE HATTON    | b    |
- |    3 | JOAQUIN FOLEY    | b    |
- |    4 | REBEKAH CARLISLE | b    |
- |    5 | EVE GUAJARDO     | b    |
- +------+------------------+------+
––– input –––
{ command time wait > /dev/null 2>&1; } 2>&1 | grep -v "real" | grep -v "user" | grep -v "sys"; end_optimize=$(date +%s); optimize_duration=$((end_optimize - start_optimize)); echo "OPTIMIZE duration: $optimize_duration seconds"
––– output –––
OK

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/join/
✅ OK: 0
❌ Failed: 2
⏳ Duration: 41s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/join/test-join-query-logging-completeness.rec
––– input –––
export INSTANCE=1
––– output –––
OK
––– input –––
mkdir -p /var/{run,lib,log}/manticore-${INSTANCE}
––– output –––
OK
––– input –––
stdbuf -oL searchd -c test/clt-tests/base/searchd-with-flexible-ports.conf > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore-${INSTANCE}/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore-${INSTANCE}/searchd.log; fi
––– output –––
- Buddy started!
+ tail: cannot open '/var/log/manticore-1/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore-1/searchd.log: No such file or directory
––– input –––
timeout 30 bash -c 'until mysql -h0 -P1306 -e "SELECT 1" 2>/dev/null; do sleep 1; done'; echo $?
––– output –––
- +------+
+ 124
- | 1    |
- +------+
- |    1 |
- +------+
- 0
––– input –––
mysql -h0 -P1306 -e "CREATE TABLE customers (id BIGINT, name TEXT, email TEXT, address TEXT) morphology='stem_en'"; echo $?
––– output –––
- 0
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
+ 1
––– input –––
mysql -h0 -P1306 -e "CREATE TABLE orders (id BIGINT, customer_id BIGINT, product TEXT, quantity INT, details JSON) morphology='stem_en'"; echo $?
––– output –––
- 0
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
+ 1
––– input –––
mysql -h0 -P1306 -e "INSERT INTO customers (id, name, email, address) VALUES (1, 'Alice Johnson', 'alice@example.com', '123 Maple St'), (2, 'Bob Smith', 'bob@example.com', '456 Oak Ave'), (3, 'Carol White', 'carol@example.com', '789 Pine Rd'), (4, 'John Smith', 'john@example.com', '321 Elm St')"; echo $?
––– output –––
- 0
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
+ 1
––– input –––
mysql -h0 -P1306 -e "INSERT INTO orders (id, customer_id, product, quantity, details) VALUES (1, 1, 'Laptop', 1, '{\"price\": 1200, \"warranty\": \"2 years\"}'), (2, 1, 'Tablet', 1, '{\"price\": 300, \"warranty\": \"1 year\"}'), (3, 2, 'Phone', 2, '{\"price\": 800, \"warranty\": \"1 year\"}'), (4, 3, 'Monitor', 1, '{\"price\": 400, \"warranty\": \"3 years\"}')"; echo $?
––– output –––
- 0
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
+ 1
––– input –––
mysql -h0 -P1306 -e "SELECT product, customers.email, customers.name, customers.address FROM orders INNER JOIN customers ON customers.id = orders.customer_id WHERE MATCH('maple', customers) ORDER BY customers.email ASC \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-           product: Laptop
-   customers.email: alice@example.com
-    customers.name: Alice Johnson
- customers.address: 123 Maple St
- *************************** 2. row ***************************
-           product: Tablet
-   customers.email: alice@example.com
-    customers.name: Alice Johnson
- customers.address: 123 Maple St
––– input –––
mysql -h0 -P1306 -e "SELECT name, orders.quantity FROM customers LEFT JOIN orders ON orders.customer_id = customers.id ORDER BY email ASC \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-            name: Alice Johnson
- orders.quantity: 1
- @int_attr_email:
- *************************** 2. row ***************************
-            name: Alice Johnson
- orders.quantity: 1
- @int_attr_email:
- *************************** 3. row ***************************
-            name: Bob Smith
- orders.quantity: 2
- @int_attr_email:
- *************************** 4. row ***************************
-            name: Carol White
- orders.quantity: 1
- @int_attr_email:
- *************************** 5. row ***************************
-            name: John Smith
- orders.quantity: NULL
- @int_attr_email:
––– input –––
mysql -h0 -P1306 -e "SELECT orders.product, name, orders.details FROM customers LEFT JOIN orders ON customers.id = orders.customer_id WHERE MATCH('laptop|phone|monitor', orders) ORDER BY id ASC \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
- orders.product: Laptop
-           name: Alice Johnson
- orders.details: {"price":1200,"warranty":"2 years"}
- *************************** 2. row ***************************
- orders.product: Phone
-           name: Bob Smith
- orders.details: {"price":800,"warranty":"1 year"}
- *************************** 3. row ***************************
- orders.product: Monitor
-           name: Carol White
- orders.details: {"price":400,"warranty":"3 years"}
––– input –––
mysql -h0 -P1306 -e "SELECT product, customers.email, customers.name, customers.address, customers.weight() FROM orders INNER JOIN customers ON customers.id = orders.customer_id WHERE MATCH('maple', customers) OPTION(customers) field_weights=(address=1500) \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-            product: Laptop
-    customers.email: alice@example.com
-     customers.name: Alice Johnson
-  customers.address: 123 Maple St
- customers.weight(): #!/[0-9]+/!#
- *************************** 2. row ***************************
-            product: Tablet
-    customers.email: alice@example.com
-     customers.name: Alice Johnson
-  customers.address: 123 Maple St
- customers.weight(): #!/[0-9]+/!#
––– input –––
mysql -h0 -P1306 -e "SELECT product, customers.name FROM orders INNER JOIN customers ON customers.id = orders.customer_id ORDER BY id ASC OPTION join_batch_size=500 \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-        product: Laptop
- customers.name: Alice Johnson
- *************************** 2. row ***************************
-        product: Tablet
- customers.name: Alice Johnson
- *************************** 3. row ***************************
-        product: Phone
- customers.name: Bob Smith
- *************************** 4. row ***************************
-        product: Monitor
- customers.name: Carol White
––– input –––
mysql -h0 -P1306 -e "SELECT product, quantity, (quantity + 3) AS qty_plus_three FROM orders LEFT JOIN customers ON customers.id = orders.customer_id WHERE customers.name IS NOT NULL ORDER BY id ASC \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-        product: Laptop
-       quantity: 1
- qty_plus_three: 4
- *************************** 2. row ***************************
-        product: Tablet
-       quantity: 1
- qty_plus_three: 4
- *************************** 3. row ***************************
-        product: Phone
-       quantity: 2
- qty_plus_three: 5
- *************************** 4. row ***************************
-        product: Monitor
-       quantity: 1
- qty_plus_three: 4
––– input –––
mysql -h0 -P1306 -e "SELECT name, orders.product FROM customers LEFT JOIN orders ON customers.id = orders.customer_id WHERE orders.product IS NULL \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-           name: John Smith
- orders.product: NULL
––– input –––
mysql -h0 -P1306 -e "SELECT product, customers.name FROM orders LEFT JOIN customers ON customers.id = orders.customer_id WHERE customers.name IS NOT NULL ORDER BY id ASC \G"
––– output –––
- *************************** 1. row ***************************
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-        product: Laptop
- customers.name: Alice Johnson
- *************************** 2. row ***************************
-        product: Tablet
- customers.name: Alice Johnson
- *************************** 3. row ***************************
-        product: Phone
- customers.name: Bob Smith
- *************************** 4. row ***************************
-        product: Monitor
- customers.name: Carol White
––– input –––
mysql -h0 -P1306 -e "FLUSH LOGS"; echo $?
––– output –––
- 0
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
+ 1
––– input –––
tail -30 /var/log/manticore-${INSTANCE}/query.log | grep -E "JOIN.*ON" | head -8
––– output –––
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# */ SELECT name, orders.quantity FROM customers LEFT JOIN orders ON orders.customer_id = customers.id ORDER BY email ASC;
+ tail: cannot open '/var/log/manticore-1/query.log' for reading: No such file or directory
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# wall #!/[0-9]+\.[0-9]{3}/!# found #!/[0-9]+/!# */ SELECT name, orders.quantity FROM customers LEFT JOIN orders ON orders.customer_id=customers.id ORDER BY email ASC;
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# */ SELECT orders.product, name, orders.details FROM customers LEFT JOIN orders ON customers.id = orders.customer_id WHERE MATCH('laptop|phone|monitor', orders) ORDER BY id ASC;
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# wall #!/[0-9]+\.[0-9]{3}/!# found #!/[0-9]+/!# */ SELECT orders.product, name, orders.details FROM customers LEFT JOIN orders ON customers.id=orders.customer_id WHERE MATCH('laptop|phone|monitor',orders) ORDER BY id ASC;
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# */ SELECT product, customers.email, customers.name, customers.address, customers.weight() FROM orders INNER JOIN customers ON customers.id = orders.customer_id WHERE MATCH('maple', customers) OPTION(customers) field_weights=(address=1500);
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# wall #!/[0-9]+\.[0-9]{3}/!# found #!/[0-9]+/!# */ SELECT product, customers.email, customers.name, customers.address, customers.weight() FROM orders INNER JOIN customers ON customers.id=orders.customer_id WHERE MATCH('maple',customers) OPTION(customers) field_weights=(address=1500);
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# */ SELECT product, customers.name FROM orders INNER JOIN customers ON customers.id = orders.customer_id ORDER BY id ASC OPTION join_batch_size=500;
- /* #!/[A-Za-z]{3}\s+[A-Za-z]{3}\s+[0-9]{1,2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{3}\s[0-9]{4}/!# conn #!/[0-9]+/!# (#!/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+/!#) real #!/[0-9]+\.[0-9]{3}/!# wall #!/[0-9]+\.[0-9]{3}/!# found #!/[0-9]+/!# */ SELECT product, customers.name FROM orders INNER JOIN customers ON customers.id=orders.customer_id ORDER BY id ASC;
––– input –––
tail -50 /var/log/manticore-${INSTANCE}/query.log | grep -c "JOIN.*ON.*="
––– output –––
- 16
+ tail: cannot open '/var/log/manticore-1/query.log' for reading: No such file or directory
+ 0
test/clt-tests/join/test-avg-select-join.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
manticore-load --drop --batch-size=1000 --threads=5 --total=10000 --init="CREATE TABLE products(id bigint, name text, category multi)" --load="INSERT INTO products(id, name, category) VALUES(<increment>, '<text/2/10>', (<array/1/3/1/1000>))" --together --drop --batch-size=10000 --threads=5 --total=100000 --init="create table reviews(product_id bigint, user_id int, rating int, comment text)" --load="insert into reviews(product_id, user_id, rating, comment) values(<int/1/10000>, <int/1/1000>, <int/1/100>, '<text/20/100>')" --quiet  > /dev/null; echo $?
––– output –––
- 0
+ 1
––– input –––
mysql -P9306 -h0 -e "select id, count(*), avg(reviews.rating) avg_rating from products left join reviews on reviews.product_id = products.id group by id order by count(*) desc; select id, count(*) from products left join reviews on reviews.product_id = products.id group by id order by count(*) desc"
––– output –––
- +------+----------+-------------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | count(*) | avg_rating  |
- +------+----------+-------------+
- | 1589 |       23 | 58.65217391 |
- |  477 |       22 | 59.81818182 |
- | 5584 |       22 | 59.63636364 |
- | 2632 |       22 | 38.54545455 |
- |  805 |       22 | 57.86363636 |
- | 4982 |       22 | 50.27272727 |
- | 2031 |       21 | 60.19047619 |
- | 6057 |       21 | 46.66666667 |
- | 5077 |       21 | 37.38095238 |
- |  214 |       21 | 63.19047619 |
- |  366 |       21 | 51.61904762 |
- | 1498 |       21 | 55.23809524 |
- | 5667 |       21 | 48.90476190 |
- | 5682 |       21 | 37.14285714 |
- | 6721 |       21 | 49.14285714 |
- | 3993 |       21 | 49.76190476 |
- | 1014 |       20 |   58.250000 |
- |   79 |       20 |   43.100000 |
- | 7158 |       20 |   62.400000 |
- | 5162 |       20 |   57.600000 |
- +------+----------+-------------+
- +------+----------+
- | id   | count(*) |
- +------+----------+
- | 1589 |       23 |
- |  477 |       22 |
- | 5584 |       22 |
- | 2632 |       22 |
- |  805 |       22 |
- | 4982 |       22 |
- | 2031 |       21 |
- | 6057 |       21 |
- | 5077 |       21 |
- |  214 |       21 |
- |  366 |       21 |
- | 1498 |       21 |
- | 5667 |       21 |
- | 5682 |       21 |
- | 6721 |       21 |
- | 3993 |       21 |
- | 1014 |       20 |
- |   79 |       20 |
- | 7158 |       20 |
- | 5162 |       20 |
- +------+----------+
––– input –––
mysql -P9306 -h0 -e "SELECT COUNT(*) FROM products; SELECT COUNT(*) FROM reviews;"
––– output –––
- +----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | count(*) |
- +----------+
- |    10000 |
- +----------+
- +----------+
- | count(*) |
- +----------+
- |   100000 |
- +----------+

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/bugs/
✅ OK: 0
❌ Failed: 6
⏳ Duration: 47s
👉 Check Action Results for commit 765bcfa
Failed tests:

test/clt-tests/bugs/3247-rt-save-disk-chunk-race.rec
––– input –––
export INSTANCE=1
––– output –––
OK
––– input –––
mkdir -p /var/{run,lib,log}/manticore-${INSTANCE}
––– output –––
OK
––– input –––
stdbuf -oL searchd -c test/clt-tests/base/searchd-with-flexible-ports.conf > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore-${INSTANCE}/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore-${INSTANCE}/searchd.log; fi
––– output –––
- Buddy started!
+ tail: cannot open '/var/log/manticore-1/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore-1/searchd.log: No such file or directory
––– input –––
export INSTANCE=2
––– output –––
OK
––– input –––
mkdir -p /var/{run,lib,log}/manticore-${INSTANCE}
––– output –––
OK
––– input –––
stdbuf -oL searchd -c test/clt-tests/base/searchd-with-flexible-ports.conf > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore-${INSTANCE}/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore-${INSTANCE}/searchd.log; fi
––– output –––
- Buddy started!
+ tail: cannot open '/var/log/manticore-2/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore-2/searchd.log: No such file or directory
––– input –––
mysql -h0 -P1306 -e "CREATE TABLE t2 ( id bigint, f1 text, f2 text, idd bigint, tag bigint ) optimize_cutoff='4' rt_mem_limit='64M';"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
––– input –––
mysql -h0 -P1306 -e "create cluster test;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
––– input –––
mysql -h0 -P1306 -e "alter cluster test add t2;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
––– input –––
manticore-load --quiet --port=1306 --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" > /dev/null 2>&1
––– output –––
OK
––– input –––
manticore-load --quiet --port=1306 --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" --together --batch-size=1000 --threads=2 --total=500000 --load="replace INTO test:t2(idd,tag,f1) VALUES(<increment>,<int/1/100>,'<text/10/100>')" > /dev/null 2>&1 &
––– output –––
OK
––– input –––
timeout 10 bash -c 'while ! pgrep -f "manticore-load.*1306" > /dev/null; do sleep 0.1; done'
––– output –––
OK
––– input –––
mysql -h0 -P2306 -e "join cluster test at '127.0.0.1:1312';"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:2306' (111)
––– input –––
timeout 30 bash -c 'while ! mysql -h0 -P2306 -e "SHOW TABLES;" 2>/dev/null | grep -q "t2"; do sleep 1; done'
––– output –––
OK
––– input –––
mysql -h0 -P2306 -e "SHOW TABLES;"
––– output –––
- +-------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:2306' (111)
- | Table | Type |
- +-------+------+
- | t2    | rt   |
- +-------+------+
––– input –––
mysql -h0 -P1306 -e "SHOW TABLE t2 STATUS\G" | grep -A1 -E "ram_bytes|disk_bytes"
––– output –––
- Variable_name: ram_bytes
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:1306' (111)
-         Value: %{NUMBER}
- --
- Variable_name: disk_bytes
-         Value: %{NUMBER}
- --
- Variable_name: ram_bytes_retired
-         Value: 0
––– input –––
mysql -h0 -P2306 -e "SHOW TABLE t2 STATUS\G" | grep -A1 -E "ram_bytes|disk_bytes"
––– output –––
- Variable_name: ram_bytes
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:2306' (111)
-         Value: %{NUMBER}
- --
- Variable_name: disk_bytes
-         Value: %{NUMBER}
- --
- Variable_name: ram_bytes_retired
-         Value: 0
––– input –––
pkill -f manticore-load
––– output –––
OK
test/clt-tests/bugs/567-fuzzy-search-skips-numeric-words.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "DROP TABLE IF EXISTS t; CREATE TABLE t(f text) min_infix_len='2';"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(1, 'abc 12a'), (2, 'abc');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT *, weight() FROM t WHERE MATCH('abc 12a') OPTION fuzzy=1;"
––– output –––
- +------+---------+----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f       | weight() |
- +------+---------+----------+
- |    1 | abc 12a |     3821 |
- +------+---------+----------+
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(3, 'test 123abc'), (4, 'test 456def'), (5, 'test');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT *, weight() FROM t WHERE MATCH('test 123abc') OPTION fuzzy=1;"
––– output –––
- +------+-------------+----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f           | weight() |
- +------+-------------+----------+
- |    3 | test 123abc |     6000 |
- +------+-------------+----------+
––– input –––
mysql -h0 -P9306 -e "SELECT *, weight() FROM t WHERE MATCH('abc 12a');"
––– output –––
- +------+---------+----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f       | weight() |
- +------+---------+----------+
- |    1 | abc 12a |     2646 |
- +------+---------+----------+
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(6, 'hello world'), (7, 'hello');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT *, weight() FROM t WHERE MATCH('hello world') OPTION fuzzy=1;"
––– output –––
- +------+-------------+----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f           | weight() |
- +------+-------------+----------+
- |    6 | hello world |     7882 |
- +------+-------------+----------+
––– input –––
mysql -h0 -P9306 -e "SELECT *, weight() FROM t WHERE MATCH('12a') OPTION fuzzy=1;"
––– output –––
- +------+---------+----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f       | weight() |
- +------+---------+----------+
- |    1 | abc 12a |    12133 |
- +------+---------+----------+
test/clt-tests/bugs/3489-fuzzy-option-alias-bug.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE test_table (id BIGINT, field INT, content TEXT) min_infix_len='2';"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "INSERT INTO test_table (id, field, content) VALUES (1, 1, 'test document'), (2, 0, 'best result'), (3, 1, 'west coast');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT IF(field = 1, 1, 0) AS option FROM test_table WHERE MATCH('test');"
––– output –––
- +--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | option |
- +--------+
- |      1 |
- +--------+
––– input –––
mysql -h0 -P9306 -e "SELECT IF(field = 1, 1, 0) AS option FROM test_table WHERE MATCH('test') OPTION fuzzy=1;"
––– output –––
- +--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | option |
- +--------+
- |      1 |
- |      0 |
- |      1 |
- +--------+
––– input –––
mysql -h0 -P9306 -e "SELECT IF(field = 1, 1, 0) AS option2 FROM test_table WHERE MATCH('test') OPTION fuzzy=1;"
––– output –––
- +---------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | option2 |
- +---------+
- |       1 |
- |       0 |
- |       1 |
- +---------+
––– input –––
mysql -h0 -P9306 -e "SELECT IF(field = 1, 1, 0) AS something FROM test_table WHERE MATCH('test') OPTION fuzzy=1;"
––– output –––
- +-----------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | something |
- +-----------+
- |         1 |
- |         0 |
- |         1 |
- +-----------+
––– input –––
mysql -h0 -P9306 -e "SELECT IF(field = 1, 1, 0) AS option FROM test_table WHERE MATCH('test') OPTION cutoff=1;"
––– output –––
- +--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | option |
- +--------+
- |      1 |
- +--------+
––– input –––
mysql -h0 -P9306 -e "SELECT id, IF(field = 1, 1, 0) AS option FROM test_table WHERE MATCH('test') OPTION fuzzy=1;"
––– output –––
- +------+--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | option |
- +------+--------+
- |    1 |      1 |
- |    2 |      0 |
- |    3 |      1 |
- +------+--------+
test/clt-tests/bugs/3037-secondary-indexes-bug.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd ${SEARCHD_ARGS:-} > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Accepting connections!'; else echo 'Timeout or failed!'; fi
––– output –––
- Accepting connections!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
manticore-load --quiet --json --port=9306 --init="CREATE TABLE task (id BIGINT, status UINT, enddatetime TIMESTAMP, isoverdue BOOL)" --load="INSERT INTO task (id, status, enddatetime, isoverdue) VALUES (<increment>, <int/1/8>, <int/1577836800/1672531200>, 0)" --batch-size=1000 --threads=4 --total=10000 > /dev/null; echo $?
––– output –––
- 0
+ 1
––– input –––
mysql -P9306 -h0 -e "FLUSH RAMCHUNK task;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -P9306 -h0 -e "OPTIMIZE TABLE task OPTION cutoff=1;"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -P9306 -h0 -e "SHOW TABLE task STATUS LIKE 'disk_chunks';"
––– output –––
- +---------------+-------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Variable_name | Value |
- +---------------+-------+
- | disk_chunks   | 1     |
- +---------------+-------+
––– input –––
mysql -P9306 -h0 -e "DESCRIBE task;"
––– output –––
- +-------------+-----------+------------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | Field       | Type      | Properties |
- +-------------+-----------+------------+
- | id          | bigint    |            |
- | status      | uint      |            |
- | enddatetime | timestamp |            |
- | isoverdue   | bool      |            |
- +-------------+-----------+------------+
––– input –––
mysql -P9306 -h0 -e "SET GLOBAL secondary_indexes=1; select id,status from task where  isOverdue = 0 and status not in (1,4,5,6,7,8) ORDER BY id ASC LIMIT 10 /*+ SecondaryIndex(status) */; show meta;"
––– output –––
- +------+--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | status |
- +------+--------+
- |    5 |      2 |
- |    7 |      3 |
- |   10 |      3 |
- |   14 |      2 |
- |   17 |      2 |
- |   20 |      3 |
- |   33 |      2 |
- |   36 |      2 |
- |   37 |      2 |
- |   38 |      2 |
- +------+--------+
- +----------------+------------------------------+
- | Variable_name  | Value                        |
- +----------------+------------------------------+
- | total          | %{NUMBER}                           |
- | total_found    | %{NUMBER}                         |
- | total_relation | eq                           |
- | time           | %{NUMBER}.%{NUMBER}                        |
- | index          | status:SecondaryIndex (100%) |
- +----------------+------------------------------+
––– input –––
mysql -P9306 -h0 -e "SET GLOBAL secondary_indexes=0; select id,status from task where  isOverdue = 0 and status not in (1,4,5,6,7,8) ORDER BY id ASC LIMIT 10 /*+ SecondaryIndex(status) */; show meta;"
––– output –––
- +------+--------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | status |
- +------+--------+
- |    5 |      2 |
- |    7 |      3 |
- |   10 |      3 |
- |   14 |      2 |
- |   17 |      2 |
- |   20 |      3 |
- |   33 |      2 |
- |   36 |      2 |
- |   37 |      2 |
- |   38 |      2 |
- +------+--------+
- +----------------+------------------------------------------------------------------------------------------------------------------------------+
- | Variable_name  | Value                                                                                                                        |
- +----------------+------------------------------------------------------------------------------------------------------------------------------+
- | warning        | table task: hint error: secondary indexes are disabled; hint error: requested hint type not supported for attribute 'status' |
- | total          | %{NUMBER}                                                                                                                           |
- | total_found    | %{NUMBER}                                                                                                                         |
- | total_relation | eq                                                                                                                           |
- | time           | %{NUMBER}.%{NUMBER}                                                                                                                        |
- +----------------+------------------------------------------------------------------------------------------------------------------------------+
test/clt-tests/bugs/3481-http-update-distributed-table-wrong-cluster-crash.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd --stopwait > /dev/null; stdbuf -oL searchd --logdebugv > /dev/null
––– output –––
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ stdbuf: failed to run command ‘searchd’: No such file or directory
––– input –––
if timeout 10 grep -qm1 'accepting connections' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Manticore started!'; else echo 'Timeout or failed!'; fi
––– output –––
- Manticore started!
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
––– input –––
mysql -v -P9306 -h0 -e "drop table if exists t; create table t(f int); drop table if exists d; CREATE TABLE d type='distributed' agent='127.0.0.1:9312:t'"
––– output –––
- --------------
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- drop table if exists t
- --------------
- --------------
- create table t(f int)
- --------------
- --------------
- drop table if exists d
- --------------
- --------------
- CREATE TABLE d type='distributed' agent='127.0.0.1:9312:t'
- --------------
––– input –––
curl -s -X POST http://localhost:9312/update -d '{"cluster": "unknown_cluster", "table": "d", "id": 2, "doc": {"f": 5}}'
––– output –––
- {"error":{"type":"action_request_validation_exception","reason":"table t: table t: table 't' is not in any cluster, use just 't'","table":"d"},"status":409}
––– input –––
sleep 2; cat /var/log/manticore/searchd.log | grep 'response data' | head -n 1 | awk -F 'response data: ' '{print $2}'
––– output –––
- {"version":3,"type":"json response","message":{"error":{"type":"action_request_validation_exception","reason":"table t: table 't' is not in any cluster, use just 't'","table":"t"},"status":409},"meta":null,"error_code":0}
+ cat: /var/log/manticore/searchd.log: No such file or directory
test/clt-tests/bugs/569-fuzzy-single-letter-word-merge.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd $SEARCHD_FLAGS > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
- Buddy started!
+ stdbuf: failed to run command ‘searchd’: No such file or directory
+ tail: cannot open '/var/log/manticore/searchd.log' for reading: No such file or directory
+ tail: no files remaining
+ Timeout or failed!
+ cat: /var/log/manticore/searchd.log: No such file or directory
––– input –––
mysql -h0 -P9306 -e "DROP TABLE IF EXISTS t; CREATE TABLE t(f text) min_infix_len='2';"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(1, '30W');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('30 W') OPTION fuzzy=1;"
––– output –––
- +------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f    |
- +------+------+
- |    1 | 30W  |
- +------+------+
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('30 W') OPTION fuzzy=1, preserve=1;"
––– output –––
- +------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f    |
- +------+------+
- |    1 | 30W  |
- +------+------+
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('30W');"
––– output –––
- +------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f    |
- +------+------+
- |    1 | 30W  |
- +------+------+
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(2, 'hello world');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('hello world') OPTION fuzzy=1;"
––– output –––
- +------+-------------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f           |
- +------+-------------+
- |    2 | hello world |
- +------+-------------+
––– input –––
mysql -h0 -P9306 -e "INSERT INTO t VALUES(3, '100A');"
––– output –––
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('100 A') OPTION fuzzy=1, preserve=1;"
––– output –––
- +------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f    |
- +------+------+
- |    3 | 100A |
- +------+------+
––– input –––
mysql -h0 -P9306 -e "SELECT * FROM t WHERE MATCH('100A');"
––– output –––
- +------+------+
+ ERROR 2003 (HY000): Can't connect to MySQL server on '0:9306' (111)
- | id   | f    |
- +------+------+
- |    3 | 100A |
- +------+------+

@sanikolaev

Copy link
Copy Markdown
Collaborator

@klirichek when I run it in our docker for builds it fails so:

(jammy x86_64)root@984661dab524:/manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/build/src/fuzzer# ./qfuzzer -dict=/path/to/manticore/src/fuzzer/dict.txt corpus
./qfuzzer: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by ./qfuzzer)
./qfuzzer: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by ./qfuzzer)
./qfuzzer: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./qfuzzer)
./qfuzzer: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./qfuzzer)
./qfuzzer: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./qfuzzer)

How to reproduce:

docker run -it --rm \
-e CACHEB="../cache" \
-e DIAGNOSTIC=1 \
-e PACK_ICUDATA=0 \
-e NO_TESTS=1 \
-e DISTR=jammy \
-e boost=boost_nov22 \
-e sysroot=roots_nov22 \
-e arch=x86_64 \
-e CTEST_CMAKE_GENERATOR=Ninja \
-e CTEST_CONFIGURATION_TYPE=RelWithDebInfo \
-e WITH_COVERAGE=0 \
-e SYSROOT_URL="https://repo.manticoresearch.com/repository/sysroots" \
-e HOMEBREW_PREFIX="" \
-e PACK_GALERA=0 \
-e UNITY_BUILD=1 \
-v $(pwd):/manticore_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \
manticoresearch/external_toolchain:vcpkg331_20250114

and your initial instruction in the container.

@github-actions

github-actions Bot commented Jul 18, 2025

Copy link
Copy Markdown
Contributor

Linux debug test results

1 116 tests   1 064 ✅  43m 37s ⏱️
    1 suites     52 💤
    1 files        0 ❌

Results for commit 853ed98.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jul 18, 2025

Copy link
Copy Markdown
Contributor

Linux release test results

1 115 tests   1 063 ✅  13m 13s ⏱️
    1 suites     52 💤
    1 files        0 ❌

Results for commit 2fc15da.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jul 18, 2025

Copy link
Copy Markdown
Contributor

Windows test results

    3 files      3 suites   24m 51s ⏱️
1 093 tests 1 041 ✅ 52 💤 0 ❌
1 097 runs  1 045 ✅ 52 💤 0 ❌

Results for commit 03dba36.

♻️ This comment has been updated with latest results.

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/buddy/
✅ OK: 15
❌ Failed: 1
⏳ Duration: 162s
👉 Check Action Results for commit a369b1a
Failed tests:

test/clt-tests/buddy/test-system-variables-error-handling.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE IF NOT EXISTS tbl (id bigint, value int); INSERT INTO tbl VALUES (1, 100), (2, 200);"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@session.auto_increment_increment;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_connection;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@lower_case_table_names;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@session.last_insert_id;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@tx_isolation_eahhahfefhehfehf;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@random_name;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocomm;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@version;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit, @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client, @@tx_isolation_fake, @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysqldump -h0 -P9306 manticore tbl --no-data --skip-comments --skip-opt --no-tablespaces > /tmp/dump.sql 2> >(grep -E -v "Warning: column statistics|Warning: version string returned by server is incorrect." >&2)
––– output –––
OK
––– input –––
test -s /tmp/dump.sql && echo "Dump created successfully" || (echo "Dump is empty or failed!" && cat /tmp/dump.sql)
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "DROP TABLE tbl;"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 manticore < /tmp/dump.sql; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SHOW CREATE TABLE tbl;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @user_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @nonexistent_user_var;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@123;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e 'SELECT @@`quoted_name`;'
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@very_long_variable_name_that_exceeds_normal_length_limits;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AUTOCOMMIT;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AutoCommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK
––– input –––
stdbuf -oL searchd --stopwait > /dev/null
––– output –––
OK
––– input –––
echo -e "searchd {\nlisten = 9306:mysql\nlisten = 9308:http\nlog = /var/log/manticore/searchd.log\nquery_log = /var/log/manticore/query.log\npid_file = /var/run/manticore/searchd.pid\ndata_dir = /var/lib/manticore\nbuddy_path = \n}" > /tmp/manticore_without_buddy.conf; echo $?
––– output –––
OK
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd -c /tmp/manticore_without_buddy.conf > /dev/null; if timeout 10 grep -qm1 'accepting connections' /var/log/manticore/searchd.log; then echo 'Searchd started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@tx_isolation_eahhahfefhehfehf;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@random_name;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocomm;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@version;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit, @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client, @@tx_isolation_fake, @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysqldump -h0 -P9306 manticore tbl --no-data --skip-comments --skip-opt --no-tablespaces > /tmp/dump.sql 2> >(grep -E -v "Warning: column statistics|Warning: version string returned by server is incorrect." >&2)
––– output –––
+ mysqldump: Couldn't execute 'SELECT COLUMN_NAME,                       JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"')                FROM information_schema.COLUMN_STATISTICS                WHERE SCHEMA_NAME = 'manticore' AND TABLE_NAME = 'tbl';': No such table information_schema.COLUMN_STATISTICS (1064)
––– input –––
test -s /tmp/dump.sql && echo "Dump created successfully" || (echo "Dump is empty or failed!" && cat /tmp/dump.sql)
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "DROP TABLE tbl;"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 manticore < /tmp/dump.sql; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SHOW CREATE TABLE tbl;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @user_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @nonexistent_user_var;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@123;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e 'SELECT @@`quoted_name`;'
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@very_long_variable_name_that_exceeds_normal_length_limits;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AUTOCOMMIT;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AutoCommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK

@github-actions

Copy link
Copy Markdown
Contributor

clt

❌ CLT tests in test/clt-tests/buddy/
✅ OK: 15
❌ Failed: 1
⏳ Duration: 177s
👉 Check Action Results for commit 68a4bbe
Failed tests:

test/clt-tests/buddy/test-system-variables-error-handling.rec
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd > /dev/null; if timeout 10 grep -qm1 '\[BUDDY\] started' <(tail -n 1000 -f /var/log/manticore/searchd.log); then echo 'Buddy started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log;fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "CREATE TABLE IF NOT EXISTS tbl (id bigint, value int); INSERT INTO tbl VALUES (1, 100), (2, 200);"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@session.auto_increment_increment;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_connection;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@lower_case_table_names;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@session.last_insert_id;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@tx_isolation_eahhahfefhehfehf;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@random_name;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocomm;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@version;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit, @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client, @@tx_isolation_fake, @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysqldump -h0 -P9306 manticore tbl --no-data --skip-comments --skip-opt --no-tablespaces > /tmp/dump.sql 2> >(grep -E -v "Warning: column statistics|Warning: version string returned by server is incorrect." >&2)
––– output –––
OK
––– input –––
test -s /tmp/dump.sql && echo "Dump created successfully" || (echo "Dump is empty or failed!" && cat /tmp/dump.sql)
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "DROP TABLE tbl;"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 manticore < /tmp/dump.sql; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SHOW CREATE TABLE tbl;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @user_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @nonexistent_user_var;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@123;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e 'SELECT @@`quoted_name`;'
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@very_long_variable_name_that_exceeds_normal_length_limits;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AUTOCOMMIT;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AutoCommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK
––– input –––
stdbuf -oL searchd --stopwait > /dev/null
––– output –––
OK
––– input –––
echo -e "searchd {\nlisten = 9306:mysql\nlisten = 9308:http\nlog = /var/log/manticore/searchd.log\nquery_log = /var/log/manticore/query.log\npid_file = /var/run/manticore/searchd.pid\ndata_dir = /var/lib/manticore\nbuddy_path = \n}" > /tmp/manticore_without_buddy.conf; echo $?
––– output –––
OK
––– input –––
rm -f /var/log/manticore/searchd.log; stdbuf -oL searchd -c /tmp/manticore_without_buddy.conf > /dev/null; if timeout 10 grep -qm1 'accepting connections' /var/log/manticore/searchd.log; then echo 'Searchd started!'; else echo 'Timeout or failed!'; cat /var/log/manticore/searchd.log; fi
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@tx_isolation_eahhahfefhehfehf;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@random_name;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocomm;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@version;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit, @@nonexistent_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@character_set_client, @@tx_isolation_fake, @@max_allowed_packet;"
––– output –––
OK
––– input –––
mysqldump -h0 -P9306 manticore tbl --no-data --skip-comments --skip-opt --no-tablespaces > /tmp/dump.sql 2> >(grep -E -v "Warning: column statistics|Warning: version string returned by server is incorrect." >&2)
––– output –––
+ mysqldump: Couldn't execute 'SELECT COLUMN_NAME,                       JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"')                FROM information_schema.COLUMN_STATISTICS                WHERE SCHEMA_NAME = 'manticore' AND TABLE_NAME = 'tbl';': No such table information_schema.COLUMN_STATISTICS (1064)
––– input –––
test -s /tmp/dump.sql && echo "Dump created successfully" || (echo "Dump is empty or failed!" && cat /tmp/dump.sql)
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "DROP TABLE tbl;"; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 manticore < /tmp/dump.sql; echo $?
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SHOW CREATE TABLE tbl;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @user_variable;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @nonexistent_user_var;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@123;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e 'SELECT @@`quoted_name`;'
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@very_long_variable_name_that_exceeds_normal_length_limits;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AUTOCOMMIT;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@AutoCommit;"
––– output –––
OK
––– input –––
mysql -h0 -P9306 -e "SELECT @@autocommit;"
––– output –––
OK

klirichek added 16 commits July 22, 2025 13:44
parser and transformations tested
( aaa bbb !xxx ) | ( bbb aaa !yyy ) wasn't optimized
now it turns to
(aaa bbb) !(xxx yyy)
it produced transitive results
let's just restart each transformation once it was met
query like "aaa << !bbb ccc:x << !ddd | eee"
reveals memory corruption
test case added
queries like `(aaa !(ccc nnn)) | (bbb !(nnn ddd))` never expects that
aaa and bbb might be complex (say,
`((aaa bbb) !(nnn ccc)) | ((mmm bbb) !(nnn ddd))`
query like `aaa | ( ddag ! ( bbb ccc ccc ) )`
were simplified to
`( aaa | ( ddag ! bbb ) | ( ( ddag | ddag ) ! ccc ) )`
using rules for common-compound-not.
query like `@@relaxed aaa!bbb | @zzz c` caused assertion fail
.pdb came from build to tests;
.mdmp (if any) stored in test artifacts
src/sphinxjsonquery.cpp(1146,19): error C7555: use of designated initializers requires at least '/std:c++20'
manually implemented it wasn't tested well
tails wasn't always truncated
@klirichek klirichek merged commit 91e65a4 into master Jul 22, 2025
52 checks passed
@klirichek klirichek deleted the qfuzzer branch July 22, 2025 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants