Hello, Appwrite team!
I'm having an issue with listDocuments when using query modifiers:
Environment:
- Self-hosted Appwrite (
Version 1.4.13) installed insideCaprover - Next.js (
node-appwrite@17.0.0)
Issue:
- The
listDocumentswithout any queries returns documents well - It fails when adding queries (even simple ones), I get 500 error
Example that fails:
TypeScript
const docs = await databases.listDocuments(
"db",
"recipes",
[
Query.equal("language", "en"),
Query.equal("status", "published")
]
);```
**What I've tried:**
Created indexes for all required attributes
Verified attributes exist in the collection
Tested with different query combinations
**Question:**
What could be causing queries to fail despite proper indexes? Are there special requirements for Enum attributes?
**Addintional DB Info:**
```json
{
"$id": "recipes",
"databaseId": "db",
"enabled": true,
"documentSecurity": false,
"attributes": [
"title",
"slug",
"description",
"prepTime",
"cookTime",
"servings",
"difficulty",
"authorId",
"tags",
"productIds",
"language",
"views",
"featuredImage",
"likes",
"status"
],
"indexes": [
{
"key": "status_idx",
"attributes": [
"status"
]
},
{
"key": "views_idx",
"attributes": [
"views"
]
},
{
"key": "createdAt_idx",
"attributes": [
"$createdAt"
]
},
{
"key": "status_views_idx",
"attributes": [
"status",
"views"
]
},
{
"key": "language_idx",
"attributes": [
"language"
]
},
{
"key": "status_createdAt_idx",
"attributes": [
"status",
"$createdAt"
]
},
{
"key": "language_status_idx",
"attributes": [
"language",
"status"
]
}
]
}
},```
TL;DR
Issue: `listDocuments` function with query modifiers is causing a 500 error despite having proper indexes.
Solution: Ensure there are no typos in the attribute names, and consider converting the Enum attributes to strings for compatibility.Recommended threads
- Relations within the same table
Hello, I'm currently building a sort of dictionary (a literal one) and thus I need words (which is one single table of words in my database) to be able to have ...
- [SOLVED] Query.search() returning all ro...
When I use Query.search() instead of returning rows with the keywords provided it just returns all the rows in the table.
- 1:1 relationship doesn’t sync after re-a...
Hi, I’m trying to use a two-way one-to-one relationship. It works fine when I create a record with the relationship set, and it also works when I unset it. But ...