fragment_size 在 elasticsearch 突出显示中的奇怪行为

Curious behaviour of fragment_size in elasticsearch highlighting

TL;DR : 我不明白突出显示是如何工作的,更确切地说 fragment_size 如何影响突出显示。


在新的 ES 安装 (1.4.2) 上,我正在使用以下设置创建索引:

{
    "mappings" : {
        "test": {
            "properties": {
                "content" : {
                    "type" : "string",
                    "analyzer" : "french"
                }
            }
        }
    }
}

然后,我将插入以下文档:

{
    "content": "Bon alors mettons que j'ouvre avec un sirop de huit. Si c'est vous qui avez siroté au tour d'avant, ça tourne dans votre sens. Soit vous laissez filer, vous dites file-sirop, soit vous vous sentez de relancer et vous annoncez un sirop de quatorze. Vous, comme on a commencé les annonces, vous avez pas le droit de laisser filer. Vous pouvez soit relancer un sirop de vingt-et-un, soit vous abandonnez le tour et vous dites couche-sirop. Ou sirop Jeannot, ça dépend des régions. Et après, soit on fait la partie soit je fais un contre-sirop, boum ! Et à partir de là, sirop de pomme sur vingt-et-un donc on fait la partie en quatre tours jusqu'à qu'il y en ait un qui sirote."
}

最后,我正在查询“couche-sirop”并突出显示具有不同 N 值的结果 (fragment_size):

{
    "query": {
        "query_string": {
            "query": "\"couche-sirop\"",
            "fields": [
                "content"
            ],
            "default_operator": "and"
        }
    },
    "highlight": {
        "number_of_fragments": 5,
        "type": "plain",
        "fields": {
            "content": {
                "fragment_size": N
            }
        }
    }
}

一些结果:

具有更大的 N 值

谁能解释一下原因:

我也尝试了 postingsfast vector 荧光笔,结果相同

谢谢!

我怀疑这是一个错误。我在 github 上开了一个问题:https://github.com/elasticsearch/elasticsearch/issues/9442