Skip to content

Add recording distribution of waitingSplits queue size#13453

Merged
sopel39 merged 1 commit intotrinodb:masterfrom
radek-kondziolka:rk/add_waiting_split_queue_distribution_size
Aug 25, 2022
Merged

Add recording distribution of waitingSplits queue size#13453
sopel39 merged 1 commit intotrinodb:masterfrom
radek-kondziolka:rk/add_waiting_split_queue_distribution_size

Conversation

@radek-kondziolka
Copy link
Copy Markdown
Contributor

In some case we need to know what is the saturation level of workers from the coordinator point of view.
The one metric that would be helpful to know is size of the TaskExecutor.waitingSplits queue. This is why we want to sample distribution of its length.

@cla-bot cla-bot bot added the cla-signed label Aug 2, 2022
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch 3 times, most recently from 95f187b to 9474776 Compare August 2, 2022 09:52
@sopel39 sopel39 marked this pull request as ready for review August 2, 2022 10:25
@sopel39 sopel39 requested a review from lukasz-stec August 2, 2022 10:32
Copy link
Copy Markdown
Member

@skrzypo987 skrzypo987 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 % stuff related to waiting for airlift release.
Please ping me when the release is done

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 9474776 to 5cc3549 Compare August 3, 2022 06:41
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 5cc3549 to 34029df Compare August 9, 2022 11:29
@radek-kondziolka
Copy link
Copy Markdown
Contributor Author

@skrzypo987 , release is done

@skrzypo987
Copy link
Copy Markdown
Member

@skrzypo987 , release is done

Please restart the CI (rebase to current master)

Copy link
Copy Markdown
Member

@lukasz-stec lukasz-stec left a comment

Choose a reason for hiding this comment

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

lgtm % comments

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch 2 times, most recently from c436c96 to cdb798e Compare August 11, 2022 07:19
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from cdb798e to c8989c3 Compare August 11, 2022 07:24
Copy link
Copy Markdown
Member

@lukasz-stec lukasz-stec left a comment

Choose a reason for hiding this comment

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

lgtm

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from c8989c3 to d12a397 Compare August 11, 2022 09:11
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from d12a397 to 799824e Compare August 11, 2022 15:28
@sopel39
Copy link
Copy Markdown
Member

sopel39 commented Aug 11, 2022

@radek-starburst could you show example of the stat?

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 799824e to b3cfdfe Compare August 12, 2022 09:22
@radek-kondziolka
Copy link
Copy Markdown
Contributor Author

@radek-starburst could you show example of the stat?
@sopel39 , yes sure. I've run concurrency benchmark with:

  • 32 concurrent queries:
AllSplitSizeDistribution.AllTime.P01=0.9
AllSplitSizeDistribution.AllTime.P05=2.28
AllSplitSizeDistribution.AllTime.P10=166.22
AllSplitSizeDistribution.AllTime.P50=3490.76
AllSplitSizeDistribution.AllTime.P90=11438.89
AllSplitSizeDistribution.AllTime.P95=13756
AllSplitSizeDistribution.AllTime.P99=19254
AllSplitSizeDistribution.AllTime.Avg=4801.80
  • 64 concurrent queries:
AllSplitSizeDistribution.AllTime.P01=0.30
AllSplitSizeDistribution.AllTime.P05=36.38
AllSplitSizeDistribution.AllTime.P10=330.88
AllSplitSizeDistribution.AllTime.P50=7988.55
AllSplitSizeDistribution.AllTime.P90=20937.60
AllSplitSizeDistribution.AllTime.P95=25026.22
AllSplitSizeDistribution.AllTime.P99=33483.939
AllSplitSizeDistribution.AllTime.Avg=9409.70

It looks like it works. Do not merge, I wait for benchmarks result to avoid an unintended regression.

@radek-kondziolka
Copy link
Copy Markdown
Contributor Author

radek-kondziolka commented Aug 17, 2022

TPCH duration: -0.55 
TPCDS duration:  -2.51
TPCH CPU: 0.78 
TPCDS CPU: 0.02

No visible "stats stuff" in the top (> 0.17%) of JFR profile. I think it is negligible.

Copy link
Copy Markdown
Member

@sopel39 sopel39 left a comment

Choose a reason for hiding this comment

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

lgtm % comments

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from b3cfdfe to c0a1bf3 Compare August 19, 2022 10:45
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from c0a1bf3 to b38dbb3 Compare August 19, 2022 11:49
Copy link
Copy Markdown
Member

@sopel39 sopel39 left a comment

Choose a reason for hiding this comment

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

lgtm % comments % test failing

@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from b38dbb3 to 5e01f29 Compare August 23, 2022 10:50
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 5e01f29 to 2b92ab9 Compare August 23, 2022 12:18
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 2b92ab9 to 703b423 Compare August 23, 2022 16:02
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from 703b423 to b11f027 Compare August 24, 2022 06:26
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

getLeafSplitsSize

A sampling of TaskExecutor.waitingSplits.size's distribution
was added and exposed via JMX
@radek-kondziolka radek-kondziolka force-pushed the rk/add_waiting_split_queue_distribution_size branch from b11f027 to 5d0e7a8 Compare August 25, 2022 07:07
@@ -21,6 +21,7 @@
import io.airlift.concurrent.ThreadPoolExecutorMBean;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

nit: commit message is incorrect

@sopel39 sopel39 merged commit 473e2fd into trinodb:master Aug 25, 2022
@github-actions github-actions bot added this to the 394 milestone Aug 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

5 participants