Distance threshold query silently fails when using bit quantization

Author: rolf-mozCreated Jun 12, 2026Updated Aug 4, 2026

This query seemed to ignore the 'v.distance <= :distanceThreshold' condition

select
      FROM vec_history v
      JOIN vec_history_mapping m USING (rowid)
      WHERE v.embedding MATCH :vector
        AND k = :limit
        AND v.distance <= :distanceThreshold
      ORDER BY v.distance
    )

Table was created with

      CREATE VIRTUAL TABLE vec_history USING vec0(
        embedding FLOAT[${this.#embeddingSize}]
        distance_metric=cosine
            INDEXED BY rescore(
          quantizer=bit,
          oversample=50
        )
      );