Generalize TicketHolder to support pluggable concurrency primitives and policies

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Catalog and Routing
    • Fully Compatible
    • CAR Team 2026-02-16, CAR Team 2026-03-02, CAR Team 2026-03-16
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      The TicketHolder class currently supports only a single concurrency primitive, a Semaphore, and uses a "random" policy to manage ticket acquisition.

      As part of Execution Control, we are exploring the use of multiple TicketHolder instances that leverage different concurrency primitives and scheduling policies. Specifically, we want to introduce support for a Priority Queue using policies such as Least Attained Service (LAS).

      This ticket aims to refactor and generalize the TicketHolder class. The objective is to make it agnostic of the underlying concurrency primitive and the specific policy used to prioritize and manage waiters.

            Assignee:
            Pol Pinol
            Reporter:
            Pol Pinol
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: