getsentry/rust_arroyo

Make Partition/Message structures reference a 'static Topic

Open

#11 geöffnet am 20. Mai 2022

Auf GitHub ansehen
 (0 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Rust (0 Forks)auto 404
good first issue

Repository-Metriken

Stars
 (2 Stars)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

Topics are created at the startup of the application and live for its entire duration. We can make this a requirement for the time being. That means that partitions and messages do not need to own an instance of a Topic as they do here https://github.com/getsentry/rust_arroyo/blob/main/src/types/mod.rs#L35.

The current implementation means that every time we create a partition we make a copy of the topic. If we make the lifetime of Topic 'static, we should be able to make Partition reference a Topic instead.

A fancier version would be to still make Partition reference a Topic, but giving it a specific lifetime so that an application can instantiate Topics dynamically, but still tie the lifetime of all partitions to the lifetime of the Topic.

Contributor Guide