This is an automated email from the ASF dual-hosted git repository.
timoninmaxim pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 7f107fd9ac8 IGNITE-22996 Move Ignite sources to JDK11 (#11508)
7f107fd9ac8 is described below
commit 7f107fd9ac8dd5d6bd4ebadbe283bd30568f707b
Author: Maksim Timonin <[email protected]>
AuthorDate: Wed Sep 11 18:45:34 2024 +0300
IGNITE-22996 Move Ignite sources to JDK11 (#11508)
---
.github/workflows/commit-check.yml | 3 +-
.github/workflows/publish-snapshot.yml | 2 +-
bin/control.bat | 8 +-
bin/ignite.bat | 8 +-
bin/include/functions.sh | 6 +-
bin/include/jvmdefaults.bat | 19 ---
bin/include/jvmdefaults.sh | 19 +--
bin/index-reader.bat | 8 +-
deliveries/docker/apache-ignite-net/Dockerfile | 2 +-
deliveries/docker/apache-ignite/arm64/Dockerfile | 4 +-
deliveries/docker/apache-ignite/run.sh | 19 +--
deliveries/docker/apache-ignite/x86_64/Dockerfile | 4 +-
docs/README.adoc | 2 +-
docs/_docs/includes/cpp-prerequisites.adoc | 2 +-
docs/_docs/includes/dotnet-prerequisites.adoc | 2 +-
docs/_docs/includes/prereqs.adoc | 2 +-
.../monitoring-metrics/new-metrics-system.adoc | 2 +-
.../net-specific/net-cross-platform-support.adoc | 6 +-
docs/_docs/net-specific/net-troubleshooting.adoc | 3 +-
.../perf-and-troubleshooting/memory-tuning.adoc | 2 +-
docs/_docs/quick-start/java.adoc | 8 +-
docs/_docs/restapi.adoc | 8 +-
docs/_docs/security/sandbox.adoc | 2 +-
docs/_docs/security/tde.adoc | 10 +-
docs/_docs/tools/control-script.adoc | 4 +-
docs/_docs/tools/informatica.adoc | 2 +-
examples/README.md | 4 +-
examples/pom-standalone-lgpl.xml | 4 +-
examples/pom-standalone.xml | 4 +-
modules/checkstyle/pom.xml | 4 +-
.../jdbc/thin/JdbcThinConnectionSSLTest.java | 8 +-
.../PersistenceBasicCompatibilityTest.java | 2 +-
.../internal/plugin/IgniteLogInfoProviderImpl.java | 2 +-
.../platform/memory/PlatformMemoryPool.java | 7 +-
.../suggestions/JvmConfigurationSuggestions.java | 9 --
.../ignite/internal/util/FeatureChecker.java | 8 +-
.../apache/ignite/internal/util/GridCleaner.java | 99 -------------
.../apache/ignite/internal/util/GridUnsafe.java | 8 +-
.../JvmConfigurationSuggestionsTest.java | 86 -----------
.../ignite/internal/util/GridCleanerTest.java | 44 ------
.../ignite/testsuites/IgniteBasicTestSuite2.java | 5 -
.../dns_failure_test/BlockingNameService.java | 20 +--
modules/ducktests/tests/docker/Dockerfile | 2 +-
modules/ducktests/tests/docker/ducker-ignite | 2 +-
modules/ducktests/tests/docker/run_tests.sh | 4 +-
modules/kubernetes/config/Dockerfile | 2 +-
modules/numa-allocator/README.md | 4 +-
.../Impl/Unmanaged/Jni/JvmDll.cs | 6 +-
modules/platforms/dotnet/examples/README.md | 2 +-
modules/tools/pom.xml | 15 +-
.../tools/ant/beautifier/GridJavadocAntTask.java | 40 +++--
.../ignite/tools/javadoc/IgniteLinkTaglet.java | 164 ---------------------
packaging/deb/control | 2 +-
packaging/rpm/apache-ignite.spec | 4 +-
parent/pom.xml | 14 +-
55 files changed, 113 insertions(+), 619 deletions(-)
diff --git a/.github/workflows/commit-check.yml
b/.github/workflows/commit-check.yml
index 36d6425e580..b736458a4f5 100644
--- a/.github/workflows/commit-check.yml
+++ b/.github/workflows/commit-check.yml
@@ -31,7 +31,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- java: [ '8', '11' ]
+ java: [ '11' ]
name: Check java code on JDK ${{ matrix.java }}
steps:
- uses: actions/checkout@v4
@@ -63,7 +63,6 @@ jobs:
./mvnw test-compile
-Pall-java,licenses,lgpl,checkstyle,examples,all-scala,scala,check-licenses -B
-V
- name: Run abandoned tests checks.
- if: ${{ matrix.java == '8' }}
run : |
./mvnw test -Pcheck-test-suites,all-java,all-scala,scala -B -V
diff --git a/.github/workflows/publish-snapshot.yml
b/.github/workflows/publish-snapshot.yml
index 9a9a5f1e3cb..04f22a182e3 100644
--- a/.github/workflows/publish-snapshot.yml
+++ b/.github/workflows/publish-snapshot.yml
@@ -35,7 +35,7 @@ jobs:
- name: Set up Java
uses: actions/setup-java@v2
with:
- java-version: 8
+ java-version: 11
distribution: 'adopt'
server-id: apache.snapshots.https
server-username: NEXUS_USER
diff --git a/bin/control.bat b/bin/control.bat
index 4174125c007..135329331e9 100644
--- a/bin/control.bat
+++ b/bin/control.bat
@@ -28,7 +28,7 @@ if "%OS%" == "Windows_NT" setlocal
if defined JAVA_HOME goto checkJdk
echo %0, ERROR:
echo JAVA_HOME environment variable is not found.
- echo Please point JAVA_HOME variable to location of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to location of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -37,7 +37,7 @@ goto error_finish
if exist "%JAVA_HOME%\bin\java.exe" goto checkJdkVersion
echo %0, ERROR:
echo JAVA is not found in JAVA_HOME=%JAVA_HOME%.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -55,10 +55,10 @@ set JAVA_VER_STR=%JAVA_VER_STR:"=%
for /f "tokens=1,2 delims=." %%a in ("%JAVA_VER_STR%.x") do set
MAJOR_JAVA_VER=%%a& set MINOR_JAVA_VER=%%b
if %MAJOR_JAVA_VER% == 1 set MAJOR_JAVA_VER=%MINOR_JAVA_VER%
-if %MAJOR_JAVA_VER% LSS 8 (
+if %MAJOR_JAVA_VER% LSS 11 (
echo %0, ERROR:
echo The version of JAVA installed in %JAVA_HOME% is incorrect.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
)
diff --git a/bin/ignite.bat b/bin/ignite.bat
index 1bfa82c95ae..1368fc39a45 100644
--- a/bin/ignite.bat
+++ b/bin/ignite.bat
@@ -28,7 +28,7 @@ if "%OS%" == "Windows_NT" setlocal
if defined JAVA_HOME goto checkJdk
echo %0, ERROR:
echo JAVA_HOME environment variable is not found.
- echo Please point JAVA_HOME variable to location of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to location of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -37,7 +37,7 @@ goto error_finish
if exist "%JAVA_HOME%\bin\java.exe" goto checkJdkVersion
echo %0, ERROR:
echo JAVA is not found in JAVA_HOME=%JAVA_HOME%.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -55,10 +55,10 @@ set JAVA_VER_STR=%JAVA_VER_STR:"=%
for /f "tokens=1,2 delims=." %%a in ("%JAVA_VER_STR%.x") do set
MAJOR_JAVA_VER=%%a& set MINOR_JAVA_VER=%%b
if %MAJOR_JAVA_VER% == 1 set MAJOR_JAVA_VER=%MINOR_JAVA_VER%
-if %MAJOR_JAVA_VER% LSS 8 (
+if %MAJOR_JAVA_VER% LSS 11 (
echo %0, ERROR:
echo The version of JAVA installed in %JAVA_HOME% is incorrect.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
)
diff --git a/bin/include/functions.sh b/bin/include/functions.sh
index f3cef38f626..0016e447e87 100755
--- a/bin/include/functions.sh
+++ b/bin/include/functions.sh
@@ -66,7 +66,7 @@ checkJava() {
if [ $RETCODE -ne 0 ]; then
echo $0", ERROR:"
echo "JAVA_HOME environment variable is not found."
- echo "Please point JAVA_HOME variable to location of JDK 1.8 or
later."
+ echo "Please point JAVA_HOME variable to location of JDK 11 or
later."
echo "You can also download latest JDK at http://java.com/download"
exit 1
@@ -82,10 +82,10 @@ checkJava() {
#
javaMajorVersion "$JAVA"
- if [ $version -lt 8 ]; then
+ if [ $version -lt 11 ]; then
echo "$0, ERROR:"
echo "The $version version of JAVA installed in JAVA_HOME=$JAVA_HOME
is incompatible."
- echo "Please point JAVA_HOME variable to installation of JDK 1.8 or
later."
+ echo "Please point JAVA_HOME variable to installation of JDK 11 or
later."
echo "You can also download latest JDK at http://java.com/download"
exit 1
fi
diff --git a/bin/include/jvmdefaults.bat b/bin/include/jvmdefaults.bat
index a7ffad9f236..942e9243cbb 100644
--- a/bin/include/jvmdefaults.bat
+++ b/bin/include/jvmdefaults.bat
@@ -24,25 +24,6 @@ set value=""
:: First argument is the version of the java
:: Second argument is the current value of the jvm options
:: Third value is the name of the environment variable that jvm options should
be set to
-if %java_version% == 8 (
- set value= ^
- -XX:+AggressiveOpts ^
- %current_value%
-)
-
-if %java_version% GEQ 9 if %java_version% LSS 11 (
- set value= ^
- -XX:+AggressiveOpts ^
- --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED ^
- --add-exports=java.base/sun.nio.ch=ALL-UNNAMED ^
- --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED ^
- --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED ^
- --add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED
^
- --illegal-access=permit ^
- --add-modules=java.xml.bind ^
- %current_value%
-)
-
if %java_version% GEQ 11 if %java_version% LSS 14 (
set value= ^
--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED ^
diff --git a/bin/include/jvmdefaults.sh b/bin/include/jvmdefaults.sh
index 5b93a547960..1bcb72733b7 100644
--- a/bin/include/jvmdefaults.sh
+++ b/bin/include/jvmdefaults.sh
@@ -24,24 +24,7 @@ getJavaSpecificOpts() {
current_value=$2
value=""
- if [ $version -eq 8 ] ; then
- value="\
- -XX:+AggressiveOpts \
- ${current_value}"
-
- elif [ $version -gt 8 ] && [ $version -lt 11 ]; then
- value="\
- -XX:+AggressiveOpts \
- --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
- --add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
- --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED \
- --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED \
-
--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED \
- --illegal-access=permit \
- --add-modules=java.xml.bind \
- ${current_value}"
-
- elif [ "${version}" -ge 11 ] && [ "${version}" -lt 14 ]; then
+ if [ "${version}" -ge 11 ] && [ "${version}" -lt 14 ]; then
value="\
--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
--add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
diff --git a/bin/index-reader.bat b/bin/index-reader.bat
index c1b1dda2fcf..afb1b89ace0 100644
--- a/bin/index-reader.bat
+++ b/bin/index-reader.bat
@@ -27,7 +27,7 @@ if "%OS%" == "Windows_NT" setlocal
if defined JAVA_HOME goto checkJdk
echo %0, ERROR:
echo JAVA_HOME environment variable is not found.
- echo Please point JAVA_HOME variable to location of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to location of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -36,7 +36,7 @@ goto error_finish
if exist "%JAVA_HOME%\bin\java.exe" goto checkJdkVersion
echo %0, ERROR:
echo JAVA is not found in JAVA_HOME=%JAVA_HOME%.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
@@ -54,10 +54,10 @@ set JAVA_VER_STR=%JAVA_VER_STR:"=%
for /f "tokens=1,2 delims=." %%a in ("%JAVA_VER_STR%.x") do set
MAJOR_JAVA_VER=%%a& set MINOR_JAVA_VER=%%b
if %MAJOR_JAVA_VER% == 1 set MAJOR_JAVA_VER=%MINOR_JAVA_VER%
-if %MAJOR_JAVA_VER% LSS 8 (
+if %MAJOR_JAVA_VER% LSS 11 (
echo %0, ERROR:
echo The version of JAVA installed in %JAVA_HOME% is incorrect.
- echo Please point JAVA_HOME variable to installation of JDK 1.8 or later.
+ echo Please point JAVA_HOME variable to installation of JDK 11 or later.
echo You can also download latest JDK at http://java.com/download.
goto error_finish
)
diff --git a/deliveries/docker/apache-ignite-net/Dockerfile
b/deliveries/docker/apache-ignite-net/Dockerfile
index 050956b23e7..ac6e118e3f1 100644
--- a/deliveries/docker/apache-ignite-net/Dockerfile
+++ b/deliveries/docker/apache-ignite-net/Dockerfile
@@ -23,7 +23,7 @@ RUN mkdir -p /usr/share/man/man1
RUN apt update && apt install apt-utils -y --no-install-recommends
## Install JRE
-RUN apt update && apt install openjdk-8-jre-headless -y --no-install-recommends
+RUN apt update && apt install openjdk-11-jre-headless -y
--no-install-recommends
WORKDIR /app
diff --git a/deliveries/docker/apache-ignite/arm64/Dockerfile
b/deliveries/docker/apache-ignite/arm64/Dockerfile
index d4828acfb2c..1e1098c0ba8 100644
--- a/deliveries/docker/apache-ignite/arm64/Dockerfile
+++ b/deliveries/docker/apache-ignite/arm64/Dockerfile
@@ -15,8 +15,8 @@
# limitations under the License.
#
-# Start from Java 8 based on Ubuntu Focal Linux image (there is no Alpine
Linux image with Java 8 on ARM64)
-ARG JDK_VERSION=8
+# Start from Java 11 based on Ubuntu Focal Linux image (there is no Alpine
Linux image with Java 11 on ARM64)
+ARG JDK_VERSION=11
FROM eclipse-temurin:${JDK_VERSION}-jre-focal
# Settings
diff --git a/deliveries/docker/apache-ignite/run.sh
b/deliveries/docker/apache-ignite/run.sh
index bacb588325c..1c8eff2dea0 100755
--- a/deliveries/docker/apache-ignite/run.sh
+++ b/deliveries/docker/apache-ignite/run.sh
@@ -73,24 +73,9 @@ if [ -z "${JVM_OPTS}" ] ; then
fi
#
-# Add Java extra option
+# Add Java extra option
#
-if [ "${version}" -eq 8 ] ; then
- JVM_OPTS="\
- -XX:+AggressiveOpts \
- ${JVM_OPTS}"
-elif [ "${version}" -gt 8 ] && [ "${version}" -lt 11 ]; then
- JVM_OPTS="\
- -XX:+AggressiveOpts \
- --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
- --add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
- --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED \
- --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED \
-
--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED \
- --illegal-access=permit \
- --add-modules=java.xml.bind \
- ${JVM_OPTS}"
-elif [ "${version}" -ge 11 ] ; then
+if [ "${version}" -ge 11 ] ; then
JVM_OPTS="\
--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
--add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
diff --git a/deliveries/docker/apache-ignite/x86_64/Dockerfile
b/deliveries/docker/apache-ignite/x86_64/Dockerfile
index fd302f191a5..3e1b1aebd07 100644
--- a/deliveries/docker/apache-ignite/x86_64/Dockerfile
+++ b/deliveries/docker/apache-ignite/x86_64/Dockerfile
@@ -15,8 +15,8 @@
# limitations under the License.
#
-# Start from Java 8 based on Alpine Linux image
-ARG JDK_VERSION=8
+# Start from Java 11 based on Alpine Linux image
+ARG JDK_VERSION=11
FROM eclipse-temurin:${JDK_VERSION}-jre-alpine
# Settings
diff --git a/docs/README.adoc b/docs/README.adoc
index 710f7847fc6..118944bcfd4 100644
--- a/docs/README.adoc
+++ b/docs/README.adoc
@@ -153,7 +153,7 @@ When referencing an external resource, make the link to
open in a new window by
[source, adoc]
----
-link:https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SunJSSE_Protocols[Supported
protocols,window=_blank]
+link:https://docs.oracle.com/en/java/javase/11/security/java-security-overview1.html#GUID-FCF419A7-B856-46DD-A36F-C6F88F9AF37F[Supported
protocols,window=_blank]
----
diff --git a/docs/_docs/includes/cpp-prerequisites.adoc
b/docs/_docs/includes/cpp-prerequisites.adoc
index dd8fdefd27e..cbb169f4a4a 100644
--- a/docs/_docs/includes/cpp-prerequisites.adoc
+++ b/docs/_docs/includes/cpp-prerequisites.adoc
@@ -14,7 +14,7 @@
// limitations under the License.
[width="100%",cols="1,3"]
|===
-|JDK|Oracle JDK 8, 11 or 17, Open JDK 8, 11 or 17, IBM JDK 8, 11 or 17
+|JDK|Oracle JDK 11 or 17, Open JDK 11 or 17, IBM JDK 11 or 17
|OS|Windows Vista, Windows Server 2008 and later versions, Ubuntu (18.04 64
bit)
|Network|No restrictions (10G recommended)
|Hardware|No restrictions
diff --git a/docs/_docs/includes/dotnet-prerequisites.adoc
b/docs/_docs/includes/dotnet-prerequisites.adoc
index 08bd943c910..c9b2feeb51a 100644
--- a/docs/_docs/includes/dotnet-prerequisites.adoc
+++ b/docs/_docs/includes/dotnet-prerequisites.adoc
@@ -14,7 +14,7 @@
// limitations under the License.
[width="100%",cols="1,3"]
|===
-|JDK |Oracle JDK 8, 11 or 17, Open JDK 8, 11 or 17, IBM JDK 8, 11 or 17
+|JDK |Oracle JDK 11 or 17, Open JDK 11 or 17, IBM JDK 11 or 17
|.NET Framework |.NET 4.0+, .NET Core 2.0+
//|IDE |Visual Studio 2010+, Rider, Visual Studio Code
|===
diff --git a/docs/_docs/includes/prereqs.adoc b/docs/_docs/includes/prereqs.adoc
index a39e30f738d..6964c1d19c2 100644
--- a/docs/_docs/includes/prereqs.adoc
+++ b/docs/_docs/includes/prereqs.adoc
@@ -14,7 +14,7 @@
// limitations under the License.
[width="100%",cols="1,3"]
|===
-|JDK |Oracle JDK 8, 11 or 17 Open JDK 8, 11 or 17, IBM JDK 8, 11 or 17
+|JDK |Oracle JDK 11 or 17 Open JDK 11 or 17, IBM JDK 11 or 17
|OS |Linux (any flavor), Mac OSX (10.6 and up), Windows (XP and up),
Windows Server (2008 and up), Oracle Solaris
|ISA |x86, x64, SPARC, PowerPC, ARM64
diff --git a/docs/_docs/monitoring-metrics/new-metrics-system.adoc
b/docs/_docs/monitoring-metrics/new-metrics-system.adoc
index 5f2de5d21a5..b914f59a454 100644
--- a/docs/_docs/monitoring-metrics/new-metrics-system.adoc
+++ b/docs/_docs/monitoring-metrics/new-metrics-system.adoc
@@ -135,7 +135,7 @@ JVM_OPTS="-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=${J
==== Understanding MBean's ObjectName
-Every JMX Mbean has an
https://docs.oracle.com/javase/8/docs/api/javax/management/ObjectName.html[ObjectName,window=_blank].
+Every JMX Mbean has an
https://docs.oracle.com/en/java/javase/11/docs/api/java.management/javax/management/ObjectName.html[ObjectName,window=_blank].
The ObjectName is used to identify the bean.
The ObjectName consists of a domain and a list of key properties, and can be
represented as a string as follows:
diff --git a/docs/_docs/net-specific/net-cross-platform-support.adoc
b/docs/_docs/net-specific/net-cross-platform-support.adoc
index b343665f423..abd05f5ea6b 100644
--- a/docs/_docs/net-specific/net-cross-platform-support.adoc
+++ b/docs/_docs/net-specific/net-cross-platform-support.adoc
@@ -24,7 +24,7 @@ applications for Linux and macOS, as well as Windows.
*Requirements:*
* https://www.microsoft.com/net/download/[.NET Core SDK 2.0+, window=_blank]
-* http://www.oracle.com/technetwork/java/javase/downloads/index.html[Java 8+,
window=_blank] (macOS requires JDK, otherwise JRE works)
+* http://www.oracle.com/technetwork/java/javase/downloads/index.html[Java 11+,
window=_blank] (macOS requires JDK, otherwise JRE works)
*Running Examples*
https://ignite.apache.org/download.cgi#binaries[Binary distribution,
window=_blank] includes .NET Core examples:
@@ -48,10 +48,6 @@ If you changed the default location of Java, then specify
the actual path using
== Known Issues
-*No Java runtime present, requesting install*
-
-Java `8u151` has a known bug on macOS:
https://bugs.openjdk.java.net/browse/JDK-7131356[JDK-7131356, window=_blank].
Make sure to install `8u152` or later.
-
*Serializing delegates is not supported on this platform*
.NET Core does not support delegate serialization,
`System.MulticastDelegate.GetObjectData`
diff --git a/docs/_docs/net-specific/net-troubleshooting.adoc
b/docs/_docs/net-specific/net-troubleshooting.adoc
index cc4617bf255..01305be7a89 100644
--- a/docs/_docs/net-specific/net-troubleshooting.adoc
+++ b/docs/_docs/net-specific/net-troubleshooting.adoc
@@ -72,8 +72,7 @@ so if you have x86 AND x64 JDK installed, it will work in any
mode.
The `126 ERROR_MOD_NOT_FOUND` code can occur due to missing dependencies:
-* JDK 8 requires
https://www.microsoft.com/en-us/download/details.aspx?id=14632[Microsoft Visual
C{pp} 2010 Redistributable Package, window=_blank]
-* Later JDK versions require
https://www.microsoft.com/en-us/download/details.aspx?id=48145[Microsoft Visual
C{pp} 2015 Redistributable Package, window=_blank] or later
+* JDK require
https://www.microsoft.com/en-us/download/details.aspx?id=48145[Microsoft Visual
C{pp} 2015 Redistributable Package, window=_blank] or later
=== Java class is not found
diff --git a/docs/_docs/perf-and-troubleshooting/memory-tuning.adoc
b/docs/_docs/perf-and-troubleshooting/memory-tuning.adoc
index dfaedff5b40..e452b27233a 100644
--- a/docs/_docs/perf-and-troubleshooting/memory-tuning.adoc
+++ b/docs/_docs/perf-and-troubleshooting/memory-tuning.adoc
@@ -90,7 +90,7 @@ practices on GC logs and heap dumps collection.
Below are sets of example JVM configurations for applications that can utilize
Java Heap on server nodes heavily, thus
triggering long — or frequent, short — stop-the-world GC pauses.
-For JDK 1.8+ deployments you should use G1 garbage collector.
+For JDK 11+ deployments you should use G1 garbage collector.
The settings below are a good starting point if 10GB heap is more than enough
for your server nodes:
[source,shell]
diff --git a/docs/_docs/quick-start/java.adoc b/docs/_docs/quick-start/java.adoc
index 4dbcf6fcc40..fbea06636da 100644
--- a/docs/_docs/quick-start/java.adoc
+++ b/docs/_docs/quick-start/java.adoc
@@ -22,7 +22,7 @@ Ignite was officially tested on:
include::includes/prereqs.adoc[]
-If you use Java version 11 or later, see <<Running Ignite with Java 11 or
later>> for details.
+See <<Running Ignite with Java 11 or later>> for additional JVM parameters.
== Installing Ignite
@@ -136,7 +136,7 @@ public class HelloWorld {
====
Don't forget to add imports for HelloWorld.java. It should be trivial as long
as Maven solves all of the dependencies.
-Plus, you might need to add these settings to your pom.xml if the IDE keeps
using Java compiler from a version earlier than 1.8:
+Plus, you might need to add these settings to your pom.xml if the IDE keeps
using Java compiler from a version earlier than 11:
[source,xml]
----
<build>
@@ -145,8 +145,8 @@ Plus, you might need to add these settings to your pom.xml
if the IDE keeps usin
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <source>11</source>
+ <target>11</target>
</configuration>
</plugin>
</plugins>
diff --git a/docs/_docs/restapi.adoc b/docs/_docs/restapi.adoc
index 4db745b6eae..0409ed21223 100644
--- a/docs/_docs/restapi.adoc
+++ b/docs/_docs/restapi.adoc
@@ -199,21 +199,21 @@ of the argument. The REST API supports both <<Java
Types>> and <<Custom Types>>.
|`date`
|`java.sql.Date`
-The date value should be in the format as specified in the `valueOf(String)`
method in the
link:https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html#valueOf-java.lang.String-[Java
documentation ,window=_blank]
+The date value should be in the format as specified in the `valueOf(String)`
method in the
link:https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Date.html#valueOf(java.lang.String)[Java
documentation ,window=_blank]
Example: 2018-01-01
|`time`
|`java.sql.Time`
-The time value should be in the format as specified in the `valueOf(String)`
method in the
link:https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html#valueOf-java.lang.String-[Java
documentation ,window=_blank]
+The time value should be in the format as specified in the `valueOf(String)`
method in the
link:https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Date.html#valueOf(java.lang.String)[Java
documentation ,window=_blank]
Example: 01:01:01
|`timestamp`
|`java.sql.Timestamp`
-The timestamp value should be in the format as specified in the
`valueOf(String)` method in the
link:https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html#valueOf-java.lang.String-[Java
documentation ,window=_blank]
+The timestamp value should be in the format as specified in the
`valueOf(String)` method in the
link:https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/Date.html#valueOf(java.lang.String)[Java
documentation ,window=_blank]
Example: 2018-02-18%2001:01:01
@@ -2947,4 +2947,4 @@ Returns HTTP Status code 200 if kernal has started, and
503 otherwise
"response": "grid has started",
"successStatus": 0
}
-----
\ No newline at end of file
+----
diff --git a/docs/_docs/security/sandbox.adoc b/docs/_docs/security/sandbox.adoc
index 03a5632ce43..86aa0c00b38 100644
--- a/docs/_docs/security/sandbox.adoc
+++ b/docs/_docs/security/sandbox.adoc
@@ -29,7 +29,7 @@ The activation of Ignite Sandbox involves the configuration
of an `SecurityManag
=== Install SecurityManager
Due to the fact, that Ignite Sandbox is based on the Java Sandbox model, and
-link:https://docs.oracle.com/javase/8/docs/technotes/guides/security/spec/security-spec.doc6.html#a19349[SecurityManager,window=_blank]
+link:https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/SecurityManager.html[SecurityManager,window=_blank]
is an important part of that model, you need to have it installed.
The SecurityManager is responsible for checking, which security policy is
currently in effect. It also performs access control checks.
The security manager is not automatically installed when an application is
running. If you run Ignite as a separate application,
diff --git a/docs/_docs/security/tde.adoc b/docs/_docs/security/tde.adoc
index 5d060c062f5..5cd1ca7bbba 100644
--- a/docs/_docs/security/tde.adoc
+++ b/docs/_docs/security/tde.adoc
@@ -109,9 +109,9 @@ A keystore with a master key can be created using `keytool`
as follows:
[source,shell]
----
user:~/tmp:[]$ java -version
-java version "1.8.0_161"
-Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
-Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
+openjdk version "11.0.24" 2024-07-16
+OpenJDK Runtime Environment Temurin-11.0.24+8 (build 11.0.24+8)
+OpenJDK 64-Bit Server VM Temurin-11.0.24+8 (build 11.0.24+8, mixed mode)
user:~/tmp:[]$ keytool -genseckey \
-alias ignite.master.key \
@@ -128,11 +128,11 @@ user:~/tmp:[]$ keytool \
-list
Keystore type: PKCS12
-Keystore provider: SunJSSE
+Keystore provider: SUN
Your keystore contains 1 entry
-ignite.master.key, 07.11.2018, SecretKeyEntry,
+ignite.master.key, 07.08.2024, SecretKeyEntry,
----
== Source Code Example
diff --git a/docs/_docs/tools/control-script.adoc
b/docs/_docs/tools/control-script.adoc
index 904afb22333..ff2ad0988bc 100644
--- a/docs/_docs/tools/control-script.adoc
+++ b/docs/_docs/tools/control-script.adoc
@@ -51,8 +51,8 @@ If you want to connect to a node that is running on a remove
machine, specify th
| --password PASSWORD |The user password. |
| --ping-interval PING_INTERVAL | The ping interval. | 5000
| --ping-timeout PING_TIMEOUT | Ping response timeout. | 30000
-| --ssl-protocol PROTOCOL1, PROTOCOL2... | A list of SSL protocols to try when
connecting to the cluster.
link:https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SunJSSE_Protocols[Supported
protocols,window=_blank]. | `TLS`
-| --ssl-cipher-suites CIPHER1,CIPHER2... | A list of SSL ciphers.
link:https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SupportedCipherSuites[Supported
ciphers,window=_blank]. |
+| --ssl-protocol PROTOCOL1, PROTOCOL2... | A list of SSL protocols to try when
connecting to the cluster.
link:https://docs.oracle.com/en/java/javase/11/security/java-security-overview1.html#GUID-FCF419A7-B856-46DD-A36F-C6F88F9AF37F[Supported
protocols,window=_blank]. | `TLS`
+| --ssl-cipher-suites CIPHER1,CIPHER2... | A list of SSL ciphers.
link:https://docs.oracle.com/en/java/javase/11/docs/specs/security/standard-names.html#jsse-cipher-suite-names[Supported
ciphers,window=_blank]. |
| --ssl-key-algorithm ALG | The SSL key algorithm. | `SunX509`
| --keystore-type KEYSTORE_TYPE | The keystore type. | `JKS`
| --keystore KEYSTORE_PATH | The path to the keystore. Specify a keystore to
enable SSL for the control script.|
diff --git a/docs/_docs/tools/informatica.adoc
b/docs/_docs/tools/informatica.adoc
index 93c95ec2790..c0a098a6a99 100644
--- a/docs/_docs/tools/informatica.adoc
+++ b/docs/_docs/tools/informatica.adoc
@@ -270,7 +270,7 @@ automake (GNU automake) 1.16.1
OpenSSL 1.0.0c 2 Dec 2010
6. g++ --version
g++ (SUSE Linux) 5.5.0 20171010 [gcc-5-branch revision 253640]
-7. JDK 1.8
+7. JDK 11
----
--
diff --git a/examples/README.md b/examples/README.md
index 2aef28e60d3..fb560302c87 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -6,8 +6,8 @@ Instructions on how to start examples can be found in
[README.txt](README.txt).
How to start examples in the developer's environment, please see
[DEVNOTES.txt](DEVNOTES.txt).
-## Running examples on JDK 9/10/11
-Ignite uses proprietary SDK APIs that are not available by default. See also
[How to run Ignite on JDK 9,10 and
11](https://ignite.apache.org/docs/latest/setup#running-ignite-with-java-11-or-later)
+## Running examples
+Ignite uses proprietary SDK APIs that are not available by default. See also
[How to run
Ignite](https://ignite.apache.org/docs/latest/setup#running-ignite-with-java-11-or-later)
To set up local IDE to easier access to examples, it is possible to add
following options as default for all applications
diff --git a/examples/pom-standalone-lgpl.xml b/examples/pom-standalone-lgpl.xml
index 6cc95816706..5027387e58a 100644
--- a/examples/pom-standalone-lgpl.xml
+++ b/examples/pom-standalone-lgpl.xml
@@ -27,8 +27,8 @@
<modelVersion>4.0.0</modelVersion>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
+ <maven.compiler.source>11</maven.compiler.source>
+ <maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/examples/pom-standalone.xml b/examples/pom-standalone.xml
index 6cc95816706..5027387e58a 100644
--- a/examples/pom-standalone.xml
+++ b/examples/pom-standalone.xml
@@ -27,8 +27,8 @@
<modelVersion>4.0.0</modelVersion>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
+ <maven.compiler.source>11</maven.compiler.source>
+ <maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/modules/checkstyle/pom.xml b/modules/checkstyle/pom.xml
index dc2f13d9c2a..179ce8ccf7a 100644
--- a/modules/checkstyle/pom.xml
+++ b/modules/checkstyle/pom.xml
@@ -37,8 +37,8 @@
<version>${revision}</version>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
+ <maven.compiler.source>11</maven.compiler.source>
+ <maven.compiler.target>11</maven.compiler.target>
<maven.flatten.file.name>pom-installed.xml</maven.flatten.file.name>
<revision>2.17.0-SNAPSHOT</revision>
<checkstyle.puppycrawl.version>8.45</checkstyle.puppycrawl.version>
diff --git
a/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinConnectionSSLTest.java
b/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinConnectionSSLTest.java
index ad422a3b93f..761d4744b8f 100644
---
a/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinConnectionSSLTest.java
+++
b/modules/clients/src/test/java/org/apache/ignite/jdbc/thin/JdbcThinConnectionSSLTest.java
@@ -332,9 +332,7 @@ public class JdbcThinConnectionSSLTest extends
JdbcThinAbstractSelfTest {
* @throws Exception If failed.
*
* Note: Disabled cipher suite can be enabled via Java Security property
"jdk.tls.disabledAlgorithms" or in
- * <JRE_8_HOME>/lib/security/java.security file.
- *
- * Note: java.security file location may be changed for Java 9+ version
+ * <JAVA_HOME>/conf/security/java.security file.
*/
@Test
public void testDisabledCustomCipher() throws Exception {
@@ -373,9 +371,7 @@ public class JdbcThinConnectionSSLTest extends
JdbcThinAbstractSelfTest {
* @throws Exception If failed.
*
* Note: Disabled cipher suite can be enabled via Java Security property
"jdk.tls.disabledAlgorithms" or in
- * <JRE_8_HOME>/lib/security/java.security file.
- *
- * Note: java.security file location may be changed for Java 9+ version
+ * <JAVA_HOME>/conf/security/java.security file.
*/
@Test
public void testUnsupportedCustomCipher() throws Exception {
diff --git
a/modules/compatibility/src/test/java/org/apache/ignite/compatibility/persistence/PersistenceBasicCompatibilityTest.java
b/modules/compatibility/src/test/java/org/apache/ignite/compatibility/persistence/PersistenceBasicCompatibilityTest.java
index dc06de7d0a7..0140a129683 100644
---
a/modules/compatibility/src/test/java/org/apache/ignite/compatibility/persistence/PersistenceBasicCompatibilityTest.java
+++
b/modules/compatibility/src/test/java/org/apache/ignite/compatibility/persistence/PersistenceBasicCompatibilityTest.java
@@ -108,7 +108,7 @@ public class PersistenceBasicCompatibilityTest extends
IgnitePersistenceCompatib
Assume.assumeTrue("Skipped on jdk " + U.jdkVersion(),
VER_2_12_0.compareTo(IgniteReleasedVersion.fromString(version)) < 0);
}
- else if (majorJavaVer > 8) {
+ else if (majorJavaVer == 11) {
Assume.assumeTrue("Skipped on jdk " + U.jdkVersion(),
VER_2_3_0.compareTo(IgniteReleasedVersion.fromString(version))
< 0);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/plugin/IgniteLogInfoProviderImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/plugin/IgniteLogInfoProviderImpl.java
index fa840717ad7..c394b9af100 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/plugin/IgniteLogInfoProviderImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/plugin/IgniteLogInfoProviderImpl.java
@@ -275,7 +275,7 @@ public class IgniteLogInfoProviderImpl implements
IgniteLogInfoProvider {
sb.a("auth:
").a(onOff(Boolean.getBoolean("com.sun.management.jmxremote.authenticate"))).a(",
");
// By default, SSL is enabled, that's why additional check for
null is needed.
- // See
http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html
+ // See
https://docs.oracle.com/en/java/javase/11/management/monitoring-and-management-using-jmx-technology.html
sb.a("ssl:
").a(onOff(Boolean.getBoolean("com.sun.management.jmxremote.ssl") ||
System.getProperty("com.sun.management.jmxremote.ssl") ==
null));
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/memory/PlatformMemoryPool.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/memory/PlatformMemoryPool.java
index 5ba1a9811c2..51b5b578be4 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/memory/PlatformMemoryPool.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/platform/memory/PlatformMemoryPool.java
@@ -17,7 +17,7 @@
package org.apache.ignite.internal.processors.platform.memory;
-import org.apache.ignite.internal.util.GridCleaner;
+import java.lang.ref.Cleaner;
import static
org.apache.ignite.internal.processors.platform.memory.PlatformMemoryUtils.POOL_HDR_OFF_MEM_1;
import static
org.apache.ignite.internal.processors.platform.memory.PlatformMemoryUtils.POOL_HDR_OFF_MEM_2;
@@ -35,6 +35,9 @@ public class PlatformMemoryPool {
/** base pointer. */
private final long poolPtr;
+ /** Cleaner instance. */
+ private static final Cleaner cleaner = Cleaner.create();
+
/** First pooled memory chunk. */
private PlatformPooledMemory mem1;
@@ -50,7 +53,7 @@ public class PlatformMemoryPool {
public PlatformMemoryPool() {
poolPtr = allocatePool();
- GridCleaner.create(this, new CleanerRunnable(poolPtr));
+ cleaner.register(this, new CleanerRunnable(poolPtr));
}
/**
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestions.java
b/modules/core/src/main/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestions.java
index fdbe35875fa..6776ba83d90 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestions.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestions.java
@@ -42,9 +42,6 @@ public class JvmConfigurationSuggestions {
/** */
private static final String SERVER = "-server";
- /** */
- private static final String USE_G1_GC = "-XX:+UseG1GC";
-
/**
* Checks JVM configurations and produces tuning suggestions.
*
@@ -58,12 +55,6 @@ public class JvmConfigurationSuggestions {
if (!U.jvmName().toLowerCase().contains("server"))
suggestions.add("Enable server mode for JVM (add '" + SERVER + "'
to JVM options)");
- if (!"11".equals(U.jdkVersion()))
- suggestions.add("Switch to the most recent 11 JVM version");
-
- if (U.jdkVersion().equals("1.8") && !args.contains(USE_G1_GC))
- suggestions.add("Enable G1 Garbage Collector (add '" + USE_G1_GC +
"' to JVM options)");
-
if (!anyStartWith(args, XMX) && !anyStartWith(args, MX))
suggestions.add("Specify JVM heap max size (add '" + XMX +
"<size>[g|G|m|M|k|K]' to JVM options)");
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/FeatureChecker.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/FeatureChecker.java
index 5922f1de997..a5ec0a85d1b 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/FeatureChecker.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/FeatureChecker.java
@@ -21,8 +21,8 @@ package org.apache.ignite.internal.util;
* initialization effects.
*/
public class FeatureChecker {
- /** Required Options to Run on Java 9, 10, 11. */
- public static final String JAVA_9_10_11_OPTIONS =
"--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED\n" +
+ /** Required Options to Run on Java 11. */
+ public static final String JAVA_11_OPTIONS =
"--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED\n" +
"--add-exports=java.base/sun.nio.ch=ALL-UNNAMED\n" +
"--add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED\n" +
"--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED\n"
+
@@ -57,7 +57,7 @@ public class FeatureChecker {
/** Java version specific warning to be added in case access failed */
public static final String JAVA_VER_SPECIFIC_WARN =
"\nPlease add the following parameters to JVM startup settings and
restart the application: {parameters: " +
- JAVA_9_10_11_OPTIONS +
+ JAVA_11_OPTIONS +
"\n}" +
- "\nSee
https://apacheignite.readme.io/docs/getting-started#section-running-ignite-with-java-9-10-11
for more information.";
+ "\nSee
https://ignite.apache.org/docs/latest/quick-start/java#running-ignite-with-java-11-or-later
for more information.";
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/GridCleaner.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/GridCleaner.java
deleted file mode 100644
index 785cc55b954..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/GridCleaner.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util;
-
-import java.lang.reflect.Method;
-import java.util.Arrays;
-import org.apache.ignite.IgniteException;
-
-/**
- * The facade for Cleaner classes for compatibility between java 8 and 9.
- */
-public class GridCleaner {
- /** Pre-java9 cleaner class name. */
- private static final String PRE_JAVA9_CLEANER_CLASS_NAME =
"sun.misc.Cleaner";
-
- /** Java9 cleaner class name. */
- private static final String JAVA9_CLEANER_CLASS_NAME =
"java.lang.ref.Cleaner";
-
- /** Cleaner class. */
- private static final Class<?> cls;
-
- /** Cleaner object. */
- private static final Object instance;
-
- /** Cleaner register method. */
- private static final Method initMtd;
-
- static {
- cls = findCleanerClass();
-
- try {
- String mtdName;
-
- if (JAVA9_CLEANER_CLASS_NAME.equals(cls.getName())) {
- instance = cls.getMethod("create").invoke(null);
-
- mtdName = "register";
- }
- else {
- instance = null;
-
- mtdName = "create";
- }
-
- initMtd = cls.getMethod(mtdName, Object.class, Runnable.class);
- }
- catch (ReflectiveOperationException e) {
- throw new ExceptionInInitializerError(e);
- }
- }
-
- /**
- *
- */
- private static Class<?> findCleanerClass() {
- String[] clsNames = {PRE_JAVA9_CLEANER_CLASS_NAME,
JAVA9_CLEANER_CLASS_NAME};
-
- ClassLoader clsLdr = ClassLoader.getSystemClassLoader();
-
- for (String clsName : clsNames) {
- try {
- return Class.forName(clsName, true, clsLdr);
- }
- catch (ClassNotFoundException ignore) {
- // ignored;
- }
- }
-
- throw new IllegalStateException("None of cleaner classes found: " +
Arrays.toString(clsNames));
- }
-
- /**
- * @param obj Object.
- * @param act Action.
- */
- public static Object create(Object obj, Runnable act) {
- try {
- return initMtd.invoke(instance, obj, act);
- }
- catch (ReflectiveOperationException e) {
- throw new IgniteException(e);
- }
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/GridUnsafe.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/GridUnsafe.java
index ce9476f4916..6d45be20303 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/GridUnsafe.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/GridUnsafe.java
@@ -124,10 +124,7 @@ public abstract class GridUnsafe {
private static final boolean HAS_JAVA_NIO_ACCESS_MEMORY_SEGMENT_PARAM =
majorJavaVersion(jdkVersion()) >= 19;
/** Cleaner code for direct {@code java.nio.ByteBuffer}. */
- private static final DirectBufferCleaner DIRECT_BUF_CLEANER =
- majorJavaVersion(jdkVersion()) < 9
- ? new ReflectiveDirectBufferCleaner()
- : new UnsafeDirectBufferCleaner();
+ private static final DirectBufferCleaner DIRECT_BUF_CLEANER = new
UnsafeDirectBufferCleaner();
/** JavaNioAccess object. If {@code null} then {@link
#NEW_DIRECT_BUF_CONSTRUCTOR} should be available. */
@Nullable private static final Object JAVA_NIO_ACCESS_OBJ;
@@ -1684,9 +1681,6 @@ public abstract class GridUnsafe {
@NotNull private static String getSharedSecretsPackage() {
int javaVer = majorJavaVersion(jdkVersion());
- if (javaVer < 9)
- return "sun.misc";
-
if (javaVer < 12)
return "jdk.internal.misc";
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestionsTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestionsTest.java
deleted file mode 100644
index 34971e61f53..00000000000
---
a/modules/core/src/test/java/org/apache/ignite/internal/suggestions/JvmConfigurationSuggestionsTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.suggestions;
-
-import java.util.List;
-
-import org.apache.ignite.internal.util.IgniteUtils;
-import org.apache.ignite.testframework.GridTestUtils;
-import org.jetbrains.annotations.NotNull;
-import org.junit.Test;
-
-import static org.hamcrest.Matchers.hasItem;
-import static org.hamcrest.Matchers.matchesPattern;
-import static org.hamcrest.Matchers.not;
-import static org.junit.Assert.assertThat;
-
-/**
- * Tests for {@link JvmConfigurationSuggestions}.
- */
-public class JvmConfigurationSuggestionsTest {
- /***/
- @Test
- public void shouldSuggestJava11WhenNotRunOnJava11() {
- try (JdkVersionForger ignored = withJdkVersion("1.8")) {
- List<String> suggestions =
JvmConfigurationSuggestions.getSuggestions();
-
- assertThat(suggestions, hasItem("Switch to the most recent 11 JVM
version"));
- }
- }
-
- /***/
- @Test
- public void shouldNotSuggestJava11WhenRunOnJava11() {
- try (JdkVersionForger ignored = withJdkVersion("11")) {
- List<String> suggestions =
JvmConfigurationSuggestions.getSuggestions();
-
- assertThat(suggestions, not(hasItem(matchesPattern("Switch to the
most recent .+"))));
- }
- }
-
- /***/
- @NotNull
- private JdkVersionForger withJdkVersion(String jdkVersion) {
- return new JdkVersionForger(jdkVersion);
- }
-
- /**
- * Forges JDK version stored as {@code IgniteUtils#jdkVer}. Normally, we
would just use
- * {@code @WithSystemProperty} and be happy, but {@link IgniteUtils}
caches values read from system properties
- * on startup, so we have to resort to this dirty trick.
- */
- private static class JdkVersionForger implements AutoCloseable {
- /** The JDK version we saw in the field when constructing, used to
restore the original value. */
- private final String oldVersion = IgniteUtils.jdkVersion();
-
- /***/
- private JdkVersionForger(String newVersion) {
- setJdkVersion(newVersion);
- }
-
- /***/
- private void setJdkVersion(String newVersion) {
- GridTestUtils.setFieldValue(null, IgniteUtils.class, "jdkVer",
newVersion);
- }
-
- /** {@inheritDoc} */
- @Override public void close() {
- setJdkVersion(oldVersion);
- }
- }
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/GridCleanerTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/GridCleanerTest.java
deleted file mode 100644
index e024c7c88c8..00000000000
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/GridCleanerTest.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util;
-
-import org.junit.Test;
-
-/**
- * Grid cleaner tests.
- */
-public class GridCleanerTest {
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testCreate() throws Exception {
- Object cleaner = GridCleaner.create(this, new Runnable() {
- @Override public void run() {
- // no-op
- }
- });
-
- assert cleaner != null;
-
- String clsName = cleaner.getClass().getName();
-
- assert clsName.equals("sun.misc.Cleaner")
- ||
clsName.equals("jdk.internal.ref.CleanerImpl$PhantomCleanableRef");
- }
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite2.java
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite2.java
index f4fd9a08a55..a55c9198872 100644
---
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite2.java
+++
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBasicTestSuite2.java
@@ -80,8 +80,6 @@ import
org.apache.ignite.internal.processors.metastorage.DistributedMetaStorageT
import
org.apache.ignite.internal.processors.metastorage.persistence.DistributedMetaStorageHistoryCacheTest;
import
org.apache.ignite.internal.processors.metastorage.persistence.DmsDataWriterWorkerTest;
import
org.apache.ignite.internal.processors.metastorage.persistence.InMemoryCachedDistributedMetaStorageBridgeTest;
-import org.apache.ignite.internal.suggestions.JvmConfigurationSuggestionsTest;
-import org.apache.ignite.internal.util.GridCleanerTest;
import org.apache.ignite.internal.util.collection.BitSetIntSetTest;
import org.apache.ignite.internal.util.collection.ImmutableIntSetTest;
import org.apache.ignite.internal.util.collection.IntHashMapTest;
@@ -155,8 +153,6 @@ import org.junit.runners.Suite;
IgniteRejectConnectOnNodeStopTest.class,
- GridCleanerTest.class,
-
ClassSetTest.class,
// Basic failure handlers.
@@ -225,7 +221,6 @@ import org.junit.runners.Suite;
RemoveAllDeadlockTest.class,
NoopCheckpointSpiLoggingTest.class,
- JvmConfigurationSuggestionsTest.class,
ExponentialBackoffTest.class,
ProgressSpeedCalculationTest.class,
diff --git
a/modules/ducktests/src/main/java/org/apache/ignite/internal/ducktest/tests/dns_failure_test/BlockingNameService.java
b/modules/ducktests/src/main/java/org/apache/ignite/internal/ducktest/tests/dns_failure_test/BlockingNameService.java
index 8fd16a2297e..1b5d7a4d942 100644
---
a/modules/ducktests/src/main/java/org/apache/ignite/internal/ducktest/tests/dns_failure_test/BlockingNameService.java
+++
b/modules/ducktests/src/main/java/org/apache/ignite/internal/ducktest/tests/dns_failure_test/BlockingNameService.java
@@ -26,10 +26,8 @@ import java.net.UnknownHostException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
-import java.util.List;
import java.util.Scanner;
-import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.startup.cmdline.CommandLineStartup;
@@ -71,27 +69,11 @@ public class BlockingNameService implements
NameServiceHandler {
System.out.println("Installed DnsBlocker as main NameService to JVM");
}
- /** Installs {@code BlockingNameService} as main {@code NameService} to
JVM8. */
- private static void installJdk8() throws Exception {
- Field nameSrvcFld = InetAddress.class.getDeclaredField("nameServices");
- nameSrvcFld.setAccessible(true);
-
- nameSrvcCls = Class.forName("sun.net.spi.nameservice.NameService");
-
- BlockingNameService blkNameSrvc = new
BlockingNameService(((List)nameSrvcFld.get(InetAddress.class)).get(0));
-
- nameSrvcFld.set(InetAddress.class, F.asList(
- Proxy.newProxyInstance(InetAddress.class.getClassLoader(), new
Class<?>[] { nameSrvcCls }, blkNameSrvc)
- ));
- }
-
/** */
public static void main(String[] args) throws Exception {
String jdkVer = U.jdkVersion();
- if ("1.8".equals(jdkVer))
- installJdk8();
- else if ("11".equals(jdkVer) || "17".equals(jdkVer))
+ if ("11".equals(jdkVer) || "17".equals(jdkVer))
installJdk11();
else
throw new IllegalArgumentException("Unsupported JDK version: " +
jdkVer);
diff --git a/modules/ducktests/tests/docker/Dockerfile
b/modules/ducktests/tests/docker/Dockerfile
index 0b5ae552b4b..fb0aea03f1f 100644
--- a/modules/ducktests/tests/docker/Dockerfile
+++ b/modules/ducktests/tests/docker/Dockerfile
@@ -13,7 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-ARG jdk_version=openjdk:8
+ARG jdk_version=openjdk:11
FROM $jdk_version
MAINTAINER Apache Ignite [email protected]
diff --git a/modules/ducktests/tests/docker/ducker-ignite
b/modules/ducktests/tests/docker/ducker-ignite
index 4b8b589c6f6..8872f61dd19 100755
--- a/modules/ducktests/tests/docker/ducker-ignite
+++ b/modules/ducktests/tests/docker/ducker-ignite
@@ -42,7 +42,7 @@ docker_run_memory_limit="8000m"
default_num_nodes=4
# The default OpenJDK base image.
-default_jdk="openjdk:8"
+default_jdk="openjdk:11"
# The default ducker-ignite image name.
default_image_name="ducker-ignite"
diff --git a/modules/ducktests/tests/docker/run_tests.sh
b/modules/ducktests/tests/docker/run_tests.sh
index fb8d3b92f59..d06215bdaad 100755
--- a/modules/ducktests/tests/docker/run_tests.sh
+++ b/modules/ducktests/tests/docker/run_tests.sh
@@ -24,7 +24,7 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
IGNITE_NUM_CONTAINERS=${IGNITE_NUM_CONTAINERS:-13}
# Image name to run nodes
-JDK_VERSION="${JDK_VERSION:-8}"
+JDK_VERSION="${JDK_VERSION:-11}"
IMAGE_PREFIX="ducker-ignite-openjdk"
###
@@ -79,7 +79,7 @@ The options are as follows:
Subnet to assign nodes IP addresses, like --subnet 172.20.0.0/16
--jdk
- Set jdk version to build, default is 8
+ Set jdk version to build, default is 11
--image
Set custom docker image to run tests on.
diff --git a/modules/kubernetes/config/Dockerfile
b/modules/kubernetes/config/Dockerfile
index f9202513791..c8ff40b04ba 100644
--- a/modules/kubernetes/config/Dockerfile
+++ b/modules/kubernetes/config/Dockerfile
@@ -16,7 +16,7 @@
#
# Use Java 8 image as default one.
-FROM openjdk:8
+FROM openjdk:11
# Set Apache Ignite configuration file name.
ARG IGNITE_CFG_XML="example-kube.xml"
diff --git a/modules/numa-allocator/README.md b/modules/numa-allocator/README.md
index 89abbc4e13f..5d5937a2508 100644
--- a/modules/numa-allocator/README.md
+++ b/modules/numa-allocator/README.md
@@ -17,11 +17,11 @@ $ sudo apt install numactl
1. `RHEL` or `Cent OS`
```bash
$ sudo yum groupinstall 'Development Tools'
-$ sudo yum install java-1.8.0-openjdk numactl-devel libstdc++-static
+$ sudo yum install java-11-openjdk numactl-devel libstdc++-static
```
2. `Ubuntu` or `Debian`
```bash
-$ sudo apt install build-essential libnuma-dev openjdk-8-jdk
+$ sudo apt install build-essential libnuma-dev openjdk-11-jdk
```
## Usage
### Simple allocation strategy
diff --git
a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/Jni/JvmDll.cs
b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/Jni/JvmDll.cs
index e30b0ab5dd5..1ea18c9cb80 100644
--- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/Jni/JvmDll.cs
+++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Unmanaged/Jni/JvmDll.cs
@@ -368,7 +368,7 @@ namespace Apache.Ignite.Core.Impl.Unmanaged.Jni
}
var file = Shell.ExecuteSafe("/usr/bin/readlink", "-f
/usr/bin/java", log: log);
- // /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
+ // /usr/lib/jvm/java-11-openjdk-amd64/jre/bin/java
if (string.IsNullOrWhiteSpace(file))
{
@@ -384,7 +384,7 @@ namespace Apache.Ignite.Core.Impl.Unmanaged.Jni
log.Debug("/usr/bin/java resolved to '{0}'", file);
var dir = Path.GetDirectoryName(file);
- // /usr/lib/jvm/java-8-openjdk-amd64/jre/bin
+ // /usr/lib/jvm/java-11-openjdk-amd64/jre/bin
if (dir == null)
{
@@ -398,7 +398,7 @@ namespace Apache.Ignite.Core.Impl.Unmanaged.Jni
yield break;
}
- // Predefined path:
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so
+ // Predefined path:
/usr/lib/jvm/java-11-openjdk-amd64/jre/lib/amd64/server/libjvm.so
yield return new KeyValuePair<string, string>(javaExec,
Path.Combine(libFolder, "amd64", "server", FileJvmDll));
diff --git a/modules/platforms/dotnet/examples/README.md
b/modules/platforms/dotnet/examples/README.md
index 394cb10275f..3d25a6335c7 100644
--- a/modules/platforms/dotnet/examples/README.md
+++ b/modules/platforms/dotnet/examples/README.md
@@ -7,7 +7,7 @@
# Requirements
* [.NET 6 SDK](https://dotnet.microsoft.com/download/dotnet-core)
-* [JDK
8](https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html)
or [JDK
11](https://www.oracle.com/java/technologies/javase-jdk11-downloads.html)
+* [JDK
11](https://www.oracle.com/java/technologies/javase-jdk11-downloads.html)
Windows, Linux, and macOS are supported.
diff --git a/modules/tools/pom.xml b/modules/tools/pom.xml
index c0db282de0a..d0060dd01ec 100644
--- a/modules/tools/pom.xml
+++ b/modules/tools/pom.xml
@@ -36,9 +36,9 @@
<profiles>
<profile>
- <id>java-9+</id>
+ <id>java-11+</id>
<activation>
- <jdk>[1.9,15)</jdk>
+ <jdk>[11,15)</jdk>
</activation>
<properties>
<src.javaspecific.dir>src/main/java11</src.javaspecific.dir>
@@ -55,16 +55,6 @@
</properties>
</profile>
- <profile>
- <id>java-8</id>
- <activation>
- <jdk>1.8</jdk>
- </activation>
- <properties>
- <src.javaspecific.dir>src/main/java8</src.javaspecific.dir>
- </properties>
- </profile>
-
<profile>
<!--
This profile is used to provide a check that all tests are defined
in at least one suite.
@@ -146,7 +136,6 @@
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<sourceDirectories combine.children="append">
- <sourceDirectory>src/main/java8</sourceDirectory>
<sourceDirectory>src/main/java11</sourceDirectory>
<sourceDirectory>src/main/java15</sourceDirectory>
</sourceDirectories>
diff --git
a/modules/tools/src/main/java/org/apache/ignite/tools/ant/beautifier/GridJavadocAntTask.java
b/modules/tools/src/main/java/org/apache/ignite/tools/ant/beautifier/GridJavadocAntTask.java
index df4b0ad9d44..dfd5861802b 100644
---
a/modules/tools/src/main/java/org/apache/ignite/tools/ant/beautifier/GridJavadocAntTask.java
+++
b/modules/tools/src/main/java/org/apache/ignite/tools/ant/beautifier/GridJavadocAntTask.java
@@ -154,16 +154,12 @@ public class GridJavadocAntTask extends MatchingTask {
.configure(cfg -> cfg.setErrorLogEnabled(false))
).parse(fileContent);
- String jdkVer = System.getProperty("java.specification.version");
-
- boolean jdk11 = "11".equals(jdkVer);
-
- if (!jdk11 && !"1.8".equals(jdkVer)) {
+ if
(!"11".equals(System.getProperty("java.specification.version"))) {
throw new IllegalArgumentException("GridJavadocAntTask isn't
tested for java versions after 11. " +
"Please check html rendering of documentation package
groups works correctly and remove this exception then.");
}
- if (file.getName().equals(jdk11 ? "index.html" :
"overview-summary.html")) {
+ if ("index.html".equals(file.getName())) {
// Try to find Other Packages section.
Jerry otherPackages =
doc.find("div.contentContainer table.overviewSummary
caption span:contains('Other Packages')");
@@ -177,23 +173,21 @@ public class GridJavadocAntTask extends MatchingTask {
"<configuration> / <groups>");
}
- if (jdk11) {
- int pkgGrps = doc.find("div.contentContainer
table.overviewSummary caption span.tableTab").size();
-
- if (pkgGrps == 0) {
- throw new IllegalArgumentException("Documentation
package groups missed. Please add packages " +
- "description to parent/pom.xml into
<plugin>(maven-javadoc-plugin) / " +
- "<configuration> / <groups>");
- }
-
- // This limit is set for JDK11. Each group is represented
as a tab. Tabs are enumerated with a number 2^N
- // where N is a sequential number for a tab. For 32 tabs
(+ the "All Packages" tab) the number is overflowed
- // and the tabulation becomes broken. See var data in
"index.html".
- if (pkgGrps > 30) {
- throw new IllegalArgumentException("Too many package
groups: " + pkgGrps + ". The limit"
- + " is 30 due to the javadoc limitations. Please
reduce groups in parent/pom.xml"
- + " inside <plugin>(maven-javadoc-plugin) /
<configuration> / <groups>");
- }
+ int pkgGrps = doc.find("div.contentContainer
table.overviewSummary caption span.tableTab").size();
+
+ if (pkgGrps == 0) {
+ throw new IllegalArgumentException("Documentation package
groups missed. Please add packages " +
+ "description to parent/pom.xml into
<plugin>(maven-javadoc-plugin) / " +
+ "<configuration> / <groups>");
+ }
+
+ // This limit is set for JDK11. Each group is represented as a
tab. Tabs are enumerated with a number 2^N
+ // where N is a sequential number for a tab. For 32 tabs (+
the "All Packages" tab) the number is overflowed
+ // and the tabulation becomes broken. See var data in
"index.html".
+ if (pkgGrps > 30) {
+ throw new IllegalArgumentException("Too many package
groups: " + pkgGrps + ". The limit"
+ + " is 30 due to the javadoc limitations. Please
reduce groups in parent/pom.xml"
+ + " inside <plugin>(maven-javadoc-plugin) /
<configuration> / <groups>");
}
}
else if (!isViewHtml(file)) {
diff --git
a/modules/tools/src/main/java8/org/apache/ignite/tools/javadoc/IgniteLinkTaglet.java
b/modules/tools/src/main/java8/org/apache/ignite/tools/javadoc/IgniteLinkTaglet.java
deleted file mode 100644
index 805f2614eae..00000000000
---
a/modules/tools/src/main/java8/org/apache/ignite/tools/javadoc/IgniteLinkTaglet.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.tools.javadoc;
-
-import java.io.File;
-import java.util.Map;
-import com.sun.javadoc.Tag;
-import com.sun.tools.doclets.Taglet;
-
-/**
- * Represents {@ignitelink Class} tag. This tag can
- * be used as replacement of {@link Class} tag that references to the Ignite
class that is not in classpath.
- * Class and its arguments should have fully qualified names.
- */
-public class IgniteLinkTaglet implements Taglet {
- /** */
- private static final String NAME = "ignitelink";
-
- /**
- * Return the name of this custom tag.
- */
- @Override public String getName() {
- return NAME;
- }
-
- /**
- * @return true since this tag can be used in a field doc comment.
- */
- @Override public boolean inField() {
- return true;
- }
-
- /**
- * @return true since this tag can be used in a constructor doc comment.
- */
- @Override public boolean inConstructor() {
- return true;
- }
-
- /**
- * @return true since this tag can be used in a method doc comment.
- */
- @Override public boolean inMethod() {
- return true;
- }
-
- /**
- * @return true since this tag can be used in an overview doc comment.
- */
- @Override public boolean inOverview() {
- return true;
- }
-
- /**
- * @return true since this tag can be used in a package doc comment.
- */
- @Override public boolean inPackage() {
- return true;
- }
-
- /**
- * @return true since this.
- */
- @Override public boolean inType() {
- return true;
- }
-
- /**
- * Will return true since this is an inline tag.
- *
- * @return true since this is an inline tag.
- */
- @Override public boolean isInlineTag() {
- return true;
- }
-
- /**
- * Register this Taglet.
- *
- * @param tagletMap the map to register this tag to.
- */
- public static void register(Map<String, IgniteLinkTaglet> tagletMap) {
- IgniteLinkTaglet tag = new IgniteLinkTaglet();
-
- Taglet t = tagletMap.get(tag.getName());
-
- if (t != null)
- tagletMap.remove(tag.getName());
-
- tagletMap.put(tag.getName(), tag);
- }
-
- /**
- * Given the <code>Tag</code> representation of this custom tag, return
its string representation.
- * <p>
- * Input:
org.apache.ignite.grid.spi.indexing.h2.GridH2IndexingSpi#setIndexCustomFunctionClasses(Class[])
- * <p>
- * Output: <a
href="../../../../../org/apache/ignite/grid/spi/indexing/h2/GridH2IndexingSpi.html#
- * setIndexCustomFunctionClasses(java.lang.Class...)">
- *
<code>GridH2IndexingSpi.setIndexCustomFunctionClasses(java.lang.Class[])</code></a>
- *
- * @param tag <code>Tag</code> representation of this custom tag.
- */
- @Override public String toString(Tag tag) {
- if (tag.text() == null || tag.text().isEmpty())
- return "";
-
- File f = tag.position().file();
-
- String curCls = f == null ? "" :
f.getAbsolutePath().replace(File.separator, ".");
-
- String packPref = "src.main.java.";
-
- int idx = curCls.indexOf(packPref);
-
- StringBuilder path = new StringBuilder();
-
- if (idx != -1) {
- curCls = curCls.substring(idx + packPref.length());
-
- for (int i = 0, n = curCls.split("\\.").length - 2; i < n; i++)
- path.append("../");
- }
-
- String[] tokens = tag.text().split("#");
-
- int lastIdx = tokens[0].lastIndexOf('.');
-
- String simpleClsName = lastIdx != -1 && lastIdx + 1 <
tokens[0].length() ?
- tokens[0].substring(lastIdx + 1) : tokens[0];
-
- String fullyQClsName = tokens[0].replace(".", "/");
-
- return "<a href=\"" + path.toString() + fullyQClsName + ".html" +
- (tokens.length > 1 ? ("#" + tokens[1].replace("[]", "...")) : "") +
- "\"><code>" + simpleClsName + (tokens.length > 1 ? ("." +
tokens[1]) : "") + "</code></a>";
- }
-
- /**
- * This method should not be called since arrays of inline tags do not
- * exist. Method {@link #toString(Tag)} should be used to convert this
- * inline tag to a string.
- *
- * @param tags the array of <code>Tag</code>s representing of this custom
tag.
- */
- @Override public String toString(Tag[] tags) {
- return null;
- }
-}
diff --git a/packaging/deb/control b/packaging/deb/control
index 0c258f8ab9f..0201cd36358 100644
--- a/packaging/deb/control
+++ b/packaging/deb/control
@@ -8,7 +8,7 @@ Package: apache-ignite
Architecture: all
Section: misc
Priority: optional
-Depends: openjdk-8-jdk | openjdk-11-jdk | default-jdk | java-sdk, systemd,
passwd
+Depends: openjdk-11-jdk | default-jdk | java-sdk, systemd, passwd
Description: Apache Ignite In-Memory Computing, Database and Caching Platform
Ignite™ is a memory-centric distributed database, caching, and processing
platform for transactional, analytical, and streaming workloads, delivering
diff --git a/packaging/rpm/apache-ignite.spec b/packaging/rpm/apache-ignite.spec
index 4d854aa21a5..98fc8de2122 100644
--- a/packaging/rpm/apache-ignite.spec
+++ b/packaging/rpm/apache-ignite.spec
@@ -19,7 +19,7 @@ Group: Development/System
License: ASL 2.0
URL: https://ignite.apache.org/
Source: %{name}-%{version}-bin.zip
-Requires: java-1.8.0, chkconfig
+Requires: java-11, chkconfig
Requires(pre): shadow-utils
Provides: %{name}
AutoReq: no
@@ -45,7 +45,7 @@ in-memory speeds at petabyte scale
#
# Preinstall scripts
# $1 can be:
-# 1 - Initial install
+# 1 - Initial install
# 2 - Upgrade
#
diff --git a/parent/pom.xml b/parent/pom.xml
index 3a6b8ad7b3e..ae30cf139a7 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -46,8 +46,8 @@
<packaging>pom</packaging>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
+ <maven.compiler.source>11</maven.compiler.source>
+ <maven.compiler.target>11</maven.compiler.target>
<revision>2.17.0-SNAPSHOT</revision>
<!-- Ignite version will be substituted with the flatten-maven-plugin
and used as
@@ -671,7 +671,7 @@
<phase>validate</phase>
<configuration>
<name>ignite.buildNumber</name>
- <!-- See:
https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html -->
+ <!-- See:
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/text/SimpleDateFormat.html
-->
<pattern>yywwu</pattern>
</configuration>
</execution>
@@ -908,12 +908,12 @@
</profile>
<profile>
- <id>java-9+</id>
+ <id>java-11+</id>
<activation>
- <jdk>[1.9,15)</jdk>
+ <jdk>[11,15)</jdk>
</activation>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies/>
@@ -1004,7 +1004,7 @@
<jdk>[15,)</jdk>
</activation>
<properties>
- <maven.compiler.source>1.8</maven.compiler.source>
+ <maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>15</maven.compiler.target>
<scala.library.version>2.12.15</scala.library.version>
</properties>