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/04/28 15:21: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:
-----------------------------------
    Summary: Add event streaming logic  (was: Store events separately for event streaming)

> 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)
> Scope of this JIRA: 
> * new data structure
> * integration with existing code
> * 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