Skip to content

Commit 39ba86b

Browse files
authored
Add deprecation warnings for Ray Workflows and cluster-wide storage (#51309)
Ray Workflows is an experimental library that has gone unmaintained for quite some time, so it's being explicitly deprecated. The Ray cluster-wide `storage` configuration was added for Workflows and was also never maintained beyond adding the experimental version, so it's being deprecated alongside it. This PR adds: - A warning banner to the workflows documentation pages and sidebar. - A printed warning on `ray.workflow` import. - A deprecation notice in the docstring and CLI help string for `storage` - A printed warning on `storage` usage in `ray.init` or `ray start`. --------- Signed-off-by: Edward Oakes <ed.nmi.oakes@gmail.com>
1 parent 2ab8188 commit 39ba86b

File tree

12 files changed

+62
-14
lines changed

12 files changed

+62
-14
lines changed

doc/source/ray-more-libs/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ More Ray ML Libraries
1111
raydp
1212
mars-on-ray
1313
modin/index
14-
Ray Workflows (Alpha) <../workflows/index>
14+
Ray Workflows (Deprecated) <../workflows/index>
1515

1616

1717
.. TODO: we added the three Ray Core examples below, since they don't really belong there.

doc/source/workflows/advanced.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Advanced Topics
22
===============
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
Skipping Checkpoints
510
--------------------
611

@@ -21,4 +26,4 @@ Checkpoints can be skipped by specifying ``checkpoint=False``:
2126
2227
This example skips checkpointing the output of ``read_data``. During recovery, ``read_data`` would be executed again if recovery requires its output.
2328

24-
If the output of a task is another task (i.e., for dynamic workflows), we skip checkpointing the entire task.
29+
If the output of a task is another task (i.e., for dynamic workflows), we skip checkpointing the entire task.

doc/source/workflows/basics.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
Getting Started
22
===============
33

4-
.. note::
5-
Workflows is a library that provides strong durability for Ray task graphs.
6-
If you’re brand new to Ray, we recommend starting with the :ref:`core walkthrough <core-walkthrough>` instead.
4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
79

810
Your first workflow
911
-------------------

doc/source/workflows/comparison.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
API Comparisons
22
===============
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
Comparison between Ray Core APIs and Workflows
510
----------------------------------------------
611
Ray Workflows is built on top of Ray, and offers a mostly consistent subset of its API while providing durability. This section highlights some of the differences:

doc/source/workflows/events.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Events
22
======
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
To allow an event to trigger a workflow, Ray Workflows supports pluggable event systems. Using the event framework provides a few properties.
510

611
1. Waits for events efficiently (without requiring a running workflow task while waiting).

doc/source/workflows/index.rst

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@ Ray Workflows: Durable Ray Task Graphs
1717

1818
.. warning::
1919

20-
Ray Workflows is available as **alpha** in Ray 2.0+. Expect rough corners and
21-
for its APIs and storage format to change. Please file feature requests and
22-
bug reports on GitHub Issues or join the discussion on the
23-
`Ray Slack <https://www.ray.io/join-slack>`__.
20+
The experimental Ray Workflows library has been deprecated and will be removed in a
21+
future version of Ray.
2422

2523
Ray Workflows implements high-performance, *durable* application workflows using
2624
Ray tasks as the underlying execution engine. It enables task-based Ray jobs

doc/source/workflows/key-concepts.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Key Concepts
22
------------
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
.. note::
510
Workflows is a library that provides strong durability for Ray task graphs.
611
If you’re brand new to Ray, we recommend starting with the :ref:`core walkthrough <core-walkthrough>` instead.

doc/source/workflows/management.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Workflow Management
22
===================
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
Workflow IDs
510
------------
611
Each workflow has a unique ``workflow_id``. By default, when you call ``.run()``

doc/source/workflows/metadata.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Workflow Metadata
22
=================
33

4+
.. warning::
5+
6+
The experimental Ray Workflows library has been deprecated and will be removed in a
7+
future version of Ray.
8+
49
Observability is important for workflows - sometimes we not only want
510
to get the output, but also want to gain insights on the internal
611
states (e.g., to measure the performance or find bottlenecks).

python/ray/_private/worker.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,10 +1412,8 @@ def init(
14121412
namespace: A namespace is a logical grouping of jobs and named actors.
14131413
runtime_env: The runtime environment to use
14141414
for this job (see :ref:`runtime-environments` for details).
1415-
storage: [Experimental] Specify a URI for persistent cluster-wide storage.
1416-
This storage path must be accessible by all nodes of the cluster, otherwise
1417-
an error will be raised. This option can also be specified as the
1418-
RAY_STORAGE env var.
1415+
storage: [DEPRECATED] Cluster-wide storage configuration is deprecated and will
1416+
be removed in a future version of Ray.
14191417
_enable_object_reconstruction: If True, when an object stored in
14201418
the distributed plasma store is lost due to node failure, Ray will
14211419
attempt to reconstruct the object by re-executing the task that
@@ -1673,6 +1671,12 @@ def sigterm_handler(signum, frame):
16731671
else:
16741672
driver_mode = SCRIPT_MODE
16751673

1674+
if storage is not None:
1675+
warnings.warn(
1676+
"Cluster-wide storage configuration is deprecated and will be removed in a "
1677+
"future version of Ray."
1678+
)
1679+
16761680
global _global_node
16771681

16781682
if global_worker.connected:

0 commit comments

Comments
 (0)