Skip to content

Conversation

@xuanyuanking
Copy link
Member

What changes were proposed in this pull request?

Add more metrics for the RocksDB instance. We transform the native states from RocksDB.

Why are the changes needed?

Improve the usability with more metrics for RocksDB instance.

Does this PR introduce any user-facing change?

No.

How was this patch tested?

Existing tests.

@SparkQA
Copy link

SparkQA commented Jun 16, 2021

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44408/

@SparkQA
Copy link

SparkQA commented Jun 16, 2021

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44408/

@SparkQA
Copy link

SparkQA commented Jun 16, 2021

Test build #139878 has finished for PR 32934 at commit f8f9d20.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@viirya
Copy link
Member

viirya commented Jun 23, 2021

retest this please

Copy link
Member

@viirya viirya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't find the different change than other related PRs. @xuanyuanking Which is different change here?

@xuanyuanking
Copy link
Member Author

Sorry @viirya, my mistake. Just push the latest commit of the metrics support.

@SparkQA
Copy link

SparkQA commented Jun 23, 2021

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44717/

@SparkQA
Copy link

SparkQA commented Jun 23, 2021

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44717/

@SparkQA
Copy link

SparkQA commented Jun 23, 2021

Kubernetes integration test unable to build dist.

exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44722/

@SparkQA
Copy link

SparkQA commented Jun 23, 2021

Test build #140190 has finished for PR 32934 at commit f8f9d20.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jun 23, 2021

Test build #140195 has finished for PR 32934 at commit db2a2b7.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds the following public classes (experimental):
  • case class RocksDBMetrics(
  • case class RocksDBNativeHistogram(
  • case class RocksDBFileManagerMetrics(

@SparkQA
Copy link

SparkQA commented Jun 29, 2021

Test build #140372 has finished for PR 32934 at commit 92e014e.

  • This patch fails Scala style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jun 30, 2021

Test build #140447 has finished for PR 32934 at commit 1dfe279.

  • This patch fails Scala style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jun 30, 2021

Kubernetes integration test unable to build dist.

exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44961/

@SparkQA
Copy link

SparkQA commented Jun 30, 2021

Test build #140451 has finished for PR 32934 at commit 522bac9.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jun 30, 2021

Kubernetes integration test unable to build dist.

exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/44965/

@HeartSaVioR
Copy link
Contributor

Shall we rebase this one for continue reviewing?

@xuanyuanking
Copy link
Member Author

Yea, just finished the rebasing.

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Test build #140571 has finished for PR 32934 at commit eea3aa0.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds no public classes.

@xuanyuanking xuanyuanking changed the title [WIP][SPARK-35788][SS] Metrics support for RocksDB instance [SPARK-35788][SS] Metrics support for RocksDB instance Jul 2, 2021
@HeartSaVioR
Copy link
Contributor

HeartSaVioR commented Jul 2, 2021

Same rebasing issue happens here as well.

Could we please do the "clean" rebase? Like below:

git checkout master
git pull
git checkout -b SPARK-35788-v2
git cherry-pick 7b6da3d (and following commits)
git log <= note the latest commit ID (say, "commit_id")
git checkout SPARK-35788
git reset --hard "commit_id" (referring `SPARK-35788-v2` here might work. if then no need to note the commit ID)
git push --force

@xuanyuanking
Copy link
Member Author

Thanks for the guidance, let me try.

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Test build #140576 has finished for PR 32934 at commit a580a1d.

  • This patch fails to build.
  • This patch merges cleanly.
  • This patch adds the following public classes (experimental):
  • case class RocksDBMetrics(
  • case class RocksDBNativeHistogram(
  • case class RocksDBFileManagerMetrics(

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Kubernetes integration test unable to build dist.

exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45087/

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45099/

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45099/

@SparkQA
Copy link

SparkQA commented Jul 2, 2021

Test build #140586 has finished for PR 32934 at commit 1b1adc5.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

Copy link
Contributor

@HeartSaVioR HeartSaVioR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good overall. Only nits.

* Metrics regarding RocksDB file sync between local and DFS.
*/
case class RocksDBFileManagerMetrics(
filesCopied: Long,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: indent

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, done in 355953e.

*/
@volatile private var saveCheckpointMetrics = RocksDBFileManagerMetrics.EMPTY_METRICS

def latestloadCheckpointMetrics: RocksDBFileManagerMetrics = loadCheckpointMetrics
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: latestLoadCheckpointMetrics

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, done in 355953e


/** Class to represent stats from each commit. */
case class RocksDBMetrics(
numCommittedKeys: Long,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: indent

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, done in 355953e


/** Class to wrap RocksDB's native histogram */
case class RocksDBNativeHistogram(
avg: Double, stddev: Double, median: Double, p95: Double, p99: Double) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: indent

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, done in 355953e

@SparkQA
Copy link

SparkQA commented Jul 5, 2021

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45172/

@SparkQA
Copy link

SparkQA commented Jul 5, 2021

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45172/

@SparkQA
Copy link

SparkQA commented Jul 5, 2021

Test build #140661 has finished for PR 32934 at commit 355953e.

  • This patch fails Spark unit tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@xuanyuanking
Copy link
Member Author

retest this please

Copy link
Contributor

@HeartSaVioR HeartSaVioR left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

I'll wait for @viirya to take a look; I'll merge this in a couple of days if there's no comment.

@SparkQA
Copy link

SparkQA commented Jul 6, 2021

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45183/

@viirya
Copy link
Member

viirya commented Jul 6, 2021

I'm in vacation, but I will find some time looking at this. Thanks.

@HeartSaVioR
Copy link
Contributor

Thanks for the update. Let's just merge this in and add up the reviews in the next PR then. It should be pretty much simpler as we will have only one PR for RocksDB state store after merging this.

@HeartSaVioR
Copy link
Contributor

HeartSaVioR commented Jul 6, 2021

Thanks! Merging to master/3.2.

@viirya
Copy link
Member

viirya commented Jul 6, 2021

Okay for me. Thanks!

@SparkQA
Copy link

SparkQA commented Jul 6, 2021

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45183/

@xuanyuanking xuanyuanking deleted the SPARK-35788 branch July 6, 2021 02:26
HeartSaVioR pushed a commit that referenced this pull request Jul 6, 2021
### What changes were proposed in this pull request?
Add more metrics for the RocksDB instance. We transform the native states from RocksDB.

### Why are the changes needed?
Improve the usability with more metrics for RocksDB instance.

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Existing tests.

Closes #32934 from xuanyuanking/SPARK-35788.

Authored-by: Yuanjian Li <[email protected]>
Signed-off-by: Jungtaek Lim <[email protected]>
(cherry picked from commit 9544277)
Signed-off-by: Jungtaek Lim <[email protected]>
@HeartSaVioR
Copy link
Contributor

Thanks @xuanyuanking for the contribution! I merged this to master/branch-3.2.

Please rebase the next PR.

@SparkQA
Copy link

SparkQA commented Jul 6, 2021

Test build #140672 has finished for PR 32934 at commit 355953e.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants