Repository navigation
Lazy listeners do not work with Chalice local testing server #490
Description
Activity
- addedquestionFurther information is requestedFurther information is requested
on Oct 8, 2021 Hi @Cyb-Nikh, thanks for writing in!
It seems that you're using Chalice's local testing server. Can I ask you to make sure if the same situation arises without Chalice handler? To verify this, you can use
App#start(), Flask adapter or any other adapters. If the issue is specific to Chalice use cases, we can narrow down the issue and may be able to resolve it more quickly.Hi @seratch, thanks for the response.
Yes, I'm using Chalice local testing server. I tried using bolt app#start(), it worked perfectly fine. It seems the issue is specific to chalice.- changed the title
[-]BrokenPipeError while responding back to a slack event in more than 3 seconds[/-][+]Lazy listeners do not work with Chalice local testing server[/+]on Oct 10, 2021 @Cyb-Nikh Thanks for sharing the result. Unfortunately, we don't have the bandwidth to resolve this issue in the short term. If you figure out how to fix this issue, your pull requests are always welcome!
As an immediate workaround, I would recommend using Flask dev server for your local development while still using Chalice for production deployments. For instance, your project structure can be:
- bolt_app.py (configure
Appinstance) - local.py (import the
appfrombolt_app.pyand run the app with the default web server or Flask etc.) - prod.py (import the
appfrombolt_app.pyand create Chalice handler)
With this way, you use only
bolt_app.pyandprod.pyfor production deployments.I hope this was helpful.
- bolt_app.py (configure
- addedbugSomething isn't workingSomething isn't workingand removedquestionFurther information is requestedFurther information is requested
on Oct 10, 2021 Thanks for the suggestion @seratch. This can be used as a temporary solution, though I would definitely try to dig further into the possible approach.
- addedenhancementNew feature or requestNew feature or requestand removedbugSomething isn't workingSomething isn't working
on Jan 28, 2022
I want to perform operations when a member has joined a channel which takes more than 5 seconds, but I'm getting BrokenPipeError: [Errno 32] Broken pipe.
The minimal step to reproduce the same has been shown below while using the lazy listener it waits for 10 seconds before responding back.
Reproducible in:
The
slack_boltversionslack-bolt==1.9.1
slack-sdk==3.11.1
Python runtime version
Python 3.6.15
OS info
Ubuntu 20.04.3 LTS
Steps to reproduce:
Expected result:
Since the event is acknowledging the Slack within 3 seconds irrespective of the lazy listener function time, it should have processed the same.
Actual result:
Requirements
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.