Function Event wildcards caused infinite loop causing 500 Internal error
- 0
- Databases
- React Native
- Cloud

Hi guys @Support
I created a function to be triggered everytime an item is added or checked state changed in items collection it update the list collection total_items and checked_items
See code
export default async ({ req, res, log, error }) => { const key = req.headers['x-appwrite-key']; const client = new Client() .setEndpoint(process.env.APPWRITE_FUNCTION_API_ENDPOINT) .setProject(process.env.APPWRITE_FUNCTION_PROJECT_ID) .setKey(key);
const databases = new Databases(client);
// ENV variables for collection IDs const databaseId = process.env.APPWRITE_DATABASE_ID; const listsCollectionId = process.env.APPWRITE_LISTS_COLLECTION_ID; const itemsCollectionId = process.env.APPWRITE_ITEMS_COLLECTION_ID;
try { // Get all lists const listDocs = await databases.listDocuments(databaseId, listsCollectionId);
for (const list of listDocs.documents) {
const listId = list.$id;
// Fetch all items for this list
const allItems = await databases.listDocuments(databaseId, itemsCollectionId, [
Query.equal('list_id', listId)
]);
const totalItems = allItems.total;
const checkedItems = allItems.documents.filter(item => item.checked === true).length;
// Update the list document with the new counts
await databases.updateDocument(databaseId, listsCollectionId, listId, {
items_total: totalItems,
items_checked: checkedItems
});
}
return res.json({ success: true, message: 'All lists updated.' });
} catch (err) { error('Failed to update list counts: ' + err.message); return res.json({ success: false, error: err.message }); } };
I then added wildcards events that has caused infinite which has made my Appwrite Project blocked due to an excessive amount of function executions
["databases..collections..documents.*.create", ….] I can not access to my project to update the events. Can i get some help ?

@PA as mentioned on the email sent to you by the support team your function has been flagged and blocked to prevent your project from a billing bomb or excessive usage do to the recursive behavior you've implemented.
Our support team is already in contact with you and will help you understand how to prevent this and unpause your usage.

Appreciate the quick response.
I will wait for a reply from support and hope to resolve this asa from my side.
Recommended threads
- Barcode scanner help
Hi guys! I want to integrate a barcode scanner for my nutrition tracking app for school. However, I think because of the most recent update and the newest SDK...
- Implement sorting (by $createdAt) while ...
??
- Query Not Getting Results
I am trying to query my collection Categories. Initially, I tried to query by the documentId, but that yielded no results. I then added an index on $id, that ...
