Skip to content

Commit 7605b22

Browse files
committed
Merge branch 'main' into IGNITE-27200
2 parents 8c3f4da + 18255ad commit 7605b22

File tree

285 files changed

+6079
-2123
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

285 files changed

+6079
-2123
lines changed

.github/workflows/python_dbapi_wheels.yml

Lines changed: 30 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,17 @@ jobs:
1313
runs-on: ubuntu-latest
1414

1515
steps:
16-
- uses: actions/checkout@v4
16+
- uses: actions/checkout@v6
1717
with:
1818
sparse-checkout: |
1919
modules/platforms/
2020
21-
- uses: actions/setup-python@v5
21+
- uses: actions/setup-python@v6
22+
with:
23+
python-version: 3.11
2224

2325
- name: Install setuptools
24-
run: python -m pip install setuptools
26+
run: python -m pip install --upgrade setuptools packaging>=24.2
2527

2628
- name: Copy C++ sources
2729
run: cp -r modules/platforms/cpp modules/platforms/python/
@@ -40,46 +42,34 @@ jobs:
4042
runs-on: ${{ matrix.os }}
4143
strategy:
4244
matrix:
43-
# macos-13 is an intel runner, macos-14 is apple silicon
44-
os: [ubuntu-22.04, ubuntu-24.04-arm, windows-2022, macos-13, macos-14]
45+
include:
46+
- os: macos-latest
47+
arch: arm64
48+
macos_deployment_target: "14.0"
49+
50+
- os: macos-15-intel
51+
arch: x86_64
52+
macos_deployment_target: "15.0"
53+
54+
- os: ubuntu-latest
55+
arch: auto64
56+
cibw_build: "cp31{0,1,2,3,4}-manylinux*"
57+
58+
- os: windows-latest
59+
arch: AMD64
4560

4661
steps:
47-
- uses: actions/checkout@v4
62+
- uses: actions/checkout@v6
4863
with:
4964
sparse-checkout: |
5065
modules/platforms/
5166
52-
- uses: actions/setup-python@v5
67+
- uses: actions/setup-python@v6
68+
with:
69+
python-version: 3.11
5370

5471
- name: Install cibuildwheel
55-
run: python -m pip install cibuildwheel==2.23.1
56-
57-
- name: Build wheels macOS 14
58-
if: matrix.os == 'macos-14'
59-
run: python -m cibuildwheel --output-dir modules/platforms/python/wheels modules/platforms/python
60-
env:
61-
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-* cp313-*
62-
CIBW_ARCHS: arm64
63-
MACOSX_DEPLOYMENT_TARGET: 14.0
64-
CIBW_BUILD_VERBOSITY: 1
65-
66-
- name: Build wheels macOS 13
67-
if: matrix.os == 'macos-13'
68-
run: python -m cibuildwheel --output-dir modules/platforms/python/wheels modules/platforms/python
69-
env:
70-
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-* cp313-*
71-
CIBW_ARCHS: x86_64
72-
MACOSX_DEPLOYMENT_TARGET: 13.0
73-
CIBW_BUILD_VERBOSITY: 1
74-
75-
- name: Build wheels Linux
76-
if: runner.os == 'Linux'
77-
run: python -m cibuildwheel --output-dir modules/platforms/python/wheels modules/platforms/python
78-
env:
79-
CIBW_BUILD: cp39-manylinux* cp31{0,1,2,3}-manylinux*
80-
CIBW_ARCHS: auto64
81-
CIBW_BEFORE_ALL: yum -y install openssl-devel
82-
CIBW_BUILD_VERBOSITY: 1
72+
run: python -m pip install cibuildwheel==3.3.0
8373

8474
- name: Install OpenSSL (Windows)
8575
if: runner.os == 'Windows'
@@ -88,13 +78,14 @@ jobs:
8878
echo "VCPKG_ROOT=$env:VCPKG_INSTALLATION_ROOT" | Out-File -FilePath $env:GITHUB_ENV -Append
8979
vcpkg install openssl:x64-windows-static-md
9080
91-
- name: Build wheels Windows
92-
if: runner.os == 'Windows'
81+
- name: Build wheels ${{ matrix.os }}
9382
run: python -m cibuildwheel --output-dir modules/platforms/python/wheels modules/platforms/python
9483
env:
95-
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-* cp313-*
96-
CIBW_ARCHS: AMD64
84+
CIBW_BUILD: ${{ matrix.cibw_build || 'cp31{0,1,2,3,4}-*' }}
85+
CIBW_ARCHS: ${{ matrix.arch }}
86+
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macos_deployment_target || '' }}
9787
CIBW_BUILD_VERBOSITY: 1
88+
CIBW_BEFORE_ALL_LINUX: "yum install -y openssl-devel"
9889

9990
- uses: actions/upload-artifact@v4
10091
with:

.teamcity/org/apache/ignite/teamcity/ApacheIgnite3CustomBuildType.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,15 @@ class ApacheIgnite3CustomBuildType(override val buildType: BuildType) : CustomBu
2222
root(AbsoluteId("GitHubApacheIgnite3"), "+:. => %VCSROOT__IGNITE3%")
2323
}
2424
}
25+
26+
/**
27+
* Set JAVA_HOME to JDK 17
28+
*/
29+
fun ignite3Java17() = apply {
30+
buildType.params {
31+
hiddenText("env.JAVA_HOME", "%env.JDK_ORA_17%")
32+
}
33+
}
2534

2635
/**
2736
* Send build status to Apache Ignite 3 GitHub repository

.teamcity/test/build_types/RunSanityCheck.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ object RunSanityCheck : BuildType({
1414
dependencies {
1515
snapshot(AssembleTestClasses) {}
1616
snapshot(CodeStyle) {}
17+
snapshot(CodeStyleJava17) {}
1718
snapshot(Javadoc) {}
1819
snapshot(MentionTicket) {}
1920
snapshot(PMD) {}

.teamcity/test/platform_tests/PlatformPythonTestsLinux.kt

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ object PlatformPythonTestsLinux : BuildType({
1919
text("PATH__WORKING_DIR", """%VCSROOT__IGNITE3%\modules\platforms\python""", display = ParameterDisplay.HIDDEN, allowEmpty = true)
2020
param("env.IGNITE_CPP_TESTS_USE_SINGLE_NODE", "")
2121
param("env.CPP_STAGING", """%PATH__WORKING_DIR%\cpp_staging""")
22+
param("TOX_ENV", "py310")
23+
param("PYTHON_VERSION", "3.10")
2224
}
2325

2426
steps {
@@ -34,11 +36,20 @@ object PlatformPythonTestsLinux : BuildType({
3436
set -o errexit; set -o pipefail; set -o errtrace; set -o functrace
3537
set -x
3638
37-
3839
eval "${'$'}(pyenv init --path)" || echo 'first'
3940
eval "${'$'}(pyenv init --no-rehash -)" || echo 'second'
4041
41-
tox -e py39 || exit 0
42+
pyenv install %PYTHON_VERSION% || echo 'third'
43+
pyenv shell %PYTHON_VERSION% || exit 1
44+
45+
pyenv exec python -m venv .venv_tox || exit 2
46+
. .venv_tox/bin/activate || exit 3
47+
48+
pyenv exec python -m pip install --upgrade pip || exit 4
49+
pyenv exec python -m pip install --upgrade tox || exit 5
50+
pyenv rehash || exit 6
51+
52+
pyenv exec tox -e %TOX_ENV% || exit 7
4253
""".trimIndent()
4354
}
4455
}
@@ -74,11 +85,7 @@ object PlatformPythonTestsLinux : BuildType({
7485
}
7586
}
7687

77-
/**
78-
* Temporary lock Platform Linux jobs on old-type agents
79-
* until execution of these tests is fixed on DIND agents
80-
*/
8188
requirements {
82-
doesNotExist("env.DIND_ENABLED")
89+
equals("env.DIND_ENABLED", "true")
8390
}
8491
})

.teamcity/test/sanity_check/Project.kt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,11 @@ object Project : Project({
2424
.build().buildType
2525
)
2626
}
27+
28+
buildType(
29+
ApacheIgnite3CustomBuildType.Builder(CodeStyleJava17)
30+
.ignite3VCS().ignite3Java17().ignite3BuildDependency()
31+
.defaultBuildTypeSettings().requireLinux()
32+
.build().buildType
33+
)
2734
})
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package test.sanity_check.build_types
2+
3+
import jetbrains.buildServer.configs.kotlin.BuildType
4+
import jetbrains.buildServer.configs.kotlin.failureConditions.BuildFailureOnText
5+
import jetbrains.buildServer.configs.kotlin.failureConditions.failOnText
6+
import org.apache.ignite.teamcity.CustomBuildSteps.Companion.customGradle
7+
import org.apache.ignite.teamcity.Teamcity.Companion.getId
8+
import org.apache.ignite.teamcity.Teamcity.Companion.hiddenText
9+
10+
11+
object CodeStyleJava17 : BuildType({
12+
id(getId(this::class))
13+
name = "Code Style (Java 17)"
14+
description = "Runs code style checks that are missed by Java 11 code style build"
15+
16+
artifactRules = """
17+
%VCSROOT__IGNITE3%/build/reports/checkstyle/*.html
18+
""".trimIndent()
19+
20+
params {
21+
hiddenText("env.JAVA_HOME", "%env.JDK_ORA_17%")
22+
}
23+
24+
steps {
25+
customGradle {
26+
name = "Check code style by Checkstyle Gradle Plugin"
27+
tasks = "java-records-tests:checkstyle"
28+
gradleParams = "--continue"
29+
workingDir = "%VCSROOT__IGNITE3%"
30+
}
31+
}
32+
33+
failureConditions {
34+
executionTimeoutMin = 10
35+
failOnText {
36+
conditionType = BuildFailureOnText.ConditionType.REGEXP
37+
pattern = "There.*[0-9]+ error(s)? reported by Checkstyle"
38+
failureMessage = "CheckStyle errors"
39+
reverse = false
40+
}
41+
}
42+
})

RELEASE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ For all the commands going forward:
4242
2. Update RELEASE_NOTES.txt with the changes since the last release. Commit and push to the `main` branch.
4343
3. Update versions in `main` branch to the next development version (e.g., `x.y.z-SNAPSHOT`):
4444
* Update `gradle.properties` manually.
45-
* Run `./gradlew :platforms:updateVersion` to update platforms versions (.NET, C++, Python, etc.)
45+
* Run `./gradlew updateVersion` to update platforms versions (.NET, C++, Python, etc.) and version in the docker-compose.yml.
4646
* Commit and push changes.
4747
4. Create and push a new branch for the release `ignite-{version}`.
4848
5. Update versions in `ignite-{version}` branch to the current release version, remove `-SNAPSHOT` suffix - same steps as in point 3.

docs/_docs/administrators-guide/metrics/metrics-list.adoc

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,3 +296,21 @@ Transaction metrics.
296296
| LocalUnrebalancedPartitionsCount | The number of partitions that should be moved to this node.
297297
| TotalUnrebalancedPartitionsCount | The total number of partitions that should be moved to a new owner.
298298
|=======================================================================
299+
300+
== raft.snapshots
301+
302+
Metrics related to Raft snapshots of partition replicas.
303+
304+
[width="100%",cols="20%,80%",opts="header"]
305+
|=======================================================================
306+
| Metric name | Description
307+
308+
| IncomingSnapshots | The number of incoming Raft snapshots in progress.
309+
| IncomingSnapshotsLoadingMeta | The number of incoming Raft snapshots loading metadata.
310+
| IncomingSnapshotsWaitingCatalog | The number of incoming Raft snapshots waiting for catalog.
311+
| IncomingSnapshotsPreparingStorages | The number of incoming Raft snapshots preparing storages.
312+
| IncomingSnapshotsPreparingIndexForBuild | The number of incoming Raft snapshots preparing indexes for build.
313+
| IncomingSnapshotsLoadingMvData | The number of incoming Raft snapshots loading multi-versioned data.
314+
| IncomingSnapshotsLoadingTxMeta | The number of incoming Raft snapshots loading transaction metadata.
315+
| OutgoingSnapshots | The number of outgoing Raft snapshots in progress.
316+
|=======================================================================

gradle/libs.versions.toml

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
[versions]
1919
assertj = "3.27.6"
20-
asm = "9.9"
20+
asm = "9.9.1"
2121
bouncycastle = "1.82"
2222
compileTesting = "0.23.0"
2323
commons-collections4 = "4.5.0"
@@ -27,7 +27,7 @@ fmpp = "0.9.16"
2727
jackson = "2.19.2"
2828
jakarta = "2.0.0"
2929
jansi = "2.4.2"
30-
netty = "4.2.7.Final"
30+
netty = "4.2.9.Final"
3131
javapoet = "1.13.0"
3232
javax = "1.3.2"
3333
jetbrainsAnnotations = "26.0.2-1"
@@ -37,7 +37,7 @@ junit5 = "5.14.1"
3737
junit5-platform = "1.14.1"
3838
junitPioneer = "2.3.0"
3939
jsr305 = "3.0.2"
40-
okhttp = "5.3.0"
40+
okhttp = "5.3.2"
4141
gson = "2.13.2"
4242
gsonFire = "1.9.0"
4343
threetenbp = "1.7.2"
@@ -46,22 +46,21 @@ micronautPicocli = "4.4.0"
4646
micronautJunit5 = "3.9.2"
4747
micronautSecurity="3.11.1"
4848
micronautReactor="2.6.0"
49-
mockito = "5.20.0"
49+
mockito = "5.21.0"
5050
picocli = "4.7.5"
5151
slf4j = "2.0.17"
5252
log4j = "2.25.2"
5353
spoon = "10.4.3-beta-21"
5454
swagger = "2.2.41"
5555
swaggerParser = "2.1.36"
56-
swaggerLegacy = "1.6.16"
5756
typesafe = "1.4.5"
5857
hamcrest = "3.0"
5958
hamcrestOptional = "2.0.0"
6059
hamcrestPath = "1.0.1"
6160
hamcrestJson = "0.3"
6261
scalecube = "2.6.15"
6362
calcite = "1.40.0"
64-
value = "2.11.7"
63+
value = "2.12.0"
6564
janino = "3.1.12"
6665
jsonpath = "2.10.0"
6766
javassist = "3.30.2-GA"
@@ -90,7 +89,7 @@ tree-sitter-hocon = "master-a"
9089
otel = "1.55.0"
9190
spring-boot = "3.5.7"
9291
spring-data = "3.5.5"
93-
testcontainers = "1.21.3"
92+
testcontainers = "2.0.0"
9493
gradleToolingApi = "8.6"
9594
protobuf = "4.33.1"
9695
cytodynamics = "0.2.0"
@@ -114,7 +113,7 @@ cmake = "dev.welbyseely.gradle-cmake-plugin:0.0.5"
114113
# NOTE: do not update nebula to 12.x.x+, because newer versions are not compatible with Java 11.
115114
nebula = "com.netflix.nebula.ospackage:11.11.2"
116115
docker = "com.palantir.docker:0.36.0"
117-
dockerRemoteApi = "com.bmuschko.docker-remote-api:9.4.0"
116+
dockerRemoteApi = "com.bmuschko.docker-remote-api:10.0.0"
118117
checksum = "org.gradle.crypto.checksum:1.4.0"
119118
setupbuilder = "de.inetsoftware.setupbuilder:8.4.21"
120119
aggregateJavadoc = "io.freefair.aggregate-javadoc:6.6.3"
@@ -216,7 +215,6 @@ threetenbp = { module = "org.threeten:threetenbp", version.ref = "threetenbp" }
216215

217216
swaggerv3-annotations = { module = "io.swagger.core.v3:swagger-annotations", version.ref = "swagger" }
218217
swagger-parser = { module = "io.swagger.parser.v3:swagger-parser", version.ref = "swaggerParser" }
219-
swagger-legacy-annotations = { module = "io.swagger:swagger-annotations", version.ref = "swaggerLegacy" }
220218

221219
mock-server-netty = { module = "org.mock-server:mockserver-netty", version.ref = "mockServer" }
222220
mock-server-junit = { module = "org.mock-server:mockserver-junit-jupiter", version.ref = "mockServer" }
@@ -304,7 +302,7 @@ spring-boot-test = { module = "org.springframework.boot:spring-boot-test", versi
304302
spring-data-jdbc = { module = "org.springframework.data:spring-data-jdbc", version.ref = "spring-data"}
305303

306304
testcontainers-core = { module = "org.testcontainers:testcontainers", version.ref = "testcontainers"}
307-
testcontainers-junit = { module = "org.testcontainers:junit-jupiter", version.ref = "testcontainers"}
305+
testcontainers-junit = { module = "org.testcontainers:testcontainers-junit-jupiter", version.ref = "testcontainers" }
308306

309307
commons-collections4 = { module = "org.apache.commons:commons-collections4", version.ref = "commons-collections4" }
310308
commons-lang3 = { module = "org.apache.commons:commons-lang3", version.ref = "commons-lang3" }

migration-tools/modules/migration-tools-commons/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ dependencies {
2828
implementation libs.commons.lang3
2929
implementation libs.commons.collections4
3030
implementation libs.slf4j.api
31+
compileOnly libs.jsr305 // Fix unknown enum constant warning
3132

3233
testImplementation project(":migration-tools-commons-tests")
3334
testImplementation testFixtures(project(":migration-tools-ai2-test-fixtures"))

0 commit comments

Comments
 (0)