Open pgomulka opened 1 year ago
Pinging @elastic/es-core-infra (Team:Core/Infra)
Pinging @elastic/es-ql (Team:QL)
Thanks for raising this, @pgomulka. We have a linked issue in the .NET client which may be caused by potential differences in the response. I'll look into that more deeply on our end to check what seems to have changed. It would be helpful to ensure clients running in compatibility mode can use EQL and SQL. Right now, it's the only way for .NET consumers to work with a v8 server in .NET, so consumption may be broken without it.
+1 on having compatibility mode preserve the structure of responses in 7.x for EQL and SQL, going forward all API endpoints should respect compatibility mode negotiation.
Those two places (and possibly more) should be revisited to make sure the right parameters are passed in when creating XContentBuilder
Linking https://github.com/elastic/elasticsearch/issues/56030 to potentially also revisit and https://github.com/elastic/elasticsearch/issues/52587 just for behavior awareness.
Pinging @elastic/es-analytics-geo (Team:Analytics)
Pinging @elastic/es-analytical-engine (Team:Analytics)
Description
Rest api compatibility was not covering the support for eql and sql plugins (not supporting any plugins) at the time when we were implementing it.
SQL and EQL have a custom logic on creating
XContentBuilder
. Those two places (and possibly more) should be revisited to make sure the right parameters are passed in when creatingXContentBuilder
https://github.com/elastic/elasticsearch/blob/237fd28dc73a449a93d19c6e6f066383c398f2da/x-pack/plugin/sql/src/main/java/org/elasticsearch/xpack/sql/plugin/RestSqlClearCursorAction.java#L56 https://github.com/elastic/elasticsearch/blob/237fd28dc73a449a93d19c6e6f066383c398f2da/x-pack/plugin/eql/src/main/java/org/elasticsearch/xpack/eql/plugin/RestEqlSearchAction.java#L71I recon at some point we can consider extending the rest api compatibility coverage to plugins and fix this for EQL and SQL. The rest api compatibility framework should support additional media types used in SQL (just headers formatting, not request/respone parsing)
steps to reproduce currently not working behaviour