I'm currently testing out the new firestore but I always get the same problem that it tells me something about Deadline exceeded
{ Error: Deadline Exceeded
at /user_code/node_modules/firebase-admin/node_modules/grpc/src/node/src/client.js:554:15
code: 16,
metadata: Metadata { _internal_repr: {} },
note: 'Exception occurred in retry method that was not classified as transient' }
This is my current code which seems fine (and works when I deploy it to Firebase)
const functions = require('firebase-functions');
const admin = require('firebase-admin');
var serviceAccount = require("./xxxxxxxx-firebase-adminsdk.json");
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://xxxxxxxxx-xxxx.firebaseio.com"
});
exports.registerUser = functions.auth.user().onCreate(event => {
admin.firestore().collection('users').doc(event.data.uid).set({
name: 'Test User',
country: 'USA'
}).catch(error => {
console.log(error);
})
});
It also shows this message Function returned undefined, expected Promise or value
With Cloud Functions triggers, you need to return a promise that becomes resolved when the work is complete. The set() method on the document return a promise, so you should return it to let Cloud Functions know when it's safe to clean up the function:
exports.registerUser = functions.auth.user().onCreate(event => {
return admin.firestore().collection('users').doc(event.data.uid).set(...)
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With