I’m hitting a blocking issue creating rows in Appwrite (both from the console and my React Native app). After successfully inserting the first row, every subsequent create fails with:
[AppwriteException: Row with the requested ID already exists. Try again with a different ID or use ID.unique() to generate a unique ID.]
It looks like the document ID is being treated as already used even when I expect a new unique ID. I only have one two-way one-to-one relationship between two tables. After the first insert, I can’t add any more records.
Schema (essential parts):
Table: profiles
- Columns: gender (enum: male|female), dob (datetime, required), marketingoptin (bool), userid (string, size 36, required), fullname (string, 128, required), email (string, 254), phonee164 (string, 32, required), locale (string, 8, required), profilepicture (url)
- Relationship:
secure_id→profiles_secure(oneToOne, twoWay=true, twoWayKey=profileid, onDelete=cascade, side=child) - Permissions: read("users")
- Indexes: none
Table: profiles_secure
- Columns: pregnancystatus (enum: na|pregnant|postpartum), breastfeeding (bool), cninumber (string, 32), allergies (string], 128), emergencycontactname (string, 128), emergencycontactphonee164 (string, 32), consents (string, 4096)
- Relationship:
profile_id→profiles(oneToOne, twoWay=true, twoWayKey=secureid, onDelete=cascade, side=parent) - Permissions: read("users")
- Indexes: indexcni (ASC)
Notes:
- The error occurs immediately after the first
profilesrow is added. - I expected Appwrite to generate a unique document ID (or to honor
ID.unique()), but the platform behaves as if the same ID is reused. - Only change since it worked: adding the two-way one-to-one relation above.
Any ideas why additional creates are hitting “Row with the requested ID already exists”? Is there something about two-way one-to-one relations or document IDs I might be misconfiguring?
<@462046107556511744> Do you know why this is happening at the moment I see same issue was posted earlier with no response from the team https://discord.com/channels/564160730845151244/1415039983844327476
@Steven Resolved: the issue was my prior relationship config. Switched to parent→child one-to-many; working now. Updated schemas (minified):
profiles:
{"$id":"profiles","$permissions":["read(users)"],"databaseId":"68bdaf5e001c607946d7","name":"Profiles","enabled":true,"columns":[{"key":"gender","type":"string","format":"enum","elements":["male","female"]},{"key":"dob","type":"datetime","required":true},{"key":"marketing_opt_in","type":"boolean","default":false},{"key":"user_id","type":"string","required":true,"size":36},{"key":"full_name","type":"string","required":true,"size":128},{"key":"email","type":"string","size":254},{"key":"phone_e164","type":"string","required":true,"size":32},{"key":"locale","type":"string","required":true,"size":8},{"key":"profile_picture","type":"string","format":"url"},{"key":"secure_id","type":"relationship","relatedTable":"profiles_secure","relationType":"oneToMany","twoWay":true,"twoWayKey":"profile_id","onDelete":"cascade","side":"parent"}],"indexes":[]}
profiles_secure:
{"$id":"profiles_secure","$permissions":["read(users)"],"databaseId":"68bdaf5e001c607946d7","name":"Profiles Secure","enabled":true,"columns":[{"key":"pregnancy_status","type":"string","format":"enum","elements":["na","pregnant","postpartum"]},{"key":"breastfeeding","type":"boolean"},{"key":"cni_number","type":"string","size":32},{"key":"profile_id","type":"relationship","relatedTable":"profiles","relationType":"oneToMany","twoWay":true,"twoWayKey":"secure_id","onDelete":"cascade","side":"child"},{"key":"allergies","type":"string","array":true,"size":128},{"key":"emergency_contact_name","type":"string","size":128},{"key":"emergency_contact_phone_e164","type":"string","size":32},{"key":"consents","type":"string","size":4096}],"indexes":[]}
TL;DR: moving from two-way 1–1 to parent(profiles)→child(profiles_secure) 1–many fixed duplicate-ID errors.
This issue usually means you're trying to create a Row with a conflicting Unique Index. It's a bad error message.
It happened for me because I clicked on AI feature but now I made table again with same id and columns it worked.
I also had to create the table again
Recommended threads
- Auth working for emulator but not for ph...
hey guys i'm using appwrite for expo react native it is working perfectly for emulator but does not working for physical devices can u explain any one and it is...
- unlike any other provider, your sites DN...
your nameservers dont work with a funny little CNAME error, which is a weird bug but thats what you get when you try to be the kitchen sink, funny errors.
- Weird Table Causes Console to break
I dont even know how this even happened looks like the $createdAt and , $id got switched? <@831428608895615056>