Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert scheduler changes. #4219

Merged
merged 1 commit into from
Nov 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@ New:
- Added `video.canvas` to make it possible to position video elements independently
of the rendered video size ([#3656](https://github.com/savonet/liquidsoap/pull/3656), [blog post](https://www.liquidsoap.info/blog/2024-02-10-video-canvas-and-ai/))
- Added cover manager from an original code by @vitoyucepi (#3651)
- Reworked scheduler queues logic, allow user-defined queues, add options to pick
the queue to send asynchronous tasks to (#4151)
- Added non-interleaved API to `%ffmpeg` encoder, enabled by default when only
one stream is encoded.
- Allow trailing commas in record definition (#3300).
Expand Down
6 changes: 6 additions & 0 deletions doc/content/liq/radiopi.liq
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@ settings.harbor.bind_addrs.set(["0.0.0.0"])
# Verbose logs
log.level.set(4)

# We use the scheduler intensively,
# therefore we create many queues.
settings.scheduler.generic_queues.set(5)
settings.scheduler.fast_queues.set(3)
settings.scheduler.non_blocking_queues.set(3)

# === Settings ===

# The host to request files
Expand Down
5 changes: 0 additions & 5 deletions doc/content/liq/task-example.liq

This file was deleted.

12 changes: 0 additions & 12 deletions doc/content/liq/task-with-queue.liq

This file was deleted.

26 changes: 0 additions & 26 deletions doc/content/migrating.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,32 +76,6 @@ def transition(old, new) =
end
```

### Thread queues

In order to improve issues with complex inter-dependent asynchronous tasks, scheduler queues have been updated.

User-provided named queues can now be created and used to send asynchronous tasks, making it possible to control
concurrency of certain classes of tasks and also to remedy any potential dependency between asynchronous tasks.

Settings for queues have thus changed and now will look like this:

```liquidsoap
# Add a custom queue with 4 workers, increase generic queues to 4:
settings.scheduler.queues.set([
...list.assoc,remove("generic", settings.scheduler.queues()),
("generic", 4),
("custom", 4)
]
```

The `fast` argument of the `thread.run.*` functions has been replaced by `queue`, telling the operator which queue should the
asynchronous tasks sent to.

Likewise, `request.dynamic`, `playlist`, `single` etc. have also been updated to accept a `thread_queue` argument controlling
which asynchronous queue their request resolution tasks should be sent to.

See [the threads page](threads.html) for more details.

### Replaygain

- There is a new `metadata.replaygain` function that extracts the replay gain value in _dB_ from the metadata.
Expand Down
37 changes: 0 additions & 37 deletions doc/content/threads.md

This file was deleted.

Loading
Loading