Skip to content
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

Add Query Trace Writers and Readers #10774

Closed
wants to merge 1 commit into from

Conversation

duanmeng
Copy link
Collaborator

@duanmeng duanmeng commented Aug 17, 2024

Add a query tracer to log the input data, and metadata (including query configurations,
connector properties, and query plans). This logged data and metadata can be used to
replay the operations of a specific operator or pipeline.

Part of #9668

@duanmeng duanmeng marked this pull request as draft August 17, 2024 16:36
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 17, 2024
Copy link

netlify bot commented Aug 17, 2024

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit c716ed4
🔍 Latest deploy log https://app.netlify.com/sites/meta-velox/deploys/66c558693276770008b769c4

@duanmeng duanmeng force-pushed the tracer branch 8 times, most recently from c9d835c to b1fb80e Compare August 18, 2024 16:22
@duanmeng duanmeng marked this pull request as ready for review August 18, 2024 16:26
@duanmeng duanmeng requested a review from xiaoxmeng August 18, 2024 16:26
Copy link
Contributor

@xiaoxmeng xiaoxmeng left a comment

Choose a reason for hiding this comment

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

@duanmeng thanks % minors

velox/exec/trace/QueryTraceTraits.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceTraits.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceTraits.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceTraits.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceTraits.h Show resolved Hide resolved
velox/exec/trace/QueryDataReader.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.h Outdated Show resolved Hide resolved
@duanmeng duanmeng force-pushed the tracer branch 6 times, most recently from 5ef31e2 to 41b8853 Compare August 19, 2024 12:26
velox/exec/trace/QueryTraceConfig.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceConfig.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceConfig.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceConfig.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryTraceConfig.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/common/memory/Memory.h Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryMetadataWriter.cpp Show resolved Hide resolved
@duanmeng duanmeng changed the title Add tracer Add Query Trace Writers and Readers Aug 19, 2024
@duanmeng duanmeng force-pushed the tracer branch 2 times, most recently from e72d276 to e1c531b Compare August 19, 2024 15:31
Copy link
Contributor

@xiaoxmeng xiaoxmeng left a comment

Choose a reason for hiding this comment

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

@duanmeng LGTM % nits. Thanks!

velox/exec/trace/QueryDataWriter.cpp Show resolved Hide resolved
velox/exec/trace/QueryDataWriter.cpp Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
velox/exec/tests/QueryTraceTest.cpp Outdated Show resolved Hide resolved
@duanmeng duanmeng force-pushed the tracer branch 2 times, most recently from befaba5 to b1295f1 Compare August 20, 2024 03:43
Copy link
Contributor

@xiaoxmeng xiaoxmeng left a comment

Choose a reason for hiding this comment

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

@duanmeng LGTM. Thanks for the iterations!

velox/exec/trace/QueryMetadataWriter.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryMetadataWriter.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataWriter.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataWriter.h Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataWriter.cpp Outdated Show resolved Hide resolved
velox/exec/trace/QueryDataReader.h Outdated Show resolved Hide resolved
@xiaoxmeng xiaoxmeng requested a review from mbasmanova August 20, 2024 04:22
@xiaoxmeng xiaoxmeng requested review from tanjialiang and Yuhta August 20, 2024 04:22
@facebook-github-bot
Copy link
Contributor

@xiaoxmeng has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@duanmeng duanmeng force-pushed the tracer branch 4 times, most recently from 9594be0 to 75894f0 Compare August 20, 2024 13:46
@facebook-github-bot
Copy link
Contributor

@xiaoxmeng has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@facebook-github-bot
Copy link
Contributor

@xiaoxmeng merged this pull request in 55107b6.

Copy link

Conbench analyzed the 1 benchmark run on commit 55107b6f.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details.

@duanmeng duanmeng mentioned this pull request Sep 15, 2024
facebook-github-bot pushed a commit that referenced this pull request Sep 24, 2024
Summary:
Velox can record the query metadata (query plan and configs)
during task creation and input vectors of the traced operator,
see #10774 and #10815.

This PR adds a query replayer, it can be used to replay a query locally
using the metadata and input vectors from the production environment.
It supports showing the summary of a query at present, and more traced
operators' replaying supports will be added in the future.

Also, this PR adds two query configs `query_trace_max_bytes` and
`query_trace_task_reg_exp` to constraint the record input data size
and trace tasks respectively to ensure the stability of the cluster
in the prod.

Part of #9668

Pull Request resolved: #10897

Reviewed By: tanjialiang

Differential Revision: D62336733

Pulled By: xiaoxmeng

fbshipit-source-id: d196738dfa92c29fe5de67a944f652a328903814
athmaja-n pushed a commit to athmaja-n/velox that referenced this pull request Jan 10, 2025
Summary:
Velox can record the query metadata (query plan and configs)
during task creation and input vectors of the traced operator,
see facebookincubator#10774 and facebookincubator#10815.

This PR adds a query replayer, it can be used to replay a query locally
using the metadata and input vectors from the production environment.
It supports showing the summary of a query at present, and more traced
operators' replaying supports will be added in the future.

Also, this PR adds two query configs `query_trace_max_bytes` and
`query_trace_task_reg_exp` to constraint the record input data size
and trace tasks respectively to ensure the stability of the cluster
in the prod.

Part of facebookincubator#9668

Pull Request resolved: facebookincubator#10897

Reviewed By: tanjialiang

Differential Revision: D62336733

Pulled By: xiaoxmeng

fbshipit-source-id: d196738dfa92c29fe5de67a944f652a328903814
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants