In Weaviate, how to update invertedIndexConfig of an existing class?

From Weaviate docs, below endpoint:

PUT v1/schema/{class_name}

should allow me to alter an existing class in the schema. I wanted to set invertedIndexConfig > indexNullState to true for me to be able to use filter by null state.

Here’s the CURL I am trying to use so far:

curl \
-X PUT \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {{WEAVIATE_API_KEY}}" \
-d '{
      "class": "Player",
      "invertedIndexConfig": {
        "indexNullState": true,
        "bm25": {
            "b": 0.75,
            "k1": 1.2
        },
        "cleanupIntervalSeconds": 60,
        "stopwords": {
            "additions": null,
            "preset": "en",
            "removals": null
        }
      }
    }' \
{{WEAVIATE_HOST}}/v1/schema/Player

but got this error instead

{
"error": [
    {
        "message": "properties cannot be updated through updating the class. Use the add property feature (e.g. \"POST /v1/schema/{className}/properties\") to add additional properties"
    }
]

}

Hence, is it possible via this endpoint?

Hi,

updating indexNullState is not possible. You’d need to create a new class and readd all objects.

The reason is that these indexes are created at object addition time and we currently cannot reindex .

1 Like

Got it. Thanks @Dirk for confirming - cheers!