Commit graph

13347 commits

Author SHA1 Message Date
SangBin Cho
079ae9f013
[Test] Fix flaky OSX shuffle (#26158)
Seems like the last RPC is failing after shuffle succeeds. Adding retry to fix the issue.
2022-07-06 11:16:09 -07:00
brucez-anyscale
84166ccb04
[Dashboard][Serve] Move Serve related endpoints to dashboard agent (#26107)
In Ray 2.0, we want to achieve api server HA.
Originally serve endpoints are in head node.
This pr moves serve endpoints to dashboard agents, so they will be HA due to multiple replica of dashboard agent.
2022-07-06 10:58:00 -07:00
Chen Shen
29358f9677
[Core][Doc] add docs for out of disk prevention. (#26291)
Update docs to reflect the out of disk prevention feature.
2022-07-06 07:37:54 -07:00
Steven Morad
0bc465f687
[RLlib] Fix docstring and add unit tests for rnn sequencing. (#26197) 2022-07-06 14:32:57 +02:00
Tao Wang
b3ba1e7ea2
[Test]Disable java call cpp actor case for now (#26288) 2022-07-06 19:53:30 +08:00
liuyang-my
a6ad48d778
[Serve] Java Client API and End to End Tests (#22726) 2022-07-05 21:19:18 -07:00
Antoni Baum
d1966899bb
[Docs] Small fix to AIR examples descriptions (#26227) 2022-07-05 17:16:56 -07:00
Jiao
89b0b82c13
[Deployment Graph] Move Deployment creation outside to build function (#26129) 2022-07-05 16:38:02 -07:00
Dmitri Gekhtman
34f1b32861
[K8s][Ray Operator] Ignore resource requests when detected container resources. (#26234)
When detecting resource capacities to advertise to Ray, the Ray operator takes into account requests. This doesn't make sense -- taking a min of resources and limits definitely doesn't make sense. Only limits should be considered.
2022-07-05 15:19:16 -07:00
Guyang Song
cf7305a2c9
Revert "[Core] Add retry exception allowlist for user-defined filteri… (#26289)
Closes #26287.
2022-07-05 15:17:36 -07:00
xwjiang2010
84279286df
[ci] pin gpustat (#26311) 2022-07-05 15:05:20 -07:00
xwjiang2010
d0dfbe09e3
[tune] fix set_tune_experiment (#26298) 2022-07-05 15:04:51 -07:00
Simon Mo
88a219c7f2
Revert "Revert "[AIR][Serve] Rename ModelWrapperDeployment -> PredictorDeployment"" (#26231) 2022-07-05 13:26:49 -07:00
Amog Kamsetty
6f683c8d1c
[Release] Use nightly base images for release tests (#25373)
Revert back to using nightly base images instead of pinning to 1.12.1. Pinning the docker image had led to uncaught errors in the past. Instead, we should be using nightly to make sure release tests will work on the most up to date versions of docker/cluster envs. If there are any test failures, the underlying issues should be fixed rather than pinning the docker image.

Co-authored-by: Kai Fricke <kai@anyscale.com>
2022-07-05 10:58:53 -07:00
mwtian
ccabba88ae
Revert "[Core] fix gRPC handlers' unlimited active calls configuration (#25626)" (#26202)
Reverts #25626

Closes #26195.
2022-07-05 09:15:05 -07:00
Christy Bergman
5b44afe9c1
[RLlib] Some Docs fixes (2). (#26265) 2022-07-05 15:46:32 +02:00
Kai Yang
7ea9d91e1a
[C++ worker] Refine worker context and more (#26281)
* Avoid depending on `CoreWorkerProcess::GetCoreWorker()` in local mode.
* Fix bug in `LocalModeObjectStore::PutRaw`.
* Remove unused `TaskExecutor::Execute` method.
* Use `Process::Wait` instead of sleep when invoking `ray start` and `ray stop`.
2022-07-05 13:47:28 +08:00
Frank Luan
6f7efa69d5
Fix file_system_monitor.cc message (#26143)
I'm seeing these errors

(raylet, ip=172.31.58.175) [2022-06-28 03:48:42,324 E 702775 702805] (raylet) file_system_monitor.cc:105: /mnt/data0/ray is over 0.95% full, available space: 50637901824. Object creation will fail if spilling is required.
They should be 95% instead of 0.95%.
2022-07-04 21:56:29 -07:00
Kai Yang
ba642dd271
[Java] Make Java test more stable (#26282)
If compile Ray in debug mode,

* run `MetricsTest:: testAddHistogram` will crash with below error message:

```
BucketBoundaries::Explicit called with non-monotonic boundary list.
java: external/io_opencensus_cpp/opencensus/stats/internal/bucket_boundaries.cc:64: opencensus::stats::BucketBoundaries::Explicit(std::__debug::vector<double>)::<lambda()>: Assertion `false && "0"' failed.
```

*  run `NamespaceTest::testIsolationInTheSameNamespaces` can fail with great possibility with below error message:

```
java.util.NoSuchElementException: No value present
	at java.util.Optional.get(Optional.java:135)
	at io.ray.test.NamespaceTest.lambda$testIsolationInTheSameNamespaces$2(NamespaceTest.java:39)
	at io.ray.test.NamespaceTest.testIsolation(NamespaceTest.java:116)
	at io.ray.test.NamespaceTest.testIsolationInTheSameNamespaces(NamespaceTest.java:36)
```
2022-07-05 11:18:19 +08:00
xwjiang2010
b08a968b6b
[air] Do not warn of checkpoint_dir if it's coming from us (base_trainer). (#26259)
Currently, the following information will be printed even the user is not directly using a tune function. This is confusing and not actionable.

```
 "`checkpoint_dir` in `func(config, checkpoint_dir)` is "
                    "being deprecated. "
                    "To save and load checkpoint in trainable functions, "
                    "please use the `ray.air.session` API:\n\n"
                    "from ray.air import session\n\n"
                    "def train(config):\n"
                    "    # ...\n"
                    '    session.report({"metric": metric}, checkpoint=checkpoint)\n\n'
                    "For more information please see "
                    "https://docs.ray.io/en/master/ray-air/key-concepts.html#session\n"
```

The new logic check if `base_trainer` is in the call stack and only adds the warning message when it is not. The new logic will be removed once internally we migrate to use `session` API.
2022-07-03 20:29:15 -04:00
Cheng Su
11a24d6ef1
[Datasets] Support drop_columns API (#26200) 2022-07-03 14:41:54 -07:00
Cheng Su
7360452d2a
[Datasets] Fix max number of actors for default actor pool strategy (#26266) 2022-07-03 14:40:24 -07:00
Yi Cheng
818bb78542
[ci] Stop syncer staging tests (#26273)
The tests has been running for 1-2 months, and the overall observation is that it's not very useful to catch the actual regression. Basically, we didn't notice any regression. Stop this test for now to save some resources.
2022-07-03 11:17:10 -07:00
Yi Cheng
096c0cd668
[core][gcs] Add storage namespace to redis storage in GCS. (#25994)
To enable one storage be able to be shared by multiple ray clusters, a special prefix is added to isolate the data between clusters: "<EXTERNAL_STORAGE_NAMESPACE>@"

The namespace is given by an os environment: `RAY_external_storage_namespace` when start the head: `RAY_external_storage_namespace=1234 ray start --head`

This flag is very important in HA GCS environment. For example, in ray serve operator, when the operator tries to bring up a new one, it's hard to just start a new db, but it's relatively easy to generate a new cluster id.
Another example is that, the user might only be able to maintain one HA Redis DB, and the namespace enable the user to start multiple ray clusters which share the same db.

This config should be moved to storage config in the future once we build that.
2022-07-03 11:16:37 -07:00
Siyuan (Ryans) Zhuang
5a094f1d18
[workflow] Deprecate workflow.create (#26106) 2022-07-02 21:24:05 -07:00
Dmitri Gekhtman
7d3ceb222c
[kuberay][autoscaler] Improve CPU, GPU, and memory detection. (#26219)
This PR improves the autoscaler's resource detection logic
2022-07-02 11:32:05 -07:00
Jun Gong
34d1e580cb
[rllib/docs] Minor import doc fix. (#26269) 2022-07-02 06:52:38 -07:00
VeronikaPolakova
18439af1bf
[Tune] Fix sort by metric (#25853)
Sort-by-metric working on metrics passed by tune.run

Co-authored-by: Antoni Baum <antoni.baum@protonmail.com>
2022-07-02 06:48:30 -07:00
Clark Zinzow
2a4d22fbd2
[Core] Add retry exception allowlist for user-defined filtering of retryable application-level errors. (#25896)
This PR adds supported for specifying an exception allowlist (List[Exception]) as the retry_exceptions argument, such that an application-level exception will only be retried if it is in the allowlist.
2022-07-01 20:06:02 -07:00
Stephanie Wang
68b893369c
[dataset] Support push-based shuffle in groupby operations (#25910)
Allows option for push-based shuffle in groupby operations, to improve scalability to larger Datasets.
2022-07-01 17:36:58 -07:00
Stephanie Wang
a90e53b76f
[core] Add weekly test for 100TB random shuffle (#25908)
Adds a CI test for 100TB shuffle.

There is a custom config for this nightly test to: (1) make sure each node gets 4TB of storage, (2) head node has 0 CPUs, (3) worker nodes have half their actual vCPU count.

Related issue number

Closes #24480.
2022-07-01 13:30:07 -07:00
Guyang Song
b9ade079cb
Revert "[runtime env] plugin refactor[2/n]: support json schema validation (#26154)" (#26246)
This reverts commit 122ec5e52f.
2022-07-01 15:48:03 +08:00
Larry
c8a90e00ac
Hide other symbols in libray_api.so only keep ray* (#26069) 2022-07-01 11:51:40 +08:00
Siyuan (Ryans) Zhuang
ab44133fba
[Workflow] Replace StepID with TaskID (#26232) 2022-06-30 16:40:58 -07:00
Alex Wu
76c5122357
[ci/release] Fix wait_cluster (#26236)
Fixes a bug in wait_cluster where we count the total number of nodes ever in the cluster rather than the alive nodes. This has causes infra/autoscaler failures (e.g. #26138) to be mislabeled as test failures (and probably messes with timing too).

Co-authored-by: Alex Wu <alex@anyscale.com>
2022-06-30 16:37:32 -07:00
shrekris-anyscale
010a3566e6
[Serve] Allow and remove trailing slashes in Ray submission address (#26093) 2022-06-30 16:04:53 -07:00
Kai Fricke
ce0cc8ea53
[tune] Improve custom func checkpointing example (#26230)
Avoid using internal constants in this example.
2022-06-30 15:53:12 -07:00
Amog Kamsetty
60a9dc0a5c
[rllib] Add __init__.py file to rllib.conncectors (#26238)
__init__.py file is needed for this package to be included in the Ray wheels
2022-06-30 13:54:49 -07:00
Nikita Vemuri
8fc3409676
[dashboard] Add component_activities API (#25996)
Add /api/component_activities to the dashboard snapshot router which returns whether various Ray components are considered active
This currently only contains a response entry for drivers, but will add entries for other components on request as followups
2022-06-30 13:39:01 -07:00
Eric Liang
3b1948ed45
[air] Randomize block order by default to avoid hotspots (#25870)
Enable block order randomization by default to avoid ingest hotspots when running concurrent trials.
2022-06-30 13:38:03 -07:00
Kai Fricke
e2d8e7a6ae
[ci/release/ml] Run ML release tests on staging (#26168)
This moves all ML release tests to staging.

Signed-off-by: Kai Fricke <kai@anyscale.com>
2022-06-30 13:24:28 -07:00
xwjiang2010
ac831fded4
[air] update documentation to use session.report (#26051)
Update documentation to use `session.report`.

Next steps:
1. Update our internal caller to use `session.report`. Most importantly, CheckpointManager and DataParallelTrainer.
2. Update `get_trial_resources` to use PGF notions to incorporate the requirement of ResourceChangingScheduler. @Yard1 
3. After 2 is done, change all `tune.get_trial_resources` to `session.get_trial_resources`
4. [internal implementation] remove special checkpoint handling logic from huggingface trainer. Optimize the flow for checkpoint conversion with `session.report`.

Co-authored-by: Antoni Baum <antoni.baum@protonmail.com>
2022-06-30 10:37:31 -07:00
shrekris-anyscale
20c6c0725a
[Serve] Deprecate deployment's prev_version field (#26217) 2022-06-30 09:59:37 -07:00
xwjiang2010
3ffff53428
[tune] Fix stacktrace (#26220)
Reland the original change. But without changing the test_utils so that other tests are not affected...
2022-06-30 07:38:36 -07:00
Sven Mika
f8785c49df
[RLlib] Issue 25696: Output writers not working w/ multiple workers. (#25722) 2022-06-30 13:25:56 +02:00
Sven Mika
ca913ff6d6
[RLlib] Eval WorkerSet crashes when trying to re-add a failed worker (eval set does not have local worker). (#26134) 2022-06-30 13:25:22 +02:00
Jun Gong
d83bbda281
[RLlib] Save serialized PolicySpec. Extract num_gpus related logics into a util function. (#25954) 2022-06-30 11:38:21 +02:00
ZhuSenlin
c5de057d1d
[Core][Enable gcs scheduler 3/n] integrate placement group with gcs scheduler (#24842)
## Why are these changes needed?
1. Now, bundle resources are deducted from the cluster resources on the `GCS` side when all Commit requests sent by `GCS` to `Raylet` are returned. Actually, the bundle resources should be deducted before sending `PreprareResources` by `GCS` to `Raylet`, so that the scheduling of actor based on `GCS` could use more fresh resources. BTW, putting the deduction before `PrepareResources` or after reply of all `CommitResources` has no impact on `Raylet` scheduling.

2. The `GcsResourceManager::UpdateResources` and `GcsResourceManager::DeleteResources` could be deleted to simplify `GcsResourceManager`.
   - `GcsResourceManager::UpdateResources` is only used when `GcsPlacementGroupScheduler::CommitAllBundles`, we could update the node resources (commit bundle resources) in `GcsPlacementGroupScheduler` directly, and I think it's unnecessary to put these resources to storage (the resources could be replayed by placement group)
   - `GcsResourceManager::DeleteResources` is only used when `GcsPlacementGroupScheduler::CancelResourceReserve` which is invoked by `GcsPlacementGroupScheduler::DestroyPlacementGroupPreparedBundleResources` and `GcsPlacementGroupScheduler::DestroyPlacementGroupCommittedBundleResources`. in fact, the `GcsPlacementGroupScheduler::ReturnBundleResources` will be called wherever these two functions are used, so I think the `GcsResourceManager::DeleteResources` is redundant. BTW, I think it's unnecessary to put the change of resources to storage (the resources could be replayed by placement group).

3.  The `gcs_table_storage_` is useless as both `GcsResourceManager::UpdateResources` and `GcsResourceManager::DeleteResources` is removed, so it could be removed too.

4. The `ray_gcs_new_resource_creation_latency_ms_sum` could be removed too as the `GcsResourceManager::UpdateResources` is removed.

Co-authored-by: 黑驰 <senlin.zsl@antgroup.com>
2022-06-30 02:04:39 -07:00
Qing Wang
2d4663d0cd
[Java] Support getCurrentNodeId API for RuntimeContext (#26147)
Add an API to get the node id of this worker, see usage:
```java
UniqueId currNodeId = Ray.getRuntimeContext().getCurrentNodeId();
```
for the requirement from Ray Serve.
2022-06-30 16:19:32 +08:00
Guyang Song
122ec5e52f
[runtime env] plugin refactor[2/n]: support json schema validation (#26154) 2022-06-30 16:09:23 +08:00