Denny Vuong
07/27/2025, 2:05 AMLicheng Wu
07/28/2025, 2:13 AMLicheng Wu
07/28/2025, 2:36 AM{
"name": "author_id",
"type": "string",
"reference": "authors.id"
}
I am getting an error if I try to create a one-to-many reference using an integer type, such as something like this
{
"name": "author_id",
"type": "int64",
"reference": "authors.id"
}
When trying to reindex, the error says that the field must have a string value.Thu Vo
07/28/2025, 2:51 AMFunction not implemented
store.cpp:296] Checkpoint CreateCheckpoint failed at snapshot path: /root/lib/typesense/data/state/snapshot/temp/db_snapshot, msg:IO error: while link file to /root/lib/typesense/data/state/snapshot/temp/db_snapshot.tmp/000085.sst: /root/lib/typesense/data/db/000085.sst: Function not implemented
Is there anything i missed to config?Arnaud Ledoeuff
07/28/2025, 8:54 AMfilter_by
condition in my Typesense search like this:
filter_by: "quantity:<=minimumQuantity"
But I’m getting an error. It works fine if I use a static value (like
filter_by: "quantity:<=0"
).
❓ Is it possible to compare two fields within a document using filter_by
, or does filter_by
only support static values?
Thanks a lot for your help!Jaydipsinh Vaghela
07/28/2025, 10:39 AMglobal search
in our mobile app and are planning to use Typesense for this feature.
As we reviewed the documentation, we noticed that Typesense requires defining documents based on the structure of the data. Since we’re dealing with multiple tables (like transactions
, externalTransactions
, taxCalculations
, yearlyTaxSummaries
, etc.), I wanted to get some guidance on the best architectural approach.
Here’s our core question: To support global search across all these data types, should we:
1. Create one unified document schema
that merges relevant fields from all the tables into a single collection/document type?
2. Or create multiple collections
, one per table, and query them independently?
Also, how does global search work
across multiple documents/collections in Typesense? Does it support cross-collection search natively or would we need to stitch results together manually?
Any insights, best practices, or examples would be really appreciated. We’re just getting started with Typesense, so trying to understand what makes the most sense long term.
Thanks so much in advance!
JD,
WorkMadeAndrew Powell
07/28/2025, 9:16 PMCould not parse the filter query
. anyone have any tips on how the filter query param is supposed to look before and after uri encoding?John Sokol
07/28/2025, 9:33 PMgrip
07/28/2025, 11:21 PMHung-wei Chuang
07/29/2025, 2:48 AM'text_match_info': {'best_field_score': '1108091339008',
'best_field_weight': 13}]}
and my match is on event_title
, but my event_title
weight is specified as 15
in my query params - so why is best_field_weight 13?
this happens when using max_score
. the documentation says Only when several fields match the query equally, we use the field weights to decide which document should be prioritized.
, but then what's the purpose of best_field_weight
? i understand how field_score can be kind of a blackbox, but is best_field_weight too?Denny Vuong
07/29/2025, 5:31 AMSanthosh
07/29/2025, 8:41 AM@typesense/client
version 1.8.2
) when performing a document search via GET
request. The client fails and retries multiple times before throwing a JSON parsing error.
✅ Mock Request Payload (adjusted keys/values)
{
"q": "mock-search-id",
"query_by": [
"supportId",
"vendorId",
"storeId",
"companyId",
"pfAccountId",
"name",
"email",
"supportType",
"vendorType",
"status"
],
"facet_by": [
"supportType",
"vendorType",
"status"
],
"page": 1,
"per_page": 50,
"exclude_fields": [
"id"
],
"filter_by": "supportId:mock-support-id && type:VENDORS && vendorType:[STANDARD,MARKETPLACE_VENDOR,PF_VENDOR,PF_TEST_VENDOR,SUPPORT_VENDOR,TEST_VENDOR,DEACTIVATED_VENDOR,ISV_VENDOR,BLOCKED_VENDOR]",
"max_candidates": 200,
"infix": [
"fallback",
"fallback",
"fallback",
"fallback",
"fallback",
"off",
"fallback",
"off",
"off",
"off"
]
}
📋 Client Logs
Request #1753775896185: Performing GET request: /collections/<collection-name>/documents/search
Request #1753775896185: Nodes Health: Node 0 is Healthy
Request #1753775896185: Updated current node to Node 0
Request #1753775896185: Attempting GET request Try #1 to Node 0
Request #1753775896185: Request to Node 0 failed due to "undefined Expected ',' or '}' after property value in JSON at position 109 (line 1 column 110)"
Request #1753775896185: Sleeping for 0.1s and then retrying request...
Request #1753775896185: Nodes Health: Node 0 is Unhealthy
Request #1753775896185: No healthy nodes were found. Returning the next node, Node 0
Request #1753775896185: Attempting GET request Try #2 to Node 0
Request #1753775896185: Request to Node 0 failed due to "undefined Expected ',' or '}' after property value in JSON at position 109 (line 1 column 110)"
Request #1753775896185: Sleeping for 0.1s and then retrying request...
Request #1753775896185: No retries left. Raising last error
❓ Questions
1. Is the issue related to JSON serialization within the client?
2. Any advice for resolving this while keeping the same filter logic?
Thanks for your help!steffen
07/29/2025, 9:01 AMuserId
and a scoped key with that filter.
If we understood the concepts correctly, there is no option to create just one key fulfilling that requirement. Simply since not all collections would have the userId
field (those which are available to all users) and the search on these with that generated scoped key would just yield 0.
So are we indeed required to deal with multiple scoped key per user and decide which one to use based on the query?
How do we tackle that best?Shiva Dixith
07/29/2025, 11:09 AMGreg Bougeard
07/29/2025, 12:30 PMhighlights
in response of a Natural Language Query?Julian
07/30/2025, 8:21 AMobject[]
as facet? My data looks like the following (example):
"nutritionalValues": [
{
"field": "dietaryFiber",
"perPortion": 4.43,
"unit": "g"
},
{
"field": "protein",
"perPortion": 10.65,
"unit": "g"
},
{
"field": "energyCal",
"perPortion": 366,
"unit": "kcal"
},
...
]
Now I want to range-facet e.g. by energyCal
.
My plan b is to extract the relevant property from the array and make it a top-level field. But this would mess up my data model a bit so I am looking for another way to achieve this.Greg Bougeard
07/30/2025, 11:26 AMKoushik Sarkar
07/30/2025, 1:13 PMDawood Alkawaz
07/31/2025, 8:30 AM{
"name": "tags",
"type": "string[]",
"index": true,
"stem": true,
"infix": true
}
Then I inserted a document with the following tags:
"tags": [..., "yellowstone", ...]
Now I am trying to search like this:
GET /documents/search?q=stone&query_by=tags&infix=always
However, this document is not showing up. Any ideas that can help? And thank you in advance!Nikola Stojisavljević
07/31/2025, 8:50 AMGabriel Delattre
07/31/2025, 10:02 AMUX
of the search and we have for goal to make sure our facet count are super clear what ever the user is doing.
I was reading through the documentation and found out about https://typesense.org/docs/guide/faqs.html#why-do-i-sometimes-get-more-results-when-adding-filters and the max_candidates
param. I'm a bit worried of what could happen.
I want to make sure that if a query is type, let say q=lawyer
and in my job_department
facet I've got 9545 count for the law
facet, this count will stay the same.
I see you suggest max_candidates=100
but it feels really low and I'm not sure I proerly understand the issue and the consequences. I dully noted that we talk about perf.
Thanks !Ian Lockwood
07/31/2025, 10:27 AM_eval([ (product_brands_attribute_filter:Climadoor):3, (product_brands_attribute_filter:LPD):2, (product_brands_attribute_filter:DEANTA):1 ]):desc, price:asc
This works fine in that the sort order has all products from the first brand in ascending price order, then same for the second brand etc.
However, it is applied universally to all category pages and search results. I just want it applied to a specific category (or possibly several). I have tried using Curate by Filter set to match a category (e.g. category:Architrave), but that has no effect.
To note, the way the website works is that category page listings are driven by TS results, i.e. they are "search results" but without a user actually searching. This is done with a third-party plugin and I don't know how it queries TS to generate the category page listings, but obviously category is an attribute in the product data.
Can someone please help me set an override that will only apply when a particular category is viewed on the site?Nikola Stojisavljević
07/31/2025, 2:14 PMShawn Tan
07/31/2025, 5:34 PM"Failed to join on `collection_2_alias`: No reference field found`
I've confirmed that re-creating the exact same collections without aliases leads to the queries behaving as expected. This only happens with aliases.Zhen Jun
08/01/2025, 8:01 AM{
"searches": [
{
"collection": "leads",
"facet_by": "status, $lead-contact-linkages($wa-bot-contacts(sequence_ids)), owner",
"q": "*"
}
]
}
Only the facet for status
is returned.John Sokol
08/01/2025, 3:53 PMMateo Salazar
08/01/2025, 4:55 PMTodd Tarsi
08/01/2025, 7:04 PMYash Joshi
08/01/2025, 8:14 PMtypesense-instantsearch-adapter
version from 2.8.0
to 2.10.0-1
in order to enable NLP search, but with just the package version upgrade and no config and code change we are seeing alot of requests getting fired and spaming the server and timing out after 5s
( default time I guess ).
Any idea what could be causing this and do we have any fix for the same ?Thulasiram
08/02/2025, 6:28 PMhotels in cityx with a spa
where NL translates that into >hotel, city and amenity filters. Semantic search can search for spa/jacuzzi/sauna