quickwit-oss / quickwit-oss/quickwit

Remove "actor are stopping when they detect there are no more messages" functionality

Open
#574 2 comments 0 reactions 1 assignee View on GitHub

@fulmicoton is already working on this.

Since Mar 29, 2022.

enhancement
Dominant language
Rust
Stars
11.7k
Forks
597
Avg merge
2d 22h
Merged PRs (30d)
37

Description

Right now Actor stop as soon as they detect no one will ever send them a message.

This is done by checking the refcount over their mailbox. Once it reaches 1, it means only their copy (in the actor context) exists and no new message will come.

While this sounds neat, it implies a lot of papercuts to enforce.

For instance,

  • The actor handle does not expose the actor mailbox directly. (That would break our refcount mechanism)
  • Therefore spawning returns (Mailbox, ActorHandle)
  • Self scheduling breaks the logic, therefore we still need to send a termination message.

The suggestion is to remove this functionality and force the chain of actor to send a quit command downstream.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.