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

[GLUTEN-7800][VL] Add config for max reclaim wait time to avoid dead lock when memory arbitration #7799

Merged

Conversation

Yohahaha
Copy link
Contributor

@Yohahaha Yohahaha commented Nov 4, 2024

What changes were proposed in this pull request?

Add config spark.gluten.sql.columnar.backend.velox.reclaimMaxWaitMs to avoid dead lock when memory arbitration has bug, default timeout is 60min.

@github-actions github-actions bot added CORE works for Gluten Core VELOX labels Nov 4, 2024
Copy link

github-actions bot commented Nov 4, 2024

Thanks for opening a pull request!

Could you open an issue for this pull request on Github Issues?

https://github.com/apache/incubator-gluten/issues

Then could you also rename commit message and pull request title in the following format?

[GLUTEN-${ISSUES_ID}][COMPONENT]feat/fix: ${detailed message}

See also:

Copy link

github-actions bot commented Nov 4, 2024

Run Gluten Clickhouse CI

@Yohahaha Yohahaha changed the title [VL] Add config for max reclaim wait time to avoid dead lock when memory arbitration [GLUTEN-7800][VL] Add config for max reclaim wait time to avoid dead lock when memory arbitration Nov 4, 2024
Copy link

github-actions bot commented Nov 4, 2024

#7800

@Yohahaha
Copy link
Contributor Author

Yohahaha commented Nov 4, 2024

@zhztheplayer would you help take a look?

Comment on lines +25 to 26
#include "velox/common/memory/SharedArbitrator.h"
#include "velox/exec/MemoryReclaimer.h"
Copy link
Member

@zhztheplayer zhztheplayer Nov 6, 2024

Choose a reason for hiding this comment

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

Why we need to include SharedArbitrator.h? Thought we should avoid this kind of dependency. One of the reason is, code of the shared arbitrator is usually updated frequently so we may easily find our code doesn't work after a Velox rebase.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I just want reuse velox::memory::SharedArbitrator::ExtraConfig, would you give some input?

Copy link
Member

@zhztheplayer zhztheplayer left a comment

Choose a reason for hiding this comment

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

Only one question about the header dependency. Thanks.

@zhztheplayer zhztheplayer merged commit 761f1c5 into apache:main Nov 7, 2024
50 checks passed
@zhztheplayer
Copy link
Member

@Yohahaha

A bit dramatical that upstream Velox really updated the function name in SharedArbitrator.h...

See facebookincubator/velox@62b0a12#diff-00e1979427f8bb6a5bda4f62c02e98dfd2cc0bdadb9219772e667946ffe1421dR111

It causes main CI build failure and let's revert this PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CORE works for Gluten Core VELOX
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants