Skip to content

Slowlog on Index Settings descriptor is not translated correctly to JSON #7865

Closed
@TheFireCookie

Description

@TheFireCookie

Elastic.Clients.Elasticsearch version:
8.9.0

Elasticsearch version:
8.9.0

.NET runtime version:
7.0.9

Operating system version:
Windows 11

Description of the problem including expected versus actual behavior:
Using

private void SetIndexDescriptor(CreateIndexRequestDescriptor<T> createIndexDescriptor) =>
    createIndexDescriptor
      .Settings(s => s
        .IndexingSlowlog(d => d
          .Threshold(t => t
            .Fetch(f => f.Warn(TimeSpan.FromSeconds(1)))
            .Query(f => f.Warn(TimeSpan.FromSeconds(5)))
            .Index(f => f.Warn(TimeSpan.FromSeconds(5)))));

generate this JSON

{
    "settings": {
        "indexing.slowlog": {
            "threshold": {
                "fetch": {
                    "warn": "1s"
                },
                "index": {
                    "warn": "5s"
                },
                "query": {
                    "warn": "5s"
                }
            }
        }
    }
}

which is not supported by Elasticsearch 8.9 and replied by it:

{
    "error": {
        "root_cause": [
            {
                "type": "illegal_argument_exception",
                "reason": "unknown setting [index.indexing.slowlog.threshold.query.warn] did you mean any of [index.indexing.slowlog.threshold.index.warn, index.search.slowlog.threshold.query.warn, index.indexing.slowlog.threshold.index.trace, index.indexing.slowlog.threshold.index.info, index.indexing.slowlog.threshold.index.debug, index.search.slowlog.threshold.query.trace, index.search.slowlog.threshold.query.info, index.search.slowlog.threshold.query.debug, index.search.slowlog.threshold.fetch.warn]?"
            }
        ],
        "type": "illegal_argument_exception",
        "reason": "unknown setting [index.indexing.slowlog.threshold.query.warn] did you mean any of [index.indexing.slowlog.threshold.index.warn, index.search.slowlog.threshold.query.warn, index.indexing.slowlog.threshold.index.trace, index.indexing.slowlog.threshold.index.info, index.indexing.slowlog.threshold.index.debug, index.search.slowlog.threshold.query.trace, index.search.slowlog.threshold.query.info, index.search.slowlog.threshold.query.debug, index.search.slowlog.threshold.fetch.warn]?",
        "suppressed": [
            {
                "type": "illegal_argument_exception",
                "reason": "unknown setting [index.indexing.slowlog.threshold.fetch.warn] did you mean any of [index.indexing.slowlog.threshold.index.warn, index.search.slowlog.threshold.fetch.warn, index.indexing.slowlog.threshold.index.trace, index.indexing.slowlog.threshold.index.info, index.indexing.slowlog.threshold.index.debug, index.search.slowlog.threshold.fetch.trace, index.search.slowlog.threshold.fetch.info, index.search.slowlog.threshold.fetch.debug, index.search.slowlog.threshold.query.warn]?"
            }
        ]
    },
    "status": 400
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    8.xRelates to a 8.x client version

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions