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

[SPARK-48251][BUILD] Disable maven local cache on GA's step MIMA test #46551

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

panbingkun
Copy link
Contributor

@panbingkun panbingkun commented May 13, 2024

What changes were proposed in this pull request?

The pr aims to disable maven local cache on GA's step MIMA test.

Why are the changes needed?

This is the pre-pr of upgrading sbt from 1.9.3 to a higher version of sbt.
See:
sbt/sbt#7506 (comment)
coursier/coursier#2942

Does this PR introduce any user-facing change?

No.

How was this patch tested?

Pass GA.

Was this patch authored or co-authored using generative AI tooling?

No.

Resolver.file("ivyLocal", file(Path.userHome.absolutePath + "/.ivy2/local"))(Resolver.ivyStylePatterns)
),
DefaultMavenRepository) ++
{ if (sys.env.contains("SKIP_LOCAL_M2")) Nil else Seq(Resolver.mavenLocal) } :+
Copy link
Contributor

Choose a reason for hiding this comment

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

hmm... so, even if the value of SKIP_LOCAL_M2 is "", Resolver.mavenLocal will be disabled?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Let's make the conditions more stricter.
Updated.

@panbingkun panbingkun marked this pull request as ready for review May 14, 2024 05:52
@@ -257,6 +257,7 @@ object SparkBuild extends PomBuild {

val noLintOnCompile = sys.env.contains("NOLINT_ON_COMPILE") &&
!sys.env.get("NOLINT_ON_COMPILE").contains("false")
lazy val skipLocalM2 = sys.env.getOrElse("SKIP_LOCAL_M2", "false").toBoolean
Copy link
Contributor

Choose a reason for hiding this comment

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

We always need to check this status, right? So I don't think it needs to be marked as lazy.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Updated.

Copy link
Contributor

@LuciferYang LuciferYang left a comment

Choose a reason for hiding this comment

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

+1, LGTM

Copy link
Member

@dongjoon-hyun dongjoon-hyun left a comment

Choose a reason for hiding this comment

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

I fully understand the history and the reason of this proposal, @panbingkun and @LuciferYang . And, thank you for trying this.

I'm still reluctant of using SKIP_LOCAL_M2 because I'm afraid that this will bite us laster in some local and downstream CI environments and eventually we might need to add SKIP_LOCAL_M2 always for all dev environments as a workaround of SBT bug. As a result, it causes a slowdown in whole CIs (instead of MIMA test only).

To be clear, I'll leave this to your decision.

Also, cc @cloud-fan , @HyukjinKwon , @mridulm , @yaooqinn too.

@yaooqinn
Copy link
Member

If this might increase the $ cost of ASF INFRA, let's put it on hold until the upstream bug is fixed. I second @dongjoon-hyun's concern.

@LuciferYang
Copy link
Contributor

@panbingkun How much performance gap will there be if we completely abandon using Resolver.mavenLocal and the current one?

@panbingkun
Copy link
Contributor Author

panbingkun commented May 16, 2024

How much performance gap will there be if we completely abandon using Resolver.mavenLocal and the current one?

Let me test it.
Without maven local cache: #46606

@panbingkun
Copy link
Contributor Author

panbingkun commented May 17, 2024

@LuciferYang
From the test results, it seems that there is little difference in the cost time of completely abandon using Resolver.savenLocal, as following:

@LuciferYang
Copy link
Contributor

@LuciferYang From the test results, it seems that there is little difference in the cost time of completely abandon using Resolver.savenLocal, as following:

also cc @dongjoon-hyun @yaooqinn

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants