Skip to content

Releases: tarantool/sharded-queue

1.0.0

17 Apr 09:58
Compare
Choose a tag to compare

Overview

The release introduces roles for Tarantool 3 and improves the module metrics.

Breaking changes

  • Metric sharded_queue_calls renamed to tnt_sharded_queue_api_statistics_calls_total (#71).
    The metric now has labels in the format {name = "tube_name", state = "call_type"} instead of {name = "tube_name", status = "call_type"}.
  • Metric sharded_queue_tasks renamed to tnt_sharded_queue_api_statistics_tasks (#71).
    The metric now has labels in the format {name = "tube_name", state = "task_state"} instead of {name = "tube_name", status = "task_state"}.
  • The dependency cartridge is removed from the rockspec since the module does not require it to work with Tarantool 3 (#68).

New features

  • Role roles.sharded-queue-router for Tarantool 3 (#68).
  • Role roles.sharded-queue-storage for Tarantool 3 (#68).
  • Metric tnt_sharded_queue_api_role_stats is a summary with quantiles of sharded_queue.api role API calls (#71). The metric includes a counter of API calls and errors.
    The metric contains labels in the following format:
    {name = "tube_name", method = "api_call_method", status = "ok" or "error"}
  • Metric tnt_sharded_queue_storage_role_stats is a summary with quantiles of sharded_queue.storage role API calls (#71). The metric includes a counter of API calls and errors.
    The metric contains labels in the following format:
    {name = "tube_name", method = "api_call_method", status = "ok" or "error"}
  • Metric tnt_sharded_queue_storage_statistics_calls_total as an equivalent of tnt_sharded_queue_api_statistics_calls_total for the sharded_queue.storage role. (#71) Values have the same meaning as the queue statistics calls table.
    The metric contains labels in the following format:
    {name = "tube_name", state = "call_type"}
  • Metric tnt_sharded_queue_storage_statistics_tasks as an equivalent of tnt_sharded_queue_api_statistics_tasks for the sharded_queue.storage role (#71). Values have the same meaning as the queue statistics tasks table.
    The metric contains labels in the following format:
    {name = "tube_name", state = "task_state"}

Bugfixes

  • Data race with fifo driver for put()/take() methods with vinyl engine (#64).

0.1.1

06 Sep 13:38
Compare
Choose a tag to compare

The release fixes the loss of tasks in the fifottl driver.

Breaking changes

None.

Bugfixes

  • A deletion of a released task after ttr in the fifottl driver (#65).

0.1.0

19 Jun 13:27
Compare
Choose a tag to compare

Overview

The first release provides cartridge roles that implement a distributed message broker API, which is compatible with the Tarantool queue module.

Please note that sharded-queue is not actually a queue, it implements a message broker. The order of task identifiers is not guaranteed between different shards (over the whole cluster).

The module is included in tarantool/sdk.

New features

  • A Cartridge role for storages - sharded_queue.storage.

  • A Cartridge role for api calls from a Cartridge application - shareded_queue.api.

  • fifo API compatible driver with fifor driver in queue module.

  • fifottl API compatible driver with fifottl driver in queue module.

  • Metrics support for the api role (#55).
    The sharded-queue exports two metrics:

    • sharded_queue_calls
    • sharded_queue_tasks

    Which are similar to api.statistics() call result.

    The feature is enabled by default, but it could be disabled via a cluster-wide config:

    tubes:
      tube_1:
        ...
      cfg:
        metrics: false
    
  • _VERSION field for roles (#58).

Other

  • Testing CI (#53).
  • Linter check on CI (#18).
  • Publish CI (#54).