Merge branch 'eclipse-main' into translation

This commit is contained in:
Axel Uhl committed 2026-10-08 18:45:17 +02:00
commit fbff5aedf4
9 files changed
+80 -10

No files matched your search

+8
View File
@@ -49,6 +49,14 @@ jobs:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
mvn-toolchain-id: 'JavaSE-17'
- name: Pin Apache Maven to 3.9.16
# Tycho 4.0.x requires the Maven 3.9.x line; the GitHub runner image's default
# Maven floats and bumped to 3.10.0, which breaks Tycho's Sisu/Guice component
# wiring. Pin a known-good 3.9.x so the build no longer depends on the runner
# image's default.
uses: stCarolas/setup-maven@12eb41b233df95d49b0c11fc1b5bc8312e5d4ce0 # v5.1
with:
maven-version: 3.9.16
- shell: bash
env: # Or as an environment variable
TMP: /mnt/tmp
+8
View File
@@ -16,6 +16,14 @@ jobs:
with:
distribution: temurin
java-version: 21
- name: Pin Apache Maven to 3.9.16
# Tycho 4.0.x requires the Maven 3.9.x line; the GitHub runner image's default
# Maven floats and bumped to 3.10.0, which breaks Tycho's Sisu/Guice component
# wiring. Pin a known-good 3.9.x so the build no longer depends on the runner
# image's default.
uses: stCarolas/setup-maven@12eb41b233df95d49b0c11fc1b5bc8312e5d4ce0 # v5.1
with:
maven-version: 3.9.16
- name: Check out the repository to the runner
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
@@ -30,6 +30,14 @@ jobs:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
mvn-toolchain-id: 'JavaSE-17'
- name: Pin Apache Maven to 3.9.16
# Tycho 4.0.x requires the Maven 3.9.x line; the GitHub runner image's default
# Maven floats and bumped to 3.10.0, which breaks Tycho's Sisu/Guice component
# wiring. Pin a known-good 3.9.x so the build no longer depends on the runner
# image's default.
uses: stCarolas/setup-maven@12eb41b233df95d49b0c11fc1b5bc8312e5d4ce0 # v5.1
with:
maven-version: 3.9.16
- shell: bash
env: # Or as an environment variable
TMP: /mnt/tmp
+8
View File
@@ -189,6 +189,14 @@ jobs:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '25'
mvn-toolchain-id: 'JavaSE-25'
- name: Pin Apache Maven to 3.9.16
# Tycho 4.0.x requires the Maven 3.9.x line; the GitHub runner image's default
# Maven floats and bumped to 3.10.0, which breaks Tycho's Sisu/Guice component
# wiring ("No implementation for MavenTargetLocationFactory was bound"). Pin a
# known-good 3.9.x so the build no longer depends on the runner image's default.
uses: stCarolas/setup-maven@12eb41b233df95d49b0c11fc1b5bc8312e5d4ce0 # v5.1
with:
maven-version: 3.9.16
- name: Setup Android SDK
uses: android-actions/setup-android@40fd30fb8d7440372e1316f5d1809ec01dcd3699 # v4.0.1
with:
@@ -286,20 +286,37 @@ public abstract class TrackedRegattaImpl implements TrackedRegatta {
// the same listener; no dedicated lock on raceListeners is needed.
lockTrackedRacesForRead();
try {
// The mapping function only creates and registers the executor; it must NOT dispatch the
// catch-up raceAdded events, because for a synchronous executor that dispatch runs inline on
// this thread while computeIfAbsent still holds the reservation node for this key. A listener
// callback that in turn calls addRaceListener (e.g. runWhenDoneLoading registering a
// race-removal listener on this same regatta) would then re-enter computeIfAbsent on the same
// ConcurrentHashMap and self-deadlock on the reservation node (the CHM contract forbids the
// mapping function from modifying the map). We therefore capture the catch-up work in a holder
// and dispatch it AFTER computeIfAbsent returns, with the entry fully installed. The holder is
// populated only when a new entry was actually created, preserving the duplicate-registration
// collapse. The read lock on trackedRacesLock is still held during the dispatch, so ordering
// relative to enqueEvent is unchanged.
final Runnable[] catchUpHolder = new Runnable[1];
raceListeners.computeIfAbsent(listener, listenerToAdd -> {
final RunnableExecutor eventQueue = synchronous ? new SynchronousRunnableExecutor() : new AsynchronousRunnableExecutor();
final List<TrackedRace> trackedRacesCopy = new ArrayList<>();
Util.addAll(getTrackedRaces(), trackedRacesCopy);
threadLocalTransporter.ifPresent(ThreadLocalTransporter::rememberThreadLocalStates);
eventQueue.addWork(() -> {
withBeforeAndAfterHandling(threadLocalTransporter, () -> {
for (TrackedRace trackedRace : trackedRacesCopy) {
listenerToAdd.raceAdded(trackedRace);
}
catchUpHolder[0] = () -> {
eventQueue.addWork(() -> {
withBeforeAndAfterHandling(threadLocalTransporter, () -> {
for (TrackedRace trackedRace : trackedRacesCopy) {
listenerToAdd.raceAdded(trackedRace);
}
});
});
});
};
return eventQueue;
});
if (catchUpHolder[0] != null) {
catchUpHolder[0].run();
}
} finally {
unlockTrackedRacesAfterRead();
}
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?>
<target name="Race Analysis Target" sequenceNumber="228">
<target name="Race Analysis Target" sequenceNumber="229">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
<unit id="javax.ws.rs" version="1.1.1.v20130318-1750"/>
@@ -174,6 +174,12 @@
<unit id="junit-platform-runner.source" version="1.11.3"/>
<unit id="org.opentest4j" version="1.3.0"/>
<unit id="org.opentest4j.source" version="1.3.0"/>
<unit id="junit-platform-suite-api" version="1.11.3"/>
<unit id="junit-platform-suite-api.source" version="1.11.3"/>
<unit id="junit-platform-suite-commons" version="1.11.3"/>
<unit id="junit-platform-suite-commons.source" version="1.11.3"/>
<unit id="junit-platform-suite-engine" version="1.11.3"/>
<unit id="junit-platform-suite-engine.source" version="1.11.3"/>
<repository location="https://download.eclipse.org/releases/2024-12/202412041000/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
@@ -357,6 +363,12 @@
<plugin id="junit-platform-launcher.source"/>
<plugin id="junit-platform-runner"/>
<plugin id="junit-platform-runner.source"/>
<plugin id="junit-platform-suite-api"/>
<plugin id="junit-platform-suite-api.source"/>
<plugin id="junit-platform-suite-commons"/>
<plugin id="junit-platform-suite-commons.source"/>
<plugin id="junit-platform-suite-engine"/>
<plugin id="junit-platform-suite-engine.source"/>
<plugin id="org.opentest4j"/>
<plugin id="org.opentest4j.source"/>
<plugin id="org.jvnet.mimepull"/>
@@ -23,6 +23,15 @@
<div class="mainContent">
<h2 class="releaseHeadline">Release Notes - Administration Console</h2>
<div class="innerContent">
<h2 class="articleSubheadline">October 2026</h2>
<ul class="bulletList">
<li>Bug fix: a replica could hang indefinitely during its initial load from a primary when a
deserialized regatta already contained races. Registering the race-addition listener
triggered a catch-up notification that re-entered listener registration on the same regatta,
deadlocking a <tt>ConcurrentHashMap</tt> update on itself. Replica startup and operator-initiated
replication from a non-empty primary are affected. This is now fixed; catch-up notifications are
dispatched after the listener registration completes.</li>
</ul>
<h2 class="articleSubheadline">September 2026</h2>
<ul class="bulletList">
<li>Master data import (MDI) now uses noticeably less memory and is a little faster, especially when
+2 -2
View File
@@ -36,7 +36,7 @@
When adjusting tycho-version here, also make sure to adjust it accordingly
in java/com.amazon.aws.aws-java-api/pom.xml
-->
<tycho-version>4.0.12</tycho-version>
<tycho-version>5.0.4</tycho-version>
<toolchains-version>3.2.0</toolchains-version>
<gwt.version>2.12.4</gwt.version>
<!-- gwt-maven-plugin is typically in sync with the GWT version. But sometimes versions need extra time after a new GWT release. -->
@@ -310,7 +310,7 @@
for Tycho that have been removed from JavaSE-11 if not building for Android -->
<id>with-java11-non-android-relevant</id>
<activation>
<jdk>[9.0,21.0)</jdk>
<jdk>[9.0,)</jdk>
</activation>
<build>
<plugins>
+1 -1
View File
@@ -140,7 +140,7 @@
</tr>
<tr>
<td><a href="../eventmanagers/smartphone-tracking.md">Set up smart phone tracking</a></td>
<td>This tutorial shows how to set up <em>smart phone tracking/em> with the <strong>SAP Sailing Analytics</strong>.</td>
<td>This tutorial shows how to set up <em>smart phone tracking</em> with the <strong>SAP Sailing Analytics</strong>.</td>
</tr>
<tr>
<td><a href="sailinganalytics/set-up-course.md">Course set up</a></td>