You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@celeborn.apache.org by "cfmcgrady (via GitHub)" <gi...@apache.org> on 2023/06/25 07:39:51 UTC

[GitHub] [incubator-celeborn] cfmcgrady opened a new pull request, #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

cfmcgrady opened a new pull request, #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620

   <!--
   Thanks for sending a pull request!  Here are some tips for you:
     - Make sure the PR title start w/ a JIRA ticket, e.g. '[CELEBORN-XXXX] Your PR title ...'.
     - Be sure to keep the PR description updated to reflect all changes.
     - Please write your PR title to summarize what this PR proposes.
     - If possible, provide a concise example to reproduce the issue for a faster review.
   -->
   
   ### What changes were proposed in this pull request?
   
   
   
   ### Why are the changes needed?
   
   
   
   ### Does this PR introduce _any_ user-facing change?
   
   
   
   ### How was this patch tested?
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] cfmcgrady commented on a diff in pull request #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

Posted by "cfmcgrady (via GitHub)" <gi...@apache.org>.
cfmcgrady commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241080852


##########
tests/spark-it/src/test/scala/org/apache/celeborn/tests/spark/PushDataTimeoutTest.scala:
##########
@@ -66,27 +100,23 @@ class PushDataTimeoutTest extends AnyFunSuite
       val rssSparkSession = SparkSession.builder()
         .config(updateSparkConf(sparkConf, ShuffleMode.HASH))
         .getOrCreate()
-      val rssCombineResult = combine(rssSparkSession)
-      val rssGroupbyResult = groupBy(rssSparkSession)
-      val rssRepartitionResult = repartition(rssSparkSession)
       val rssSqlResult = runsql(rssSparkSession)
 
-      assert(combineResult.equals(rssCombineResult))
-      assert(groupbyResult.equals(rssGroupbyResult))
-      assert(repartitionResult.equals(rssRepartitionResult))
-      assert(combineResult.equals(rssCombineResult))
       assert(sqlResult.equals(rssSqlResult))
 
       rssSparkSession.stop()
       ShuffleClient.reset()
+      assert(PushDataHandler.pushMasterMergeDataTimeoutTested.get())
+      if (enabled) {
+        assert(PushDataHandler.pushSlaveMergeDataTimeoutTested.get())
+      }
     }
   }
 
   test("celeborn spark integration test - pushdata timeout will add to balcklist") {
     val sparkConf = new SparkConf().setAppName("rss-demo").setMaster("local[2]")
       .set(s"spark.${CelebornConf.CLIENT_PUSH_DATA_TIMEOUT.key}", "5s")
-      .set(s"spark.celeborn.data.push.timeoutCheck.interval", "2s")
-      .set(s"spark.${CelebornConf.CLIENT_BLACKLIST_SLAVE_ENABLED.key}", "false")
+      .set(s"spark.${CelebornConf.CLIENT_BLACKLIST_SLAVE_ENABLED.key}", "true")

Review Comment:
   this should be accidentally changed by https://github.com/apache/incubator-celeborn/pull/1501



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] pan3793 commented on a diff in pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest

Posted by "pan3793 (via GitHub)" <gi...@apache.org>.
pan3793 commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241496303


##########
worker/src/main/scala/org/apache/celeborn/service/deploy/worker/PushDataHandler.scala:
##########
@@ -133,13 +131,13 @@ class PushDataHandler extends BaseMessageHandler with Logging {
     val isMaster = mode == PartitionLocation.Mode.MASTER
 
     // For test
-    if (isMaster && testPushMasterDataTimeout && !pushMasterDataTimeoutTested) {
-      pushMasterDataTimeoutTested = true
+    if (isMaster && testPushMasterDataTimeout && !PushDataHandler.pushMasterDataTimeoutTested.getAndSet(
+        true)) {
       return
     }
 
-    if (!isMaster && testPushSlaveDataTimeout && !pushSlaveDataTimeoutTested) {
-      pushSlaveDataTimeoutTested = true
+    if (!isMaster && testPushSlaveDataTimeout && !PushDataHandler.pushSlaveDataTimeoutTested.getAndSet(
+        true)) {

Review Comment:
   ```suggestion
       if (!isMaster && testPushSlaveDataTimeout && 
           !PushDataHandler.pushSlaveDataTimeoutTested.getAndSet(true)) {
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] pan3793 commented on pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest

Posted by "pan3793 (via GitHub)" <gi...@apache.org>.
pan3793 commented on PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#issuecomment-1606692379

   Merged to main/0.3


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] cfmcgrady commented on a diff in pull request #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

Posted by "cfmcgrady (via GitHub)" <gi...@apache.org>.
cfmcgrady commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241082303


##########
tests/spark-it/src/test/scala/org/apache/celeborn/tests/spark/PushDataTimeoutTest.scala:
##########
@@ -34,30 +36,62 @@ class PushDataTimeoutTest extends AnyFunSuite
     logInfo("test initialized , setup celeborn mini cluster")
     val workerConf = Map(
       CelebornConf.TEST_CLIENT_PUSH_MASTER_DATA_TIMEOUT.key -> "true",
-      CelebornConf.TEST_WORKER_PUSH_SLAVE_DATA_TIMEOUT.key -> "true",
-      "celeborn.push.timeoutCheck.interval" -> "1s")

Review Comment:
   no documentation or usage information could be found for the `celeborn.push.timeoutCheck.interval` parameter.
   
   
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] pan3793 commented on a diff in pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest

Posted by "pan3793 (via GitHub)" <gi...@apache.org>.
pan3793 commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241496831


##########
tests/spark-it/src/test/scala/org/apache/celeborn/tests/spark/PushDataTimeoutTest.scala:
##########
@@ -98,6 +136,21 @@ class PushDataTimeoutTest extends AnyFunSuite
         e.getMessage.concat("Revive Failed in retry push merged data for location")
     }
 
+    assert(PushDataHandler.pushMasterMergeDataTimeoutTested.get())
+    assert(PushDataHandler.pushSlaveMergeDataTimeoutTested.get())
+    val blacklist = SparkContextHelper.env
+      .shuffleManager
+      .asInstanceOf[RssShuffleManager]
+      .getLifecycleManager
+      .workerStatusTracker
+      .blacklist
+
+    assert(blacklist.size() > 0)
+    blacklist.asScala.foreach {
+      case (_, (code, _)) =>

Review Comment:
   ```suggestion
       blacklist.asScala.foreach { case (_, (code, _)) =>
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] cfmcgrady commented on a diff in pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest

Posted by "cfmcgrady (via GitHub)" <gi...@apache.org>.
cfmcgrady commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241505918


##########
worker/src/main/scala/org/apache/celeborn/service/deploy/worker/PushDataHandler.scala:
##########
@@ -133,13 +131,13 @@ class PushDataHandler extends BaseMessageHandler with Logging {
     val isMaster = mode == PartitionLocation.Mode.MASTER
 
     // For test
-    if (isMaster && testPushMasterDataTimeout && !pushMasterDataTimeoutTested) {
-      pushMasterDataTimeoutTested = true
+    if (isMaster && testPushMasterDataTimeout && !PushDataHandler.pushMasterDataTimeoutTested.getAndSet(
+        true)) {
       return
     }
 
-    if (!isMaster && testPushSlaveDataTimeout && !pushSlaveDataTimeoutTested) {
-      pushSlaveDataTimeoutTested = true
+    if (!isMaster && testPushSlaveDataTimeout && !PushDataHandler.pushSlaveDataTimeoutTested.getAndSet(
+        true)) {

Review Comment:
   `spotless` reformat this to 2 spaces instead 4.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] codecov[bot] commented on pull request #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

Posted by "codecov[bot] (via GitHub)" <gi...@apache.org>.
codecov[bot] commented on PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#issuecomment-1605917535

   ## [Codecov](https://app.codecov.io/gh/apache/incubator-celeborn/pull/1620?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
   > Merging [#1620](https://app.codecov.io/gh/apache/incubator-celeborn/pull/1620?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) (4d96bf5) into [main](https://app.codecov.io/gh/apache/incubator-celeborn/commit/679f9cbf58907717846bcdc3391cefd8ea6d165f?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) (679f9cb) will **increase** coverage by `0.17%`.
   > The diff coverage is `100.00%`.
   
   ```diff
   @@            Coverage Diff             @@
   ##             main    #1620      +/-   ##
   ==========================================
   + Coverage   45.77%   45.93%   +0.17%     
   ==========================================
     Files         159      159              
     Lines        9943     9943              
     Branches      970      970              
   ==========================================
   + Hits         4550     4566      +16     
   + Misses       5092     5079      -13     
   + Partials      301      298       -3     
   ```
   
   
   | [Impacted Files](https://app.codecov.io/gh/apache/incubator-celeborn/pull/1620?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage Δ | |
   |---|---|---|
   | [...cala/org/apache/celeborn/common/CelebornConf.scala](https://app.codecov.io/gh/apache/incubator-celeborn/pull/1620?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-Y29tbW9uL3NyYy9tYWluL3NjYWxhL29yZy9hcGFjaGUvY2VsZWJvcm4vY29tbW9uL0NlbGVib3JuQ29uZi5zY2FsYQ==) | `87.04% <100.00%> (ø)` | |
   
   ... and [2 files with indirect coverage changes](https://app.codecov.io/gh/apache/incubator-celeborn/pull/1620/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   
   :mega: We’re building smart automated test selection to slash your CI/CD build times. [Learn more](https://about.codecov.io/iterative-testing/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] cfmcgrady commented on a diff in pull request #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

Posted by "cfmcgrady (via GitHub)" <gi...@apache.org>.
cfmcgrady commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241082371


##########
tests/spark-it/src/test/scala/org/apache/celeborn/tests/spark/PushDataTimeoutTest.scala:
##########
@@ -34,30 +36,62 @@ class PushDataTimeoutTest extends AnyFunSuite
     logInfo("test initialized , setup celeborn mini cluster")
     val workerConf = Map(
       CelebornConf.TEST_CLIENT_PUSH_MASTER_DATA_TIMEOUT.key -> "true",
-      CelebornConf.TEST_WORKER_PUSH_SLAVE_DATA_TIMEOUT.key -> "true",
-      "celeborn.push.timeoutCheck.interval" -> "1s")
+      CelebornConf.TEST_WORKER_PUSH_SLAVE_DATA_TIMEOUT.key -> "true")
     setUpMiniCluster(masterConfs = null, workerConfs = workerConf)
   }
 
   override def beforeEach(): Unit = {
     ShuffleClient.reset()
+    PushDataHandler.pushMasterDataTimeoutTested.set(false)
+    PushDataHandler.pushSlaveDataTimeoutTested.set(false)
+    PushDataHandler.pushMasterMergeDataTimeoutTested.set(false)
+    PushDataHandler.pushSlaveMergeDataTimeoutTested.set(false)
   }
 
   override def afterEach(): Unit = {
     System.gc()
   }
 
-  test("celeborn spark integration test - pushdata timeout") {
-    Seq("false", "true").foreach { enabled =>
+  Seq(false, true).foreach { enabled =>
+    test(s"celeborn spark integration test - pushdata timeout w/ replicate = $enabled") {
       val sparkConf = new SparkConf().setAppName("rss-demo").setMaster("local[2]")
         .set(s"spark.${CelebornConf.CLIENT_PUSH_DATA_TIMEOUT.key}", "5s")
-        .set(s"spark.celeborn.data.push.timeoutCheck.interval", "2s")

Review Comment:
   ~the same with `celeborn.push.timeoutCheck.interval`~



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] cfmcgrady commented on a diff in pull request #1620: [CELEBORN-711][TEST] Refine PushDataTimeoutTest

Posted by "cfmcgrady (via GitHub)" <gi...@apache.org>.
cfmcgrady commented on code in PR #1620:
URL: https://github.com/apache/incubator-celeborn/pull/1620#discussion_r1241082371


##########
tests/spark-it/src/test/scala/org/apache/celeborn/tests/spark/PushDataTimeoutTest.scala:
##########
@@ -34,30 +36,62 @@ class PushDataTimeoutTest extends AnyFunSuite
     logInfo("test initialized , setup celeborn mini cluster")
     val workerConf = Map(
       CelebornConf.TEST_CLIENT_PUSH_MASTER_DATA_TIMEOUT.key -> "true",
-      CelebornConf.TEST_WORKER_PUSH_SLAVE_DATA_TIMEOUT.key -> "true",
-      "celeborn.push.timeoutCheck.interval" -> "1s")
+      CelebornConf.TEST_WORKER_PUSH_SLAVE_DATA_TIMEOUT.key -> "true")
     setUpMiniCluster(masterConfs = null, workerConfs = workerConf)
   }
 
   override def beforeEach(): Unit = {
     ShuffleClient.reset()
+    PushDataHandler.pushMasterDataTimeoutTested.set(false)
+    PushDataHandler.pushSlaveDataTimeoutTested.set(false)
+    PushDataHandler.pushMasterMergeDataTimeoutTested.set(false)
+    PushDataHandler.pushSlaveMergeDataTimeoutTested.set(false)
   }
 
   override def afterEach(): Unit = {
     System.gc()
   }
 
-  test("celeborn spark integration test - pushdata timeout") {
-    Seq("false", "true").foreach { enabled =>
+  Seq(false, true).foreach { enabled =>
+    test(s"celeborn spark integration test - pushdata timeout w/ replicate = $enabled") {
       val sparkConf = new SparkConf().setAppName("rss-demo").setMaster("local[2]")
         .set(s"spark.${CelebornConf.CLIENT_PUSH_DATA_TIMEOUT.key}", "5s")
-        .set(s"spark.celeborn.data.push.timeoutCheck.interval", "2s")

Review Comment:
   the same with `celeborn.push.timeoutCheck.interval`



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [incubator-celeborn] pan3793 closed pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest

Posted by "pan3793 (via GitHub)" <gi...@apache.org>.
pan3793 closed pull request #1620: [CELEBORN-711][TEST] Rework PushDataTimeoutTest
URL: https://github.com/apache/incubator-celeborn/pull/1620


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@celeborn.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org