Nathan Hennigh
Nathan Hennigh

Reputation: 115

Uncaught (in promise) RangeError: Maximum call stack size exceeded firebase

I am simply trying to add a record to the database with a cloud function. For some reason, I am getting the above error. This doesn't make sense as I am not making any calls inside the method. At first, I thought it might have something to do with a return, but I tried every combination of return or not returning and nothing worked. Please help

Here is how I call the cloud function

function sendFriendRequest(userUid)
{
    //userUid is user that will recieve request
    var curUser = firebase.auth().currentUser;
    userUid = userUid.substring(1);
    var sendRequest = firebase.functions().httpsCallable('sendFriendRequest');
    sendRequest({data: {sendingUser: curUser, recievingUser: userUid}}).then(function(result) {
        //No return
    });
}

Here is the cloud function

exports.sendFriendRequest = functions.https.onCall((data, context) => {
    console.log("Made it to sendFriendRequest");
    var requestedUserProfileRef = admin.database().ref("Users/" + data.data.recievingUser + "/FriendRequests");
    requestedUserProfileRef.child(data.data.sendingUser.uid).set(data.data.sendingUser.displayName);
    console.log("Finished sendFriendRequest");
});

Upvotes: 0

Views: 502

Answers (1)

Nathan Hennigh
Nathan Hennigh

Reputation: 115

I eventually figured this out and thought that I might as well share it with anyone who might need it in the future. So what was wrong was that I was passing in an object as the value for sendingUser. Apparently, you cant do that. Its a weird error and it doesn't seem to correspond to the actual error.

Upvotes: 3

Related Questions