You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@yunikorn.apache.org by "Peter Bacsko (Jira)" <ji...@apache.org> on 2023/05/17 13:50:00 UTC
[jira] [Updated] (YUNIKORN-1709) Add event streaming logic
[ https://issues.apache.org/jira/browse/YUNIKORN-1709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Peter Bacsko updated YUNIKORN-1709:
-----------------------------------
Target Version: 1.4.0
> Add event streaming logic
> -------------------------
>
> Key: YUNIKORN-1709
> URL: https://issues.apache.org/jira/browse/YUNIKORN-1709
> Project: Apache YuniKorn
> Issue Type: Sub-task
> Components: core - scheduler
> Reporter: Peter Bacsko
> Assignee: Peter Bacsko
> Priority: Major
> Labels: pull-request-available
>
> In order to send events to listeners, we need to store EventRecord types in a different data structure.
> When a client connects, it might require us that we send the last "x" amount of events or the events that occurred in the last 30 seconds, etc.
> But we cannot store events without limits. The data structure that suits our needs is a slightly modified ring buffer:
> * two pointers: head (oldest), tail
> * don't block when we overwrite the oldest entry, just update tail
> * entries are not removed when retrieved by a consumer
> * background goroutine performs the cleanup
> Requirement for storage:
> * last "n" events
> * events from the last "n" seconds (duration)
> We want to support consumers who are listening for events. Every client is served on a separate goroutine to avoid blocking. Slow consumers (ie. channel buffer full) are automatically removed.
> Scope of this JIRA:
> * new data structure
> * integration with existing code
> * consumer registration / event update logic
> * configuration entries
> * cleanup logic
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@yunikorn.apache.org
For additional commands, e-mail: issues-help@yunikorn.apache.org