Inconsistent behaviour of with_where search

Description

Hello dear weaviate team,

I have came accross an issue using a with_where simple query. Most of previous queries where succesful, without any problem, but somehow, regarding a handful of entries, I have the following behaviour:

Let’s say I do a simple filter query on my database, that contains, among others, infos on documents. (we focus here on their unique id (uid) and version (version))

res = (db_client.query
.get(    
    collection,
    ["uid","version"]
    )
.with_where(    
    {
        "operator": "And",
        "operands": [
        {            
             "path": ["uid"],
             "operator": "Equal",
             "valueText": "QXM8H7",
         }
        ]
    }
)
.do())
print(res)

The output is

{'data': {'Get': {'collection_name': [{'uid': 'QXM8H7', 'version': 'v2_14'}]}}}

but when I add a condition on the version

res = (db_client.query
.get(    
    collection,
    ["uid","version"]
    )
.with_where(    
    {
        "operator": "And",
        "operands": [
        {            
             "path": ["uid"],
             "operator": "Equal",
             "valueText": "QXM8H7",
         },
        {
            "path": ["version"],
            "operator": "Equal",
            "valueText": "v2_14"
        }
        ]
    }
)
.do())
print(res)

The output becomes

{'data': {'Get': {'collection_name': []}}}

So, what is happening here ? FYI,

  • the tokenization used are both word, but I am looking or exact matches anyways, so it seems unlikely to be the cause.
  • Both previous queries worked well on other documents
  • The collection on which I’m performing queries contains around 990 000 entries, maybe the indexing method struggles with this many entries ?
  • there are other “fields” (other than uid and version), around 30, but they aren’t all filterable nor searchable.

Server Setup Information

  • Deployment Method: Don’t have the details yet, custom installation
  • Multi Node? No.
  • Client Language and Version: Python 3.12.3 (API v3)
  • Multitenancy? No.

Any additional Information

Tell me if you need me to provide additional information

Thank you for your time!

behaviour fixed by improving the RAM of the server hosting the deployment.

Oh Wow!

First thanks for sharing, @lrx

and secondly sorry, as we missed this message :grimacing:

When you say improved, you mean you have increased weaviate allocated memory, right?

Can you share the version you are running? Even with less memory, this isn’t the expected behavior. :thinking: