[ 
https://issues.apache.org/jira/browse/NIFI-13146?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Payne resolved NIFI-13146.
-------------------------------
    Fix Version/s: 2.0.0-M3
       Resolution: Fixed

> ConsumeSlack processor rate limited
> -----------------------------------
>
>                 Key: NIFI-13146
>                 URL: https://issues.apache.org/jira/browse/NIFI-13146
>             Project: Apache NiFi
>          Issue Type: Improvement
>            Reporter: Zsihovszki Krisztina
>            Assignee: Zsihovszki Krisztina
>            Priority: Major
>             Fix For: 2.0.0-M3
>
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> ConsumeSlack processor was not able to start when it was running in a Slack 
> workplace with thousands of channels. It got stuck in initialization phase 
> and reported rate limit error continuously.
> The processor fetches all available channels (conversation list) during its 
> setup and creates a channel id/name mapping. 
> Fetching the conversation list items is executed in batches, 1000 
> channels/batch. Since the fetch is done continously, after a while Slack API 
> returns rate limit error. (Rate limit settings were at default in Slack.)
> Even if some delay was added after each API call, 30 seconds was not enough 
> to fetch all the channels (since it is in onScheduled, after 30 seconds the 
> initialization is re-attempted)
> As a mitigation for the problem I'd like to add a logic which checks if 
> "Channels" property contains only IDs. In case no channel name is specified, 
> another Slack API call (
> [conversations.info|https://api.slack.com/methods/conversations.info]) can be 
> used to fetch the channel names for the channel IDs and it is not necessary 
> to fetch the whole conversation list.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to