-
Notifications
You must be signed in to change notification settings - Fork 373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
firestore-send-email sets document state to PROCESSING indefinitely #574
Comments
Hi @bdiz Can you confirm there are no errors in your logs for the extensions? Additionally, I noticed that your protocol is |
Hi @dackers86 No function errors (just infos and debug messages), but the last two messages are noteworthy. Providing all messages for your reference. Using |
Hey @bdiz, have you tried port |
Hi @russellwheatley , with I'll notify Postmark support of this issue, as they believe port 25 should work. Also, as I mentioned previously it does work on port 25 when sent via nodemailer in a node REPL. I'm wondering if there is an enhancement that could get it working in this extension, and at a minimum provide better debug messages vs timing out in the Thank you for looking this over and providing these suggestions. |
Hello, chiming in from Postmark's support perspective 👋 We offer ports I couldn't find a blocked port list in Firebase's docs, but I see that Google Computer Engine blocks port 25 so it wouldn't surprise me if they started to use a similar rule here. |
Thanks for the feedback, folks. Glad it worked @bdiz. What @briankerr said sounds correct to me. The Firebase cloud functions are using Google Cloud Platform so it is safe to assume that port 25 is simply being blocked. |
@russellwheatley Can extension error be updated to indicate blocked ports?
At a minimum can the extension docs be updated with this info?
…On Wed, Jan 27, 2021, 3:13 AM Russell Wheatley ***@***.***> wrote:
Thanks for the feedback, folks. Glad it worked @bdiz
<https://github.com/bdiz>. What @briankerr <https://github.com/briankerr>
said sounds correct to me. The Firebase cloud functions are using Google
Cloud Platform so it is safe to assume that port 25 is simply being blocked.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#574 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAHGWOWA7UOZXL2R7ZXZHD3S37KL5ANCNFSM4WPYWO2Q>
.
|
That makes sense to me. We should probably update the docs to inform users. |
Initial PR added at #582 |
[REQUIRED] Step 2: Describe your configuration
[REQUIRED] Step 3: Describe the problem
Steps to reproduce:
When adding a document to my emails collection, I am getting an indefinite
state
ofPROCESSING
.Expected result
Expected the
state
to move beyondPROCESSING
and send the mail.Actual result
The document persists in the following state indefinitely.
Details:
I am using Postmark. My smtp URI looks like
smtp://<POSTMARK_API_TOKEN>:<POSTMARK_API_TOKEN>@smtp.postmarkapp.com:25
. Postmark uses an API key with only hex characters and dashes so special characters doesn't seem like it would be the issue. The username and password for postmark are the same, the API token.Debug:
I tried this smtp URI with nodemailer in a node repl locally and I was able to send an email successfully so it doesn't seem to be the Postmark smtp URI.
I also dug into the extensions code a little bit. In the extension, upon the create of the initial document, the cloud function updates
attempts
to 0 andstate
toPENDING
. But what I see when observing the document in the firebase console isattempts
are 0 and state isPROCESSING
.Looking at the switch statement for
PENDING
, it sets state toPROCESSING
and then should calldeliver()
.extensions/firestore-send-email/functions/src/index.ts
Lines 325 to 337 in 3aa9fd5
However, if
deliver()
was called at all, why wouldattempts
remain 0? My logs confirm that the "Attempting delivery..." message is not present either.Is there something with
await admin.firestore().runTransaction
where it might be hanging there (though update ofstate
toPROCESSING
goes through)? I see there is a comment in the code about issue #48. Not sure if the issues there are still causing issues with this firebase extension.The text was updated successfully, but these errors were encountered: