-
Notifications
You must be signed in to change notification settings - Fork 7.7k
[autoscaler] Clarify head node commands in ray up output #63409
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
Merged
Merged
Changes from 91 commits
Commits
Show all changes
100 commits
Select commit
Hold shift + click to select a range
b11f807
[autoscaler] Clarify head node commands in ray up output
cyhapun 6882ea2
[CI] Skip premerge tests for doc/*.rst changes (#63198)
andrew-anyscale 89f64d0
[Data][LLM] Fix max_pending_requests default to track vLLM's GPU-depe…
Aydin-ab ae91f05
[core][train][data] Keep strong references to fire-and-forget asyncio…
XuQianJin-Stars 5b744e4
[Core] Fix OOM kill msg wrong threshold w/ resource isolation (#62948)
owenowenisme 9424218
[core] Fix accelerator detection on NVIDIA Blackwell consumer GPUs (#…
micah-yong-ai 39391dc
[autoscaler][Data] Accept fractional resource values in request_resou…
liulehui 6800a6b
Fix copy message typo in retry invoke (#63347)
werkt e2cdfe6
[serve] Deflake serve windows tests (#63281)
jeffreywang88 4ad7b90
[Data] Shut down executor when DataIterator exits early (#62949)
xinyuangui2 dc38386
[Data] Fix silent credential drop for fsspec-S3 in download expressio…
xyuzh 35a4d44
[RLlib] fix duplicated "that" in collector and env_runner comments (#…
oab24413gmai cb70ca7
[core] Deflake test_placement_group_status (#63288)
Yicheng-Lu-llll 31002a9
[RLlib] Add `custom_resources_per_learner` config (#63303)
ArturNiederfahrenhorst fc54a8c
[RLlib] Fix extra model outputs hanging val indexing (#62960)
Cursx 5e45e21
[Core]Fix actor creation race condition of #59642 (#62994)
YoyinZyc d7ea688
[serve][llm] Replace LLM ingress router replica selection with `choos…
jeffreywang88 af10163
[serve] Add ControllerOptions for configurable controller runtime_env…
kouroshHakha e74d0f6
[deps] unifying serve test deps (#63313)
elliot-barn 890218c
[data] Add `Dataset.mix()` release test microbenchmark (#63286)
justinvyu 1ef9745
[serve] Fix a potential `UnboundLocalError` in `ActorReplicaWrapper.…
chenshi5012 ba89f10
[Serve] Rename loop variable to avoid shadowing dataclasses.field (#6…
XuQianJin-Stars 5ba8e13
[train][data] Forward label_selector to AutoscalingCoordinator (#63287)
liulehui f6ec5d0
[Serve] Simplify background thread deployment method invocation test …
win5923 bbae81f
[docs] Fix broken Examples sidebar links on serve/llm/index page (#62…
prassanna-ravishankar 6fc5058
[serve] Default RAY_SERVE_HAPROXY_TCP_NODELAY to 1 (#63353)
kouroshHakha bcac70a
[data] DataSourceV2: enable V2 by default (#63326)
goutamvenkat-anyscale 3356531
[serve][llm] Configurable session-id header (RAY_SERVE_SESSION_ID_HEA…
kouroshHakha 4704596
[Serve] Fix replica constructor failure tests (#62862)
vaishdho1 d67e746
[Data] Display logical memory in progress bar (#63379)
bveeramani bb2c57a
[Data] Log RAY_DATA environment variables at execution start (#63380)
bveeramani df71bce
[Serve] Mark widely-used APIs as stable (#62932)
win5923 1a3fa8f
[Serve] Run health check on user execution path to detect request-ser…
claytonlin1110 a491d0f
[Data] Add scheduling-loop max metric to DatasetStatsSummary (#63345)
xinyuangui2 1e8f1d2
[Data] Remove docs recommending increased object store memory proport…
bveeramani 32be122
[LLM] Fix misleading ImportError when vLLM is installed but fails to …
ps2181 1f94a53
[runtime_env] Support .tar.gz archives for remote working_dir URIs (#…
ankushbbbr 174355b
fix: broken ray data link readme (#63412)
srini047 0317501
[Core] deflake test_autoscaler_e2e (#63421)
sampan-s-nayak 6e9c366
[RLlib] Deflake test_actor_manager with 30 sec timeout (#63423)
ArturNiederfahrenhorst 0bc67db
[autoscaler] Add BUILD target for test_cli_output_context
Hutaph 25f3eb6
[ci] Migrate tune test compute configs to new schema (#62879)
sai-miduthuri 644cbe7
[ci] Migrate serve and runtime_env compute configs to new schema (#62…
sai-miduthuri ddac3bf
[autoscaler] Add Bazel target for CLI output context test
Hutaph cdcd6bd
[autoscaler] Add runfiles for CLI output context test
Hutaph 9919f2d
[ci] Migrate specialized dataset compute configs to new schema (#62863)
sai-miduthuri 20c0900
[doc][DOC-933] add sphinxext-opengraph (#63343)
dstrodtman 93be956
[doc][DOC-941] unpin tf-keras: 2.20.0 was yanked (#63358)
dstrodtman 683f768
[core] Print function context when inspecting closures in inspect_ser…
prince8273 d2ce7bd
[Docs] Fix link text/target inconsistencies in cluster/key-concepts.r…
dstrodtman 2d3dc2f
[core] Warn when runtime_env package approaches upload size limit (#6…
lonexreb e5ec874
[Data] Deprecate ConcurrencyCapBackpressurePolicy (#63392)
bveeramani 572af92
[Train] Fix all of Train's pydoclint issues (#63365)
pseudo-rnd-thoughts 8d72590
[Data] Fail multimodal release tests on worker OOM by default (#63472)
bveeramani fdf3800
[Data] Add wide-schema worker_scaling release tests across [500, 1000…
xinyuangui2 831010a
[Data] Fail map_batches benchmark on worker OOM (#63474)
bveeramani fd647fd
[serve] Optional HAProxy retry knobs for ingress-request-router backe…
kouroshHakha 9f26053
AMD GPU: Replace rocm-smi ctypes binding with amd-smi Python interfac…
adam360x cfc2501
[Data] Gate unsafe deserialization in WebDataset default decoder (#63…
bveeramani a12779c
[data] DataSourceV2: don't disable pre_buffer in Parquet scanner opti…
goutamvenkat-anyscale 6f68d1f
[RLlib] Fix offline prelearner test (#63495)
ArturNiederfahrenhorst 1e9976c
[core] Fix `test_task_events.py::test_failed_task_runtime_env_setup` …
edoakes 284f1e2
[RLlib] Mark tests as not flakey (#63426)
ArturNiederfahrenhorst 73db78b
[RLlib] Fix test node failures teardown (#63491)
ArturNiederfahrenhorst 84e7358
[Data] Block pickle object columns when reading untrusted Parquet fil…
bveeramani dadac97
[Data] Cache deserialized Arrow schemas in BlockMetadataWithSchema (#…
xinyuangui2 d59dc85
[Train] Remove Predictor from train v1 (#63461)
pseudo-rnd-thoughts d2fe245
[doc][DOC-934] bump pydata-sphinx-theme 0.14.1 -> 0.17.1 (#63344)
dstrodtman 8fde4f7
[doc][DOC-942] add language_info.name to async-inference notebook (#6…
dstrodtman 883620c
[doc][DOC-935] bump myst-nb 1.0.0rc0 -> 1.4.0 (#63360)
dstrodtman d405ce1
[Data] Make logging configurable by RAY_DATA_LOG_LEVEL env var (#63487)
bveeramani 3d04cb8
[Core] Minor cleanup in cluster_resource_data (#63399)
dancingactor 47d9429
Fix runtime env cache not detecting changes in requirements.txt files…
Lucas61000 f664b5b
[serve][ci] Split flaky tests into CPU and GPU steps (#63372)
harshit-anyscale 9e1e07b
[data] add `read_parquet` metadata fetch memory regression test (#63376)
justinvyu 1a48813
[Data] Replace TaskDurationStats with DistributionTracker (#63488)
bveeramani 98bfef9
[Data] Move test_read_parquet_v2 out of unit tests (#63522)
goutamvenkat-anyscale 5aca5c7
Removed deprecated DeploymentMode (#63510)
johntaylor-cell 1e9264b
[doc][DOC-1044] restore active-page sidebar expansion under pydata 0.…
dstrodtman d1017e9
[Data] DataSourceV2: keep deprecated read_parquet args working with w…
goutamvenkat-anyscale 0da5691
[Data] Use precise return type for DistributionTracker.as_dict (#63530)
bveeramani c0e8c4a
[Data] Track peak USS memory per task via DistributionTracker (#63489)
bveeramani f040c3d
[data][llm] Create data in input dir for the checkpointing doc exampl…
jeffreywang88 96f43d7
[Data] Remove column renaming from the read stage (#63384)
goutamvenkat-anyscale e59fd2e
[RLlib] Put only one copy of weights into object store (#63529)
ArturNiederfahrenhorst b56e915
[jobs] Surface WebSocket close codes and errors in job log streaming …
ChangyuWang e0f2aca
[core] Improve WARNING message in inspect_serializability with action…
prince8273 3d55b13
[data] Stabilize parquet memory growth regression test
TruongQuangPhat eeeecaf
Merge upstream master and resolve conflicts
TruongQuangPhat 4a5e3d0
Move pure Python tests to unit test directories
TruongQuangPhat 50fb1fe
Merge branch 'master' into master
Hutaph 9e1890b
[data][ci] Fix lint failures from parquet schema test move
Hutaph 761a944
[core][ci] Remove duplicate GCS actor manager tests
Hutaph bb4edb9
Merge branch 'master' into master
Hutaph 8ec066c
[core][data] Fix microcheck unit test failures
Hutaph 25fca55
Merge branch 'master' into master
edoakes c724a65
Merge branch 'master' into master
Hutaph 5ec7ad4
[data] Fix pyrefly check for parquet schema inference test
Hutaph 4c36f36
Merge branch 'master' into master
Hutaph 9289d35
[autoscaler] Remove unrelated data changes
Hutaph File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| """Lightweight CLI output helpers for cluster launcher context notes. | ||
|
|
||
| These functions produce informational output that disambiguates head-node | ||
| commands from local-machine commands. They have NO dependency on the ``ray`` | ||
| C++ runtime and accept ``cli_logger`` / ``cf`` as explicit parameters so they | ||
| can be tested in isolation. | ||
| """ | ||
|
|
||
|
|
||
| def print_next_steps_context_note(cli_logger, cf): | ||
| """Print a dimmed note at the top of the 'Next steps' block. | ||
|
|
||
| Informs the user that the commands below are intended for the head node | ||
| or for machines within the cluster network. | ||
| """ | ||
| cli_logger.print(cf.dimmed("Note: The following commands are intended for use on")) | ||
| cli_logger.print(cf.dimmed("the head node or within the cluster network.")) | ||
| cli_logger.newline() | ||
|
|
||
|
|
||
| def print_head_node_context_separator(cli_logger, cf): | ||
| """Print a visual separator and context note after head-node output. | ||
|
|
||
| Used by ``ray up`` to separate the streamed ``ray start`` output from | ||
| the local-machine commands that follow. | ||
| """ | ||
| cli_logger.print(cf.dimmed("-" * 60)) | ||
| cli_logger.print( | ||
| cf.dimmed("Note: The output above is from the head node (via `ray start`).") | ||
| ) | ||
| cli_logger.print( | ||
| cf.dimmed(" Commands shown in 'Next steps' may only work from the head node") | ||
| ) | ||
|
cursor[bot] marked this conversation as resolved.
|
||
| cli_logger.print(cf.dimmed(" or from within the cluster network.")) | ||
| cli_logger.newline() | ||
|
|
||
|
|
||
| # Group heading used by ``ray up`` for the local commands section. | ||
| USEFUL_COMMANDS_HEADING = "Useful commands for your local machine:" | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
68 changes: 68 additions & 0 deletions
68
python/ray/data/tests/unit/test_parquet_schema_inference.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| import pytest | ||
| import pyarrow as pa | ||
| import pyarrow.dataset as pds | ||
| import pyarrow.fs as pafs | ||
| import pyarrow.parquet as pq | ||
| from packaging.version import parse as parse_version | ||
|
|
||
| from ray._common.utils import get_pyarrow_version | ||
| from ray.data._internal.datasource.parquet_datasource import _infer_schema | ||
|
|
||
| def test_read_parquet_memory_growth(tmp_path, monkeypatch): | ||
| """Schema inference should not inspect every fragment on PyArrow >= 22. | ||
|
|
||
| Regression test for a bug where _infer_schema fell back to reading every | ||
| fragment's physical_schema when the sampled fragment had a pa.null() column | ||
| (PyArrow < 22.0), causing O(N) metadata reads and memory usage. | ||
| """ | ||
| if get_pyarrow_version() < parse_version("22.0.0"): | ||
| pytest.skip("Bounded permissive schema inspection requires PyArrow >= 22.0.0") | ||
|
|
||
| num_cols = 50 | ||
| num_files = 1000 | ||
| inspect_num_fragments = 1 | ||
|
|
||
| def _write_files(directory, n_files): | ||
| directory.mkdir(exist_ok=True) | ||
| for i in range(n_files): | ||
| cols = {f"col_{j}": [0] for j in range(num_cols)} | ||
| # First file has a column of all nulls, which triggers the schema inference fallback. | ||
| if i == 0: | ||
| cols["null_col"] = pa.nulls(1) | ||
| else: | ||
| cols["null_col"] = [1] | ||
| pq.write_table(pa.table(cols), directory / f"part_{i:05d}.parquet") | ||
|
|
||
| _write_files(tmp_path, num_files) | ||
|
|
||
| inspect_calls = [] | ||
| real_factory = pds.FileSystemDatasetFactory | ||
|
|
||
| # RSS deltas for this code path are sub-MiB in CI, so check the bounded | ||
| # schema-inspection behavior directly instead of comparing process memory. | ||
| class TrackingFactory: | ||
| def __init__(self, *args, **kwargs): | ||
| self._factory = real_factory(*args, **kwargs) | ||
|
|
||
| def inspect(self, **kwargs): | ||
| inspect_calls.append(kwargs) | ||
| return self._factory.inspect(**kwargs) | ||
|
|
||
| def finish(self, *args, **kwargs): | ||
| pytest.fail("Schema inference should not inspect every fragment") | ||
|
|
||
| monkeypatch.setattr(pds, "FileSystemDatasetFactory", TrackingFactory) | ||
|
|
||
| schema = _infer_schema( | ||
| [str(path) for path in sorted(tmp_path.iterdir())], | ||
| inspect_num_fragments=inspect_num_fragments, | ||
| filesystem=pafs.LocalFileSystem(), | ||
| ) | ||
|
|
||
| assert inspect_calls == [ | ||
| { | ||
| "fragments": inspect_num_fragments, | ||
| "promote_options": "permissive", | ||
| } | ||
| ] | ||
| assert "null_col" in schema.names |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.