I created a new platform but when I cloned the source, I didn't see the lib/... folder, only env. Then I created a .env file and added those files, then pinged but got error 500. What should I do next?
here is the app
What's the SDK version?
it looks like 1.8.0
You're self-hosting?
no, but i can ask the host
@D5 yes, I self-hosting
Try asking the owner for the server logs
The react native SDK version or Appwrite version?
the Appwrite version, sdk-version: 17.0.2,
and from the project :
"appwrite": "^17.0.0",
"expo": "~52.0.28",
"react-native": "0.76.6",
I see the error on server log:
appwrite | [Error] Timestamp: 2025-09-24T15:05:47+00:00
appwrite | [Error] Method: GET
appwrite | [Error] URL: /v1/ping
appwrite | [Error] Type: Utopia\Database\Exception\Structure
appwrite | [Error] Message: Invalid document structure: Unknown attribute: "pingCount"
appwrite | [Error] File: /usr/src/code/vendor/utopia-php/database/src/Database/Database.php
appwrite | [Error] Line: 4271
I checked on /usr/src/code/src/Appwrite/Utopia/Response/Model/Project.php docker and I see code have define pingCount, pingedAt
->addRule('pingCount', [
'type' => self::TYPE_INTEGER,
'description' => 'Number of times the ping was received for this project.',
'default' => 0,
'example' => 1,
])
->addRule('pingedAt', [
'type' => self::TYPE_DATETIME,
'description' => 'Last ping datetime in ISO 8601 format.',
'default' => '',
'example' => self::TYPE_DATETIME_EXAMPLE,
])
==> it means the response Model (Project.php) - Used for API responses ✅ Working (I think that)
I checked the database and tried update pingCount and I see that database work well
MariaDB [appwrite]> SELECT pingCount, pingedAt FROM _console_projects WHERE _uid = '682f5edd0032dee5xxx' LIMIT 1;
+-----------+----------+
| pingCount | pingedAt |
+-----------+----------+
| 0 | NULL |
+-----------+----------+
1 row in set (0.001 sec)
MariaDB [appwrite]> UPDATE _console_projects SET pingCount = pingCount + 1, pingedAt = NOW(3) WHERE _uid = '682f5edd0032dee5xxx';
Query OK, 1 row affected (0.015 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [appwrite]> SELECT pingCount, pingedAt FROM _console_projects WHERE _uid = '682f5edd0032dee5xxx' LIMIT 1;
+-----------+-------------------------+
| pingCount | pingedAt |
+-----------+-------------------------+
| 1 | 2025-09-24 16:38:05.318 |
+-----------+-------------------------+
1 row in set (0.001 sec)
So I think root cause: Collection Schema (Structure validator) - Used for database validation ❌ Broken The Structure validator in Database.php line 4271 is checking against the collection schema
I have checked the cache and restarted Docker several times, but the issue has not been resolved. Do you have any suggestions? cc @D5
Did you ever figure this out? I had the same issue and was able to find a temporary workaround, but it's not pretty.
Recommended threads
- React Native/iOS platform integrations h...
Anyone else have this issue where platform identifiers have been lost/wiped and no option/field available to update them in the console?
- Issue with Appwrite Read Request Limit b...
Hi Team, My coding terminal connected to the Appwrite CLI blew through my Projects Read request limit with in a day! and thats a large limit! I'm not sure how...
- Sub-minute server-side execution for rea...
Hey — I'm building a real-time auction app on Appwrite Cloud and running into a timing limitation I'd please love some clarity on. My use case: when a bidding ...