This is an automated email from the ASF dual-hosted git repository.
cstamas pushed a commit to branch maven-resolver-1.9.x
in repository https://gitbox.apache.org/repos/asf/maven-resolver.git
The following commit(s) were added to refs/heads/maven-resolver-1.9.x by this
push:
new 419deb454 GH-1737: Revert partially parallel upload change (#1764)
419deb454 is described below
commit 419deb454be339cfbcb7cdd088f95a112f0a0ae2
Author: Tamas Cservenak <[email protected]>
AuthorDate: Wed Jan 28 19:15:26 2026 +0100
GH-1737: Revert partially parallel upload change (#1764)
Revert partially (connector only) commit:
09c3fa9f1880058a2d29ca9ebcd3d2c23da0af4c
Fixes #1737
---
.../connector/basic/BasicRepositoryConnector.java | 32 +++++++++++++++++++---
src/site/markdown/configuration.md | 2 +-
2 files changed, 29 insertions(+), 5 deletions(-)
diff --git
a/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/BasicRepositoryConnector.java
b/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/BasicRepositoryConnector.java
index e39a5f5a1..3047a0ba0 100644
---
a/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/BasicRepositoryConnector.java
+++
b/maven-resolver-connector-basic/src/main/java/org/eclipse/aether/connector/basic/BasicRepositoryConnector.java
@@ -188,6 +188,8 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
RunnableErrorForwarder errorForwarder = new RunnableErrorForwarder();
List<ChecksumAlgorithmFactory> checksumAlgorithmFactories =
layout.getChecksumAlgorithmFactories();
+ boolean first = true;
+
for (MetadataDownload transfer : safeMetadataDownloads) {
URI location = layout.getLocation(transfer.getMetadata(), false);
@@ -209,7 +211,12 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
checksumLocations,
null,
listener);
- executor.execute(errorForwarder.wrap(task));
+ if (first) {
+ task.run();
+ first = false;
+ } else {
+ executor.execute(errorForwarder.wrap(task));
+ }
}
for (ArtifactDownload transfer : safeArtifactDownloads) {
@@ -249,7 +256,12 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
providedChecksums,
listener);
}
- executor.execute(errorForwarder.wrap(task));
+ if (first) {
+ task.run();
+ first = false;
+ } else {
+ executor.execute(errorForwarder.wrap(task));
+ }
}
errorForwarder.await();
@@ -267,6 +279,8 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
Executor executor = getExecutor(parallelPut ?
safeArtifactUploads.size() + safeMetadataUploads.size() : 1);
RunnableErrorForwarder errorForwarder = new RunnableErrorForwarder();
+ boolean first = true;
+
for (ArtifactUpload transfer : safeArtifactUploads) {
URI location = layout.getLocation(transfer.getArtifact(), true);
@@ -280,7 +294,12 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
Runnable task = new PutTaskRunner(
location, transfer.getFile(),
transfer.getFileTransformer(), checksumLocations, listener);
- executor.execute(errorForwarder.wrap(task));
+ if (first) {
+ task.run();
+ first = false;
+ } else {
+ executor.execute(errorForwarder.wrap(task));
+ }
}
errorForwarder.await(); // make sure all artifacts are PUT before we
go with Metadata
@@ -298,7 +317,12 @@ final class BasicRepositoryConnector implements
RepositoryConnector {
Runnable task = new PutTaskRunner(location,
transfer.getFile(), checksumLocations, listener);
- executor.execute(errorForwarder.wrap(task));
+ if (first) {
+ task.run();
+ first = false;
+ } else {
+ executor.execute(errorForwarder.wrap(task));
+ }
}
errorForwarder.await(); // make sure each group is done before
starting next group
diff --git a/src/site/markdown/configuration.md
b/src/site/markdown/configuration.md
index 05a75bdea..abee016a2 100644
--- a/src/site/markdown/configuration.md
+++ b/src/site/markdown/configuration.md
@@ -32,7 +32,7 @@ under the License.
| `aether.checksums.algorithms`
| String | Comma-separated list of checksum algorithms with
which checksums are validated (downloaded) and generated (uploaded). Resolver
by default supports following algorithms: `MD5`, `SHA-1`, `SHA-256` and
`SHA-512`. New algorithms can be added by implementing
`ChecksumAlgorithmFactory` component.
[...]
| `aether.conflictResolver.verbose`
| boolean | Flag controlling the conflict resolver's verbose
mode.
[...]
| `aether.connector.basic.threads` or `maven.artifact.threads`
| int | Number of threads to use for uploading/downloading.
[...]
-| `aether.connector.basic.parallelPut`
| boolean | Enables or disables parallel PUT processing (parallel
deploys) on basic connector globally or per remote repository. When disabled,
connector behaves exactly as in Maven 3.8.x did: GETs are parallel while PUTs
are sequential.
[...]
+| `aether.connector.basic.parallelPut`
| boolean | Enables or disables parallel PUT processing (parallel
deploys) on basic connector globally or per remote repository. When disabled,
connector behaves exactly as in Maven 3.8.x did: GETs are parallel while PUTs
are sequential. When enabled, connector will issue first PUT individually and
only once completed the rest of PUTs in parallel.
[...]
| `aether.connector.classpath.loader`
| ClassLoader | `ClassLoader` from which resources should be
retrieved which start with the `classpath:` protocol.
[...]
| `aether.connector.connectTimeout`
| long | Connect timeout in milliseconds.
[...]
| `aether.connector.http.bind.address`
| String | Set the outgoing interface (globally or per remote
repository). Valid values are local accessible IP addresses or host names. The
default will use the system's default route. Invalid addresses will result in
HttpTransport creation failure.
[...]