ElasticSearch no devuelve la ID máxima cuando estoy buscando descendiendo id

Tengo URI de índice

contracts/_doc/

Empujo mis documentos allí, la ID es pregenerada por SQL-DB

este es el ejemplo de código del cliente JAVA:

    final BulkRequest request = new BulkRequest();
    contracts.forEach(e -> request.add(new IndexRequest(CONTRACT_INDEX,
                                                        CONTRACT_INDEX_TYPE,
                                                        String.valueOf(e.getId()))
                                            .source("contractNumber", e.getContractNumber())
                                        )
    );

A veces necesito ver el mayor valor de ID en mi índice, y envío esta consulta

{
    "sort" : [
        { "_id" : {"order" : "desc"}}
    ],
    "size": 1
}

El problema es que ElasticSearch siempre devuelve un valor no mayor que9999

        "hits": [
        {
            "_index": "contracts",
            "_type": "_doc",
            "_id": "9999",
            "_score": null,
            "_source": {
                "contractNumber": "2000/290/990990"
            },
            "sort": [
                "9999"
            ]
        }
    ]

Cuando estoy realizando una búsqueda con consulta:

{
"size": 10000

}

el resultado real está en el estado correcto, todos mis ID's superiores a 9999 están presentes y seleccionados por

contracts/_doc/10005

devuelve el resultado adecuado.

Por favor, avise cómo puedo resolver esta situación

Respuestas a la pregunta(1)

Su respuesta a la pregunta