Skip to content

Commit c8eb81b

Browse files
committed
in preparation for a release
1 parent 7ff5ee5 commit c8eb81b

File tree

8 files changed

+27
-22
lines changed

8 files changed

+27
-22
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ More information: https://h2database.com
2222
<dependency>
2323
<groupId>com.h2database</groupId>
2424
<artifactId>h2</artifactId>
25-
<version>2.3.232</version>
25+
<version>2.4.240</version>
2626
</dependency>
2727
```
2828

h2/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
<groupId>com.h2database</groupId>
66
<artifactId>h2</artifactId>
7-
<version>2.3.239-SNAPSHOT</version>
7+
<version>2.4.240</version>
88
<packaging>jar</packaging>
99
<name>H2 Database Engine</name>
1010
<url>https://h2database.com</url>

h2/src/docsrc/html/changelog.html

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,14 @@ <h1>Change Log</h1>
2121

2222
<h2>Next Version (unreleased)</h2>
2323
<ul>
24-
<li>PR #4273: SHUTDOWN COMPACT: parallel map copy (¼ cores default, override with h2.compactThreads)
24+
<li>nothing here yet</li>
25+
</ul>
26+
27+
<h2>Version 2.4.240 (2025-09-22)</h2>
28+
<ul>
29+
<li>PR #4273: SHUTDOWN COMPACT: parallel map copy (&frac14; cores default, override with h2.compactThreads)
30+
</li>
31+
<li>PR #4258: Fix compaction of encrypted databases
2532
</li>
2633
<li>Issue #4263: Documentation: SET TRUNCATE_LARGE_LENGTH is broken
2734
</li>
@@ -513,14 +520,6 @@ <h2>Version 2.1.210 (2022-01-17)</h2>
513520
</li>
514521
</ul>
515522

516-
<h2>Version 2.0.206 (2022-01-04)</h2>
517-
<ul>
518-
<li>Issue #3322: Create linked table fails when the table contains a Geometry with a data type specified
519-
</li>
520-
<li>Issue #3297: Unexpected GROUP BY results with indexed IGNORECASE column
521-
</li>
522-
</ul>
523-
524523

525524

526525
<!-- [close] { --></div></td></tr></table><!-- } --><!-- analytics --></body></html>

h2/src/docsrc/html/download-archive.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ <h2>Distribution</h2>
2828

2929
<table>
3030
<tbody>
31+
<tr><td>2.2.232</td>
32+
<td><a href="https://github.com/h2database/h2database/releases/download/version-2.3.232/h2-setup-2024-08-11.exe">Windows Installer</a></td>
33+
<td><a href="https://github.com/h2database/h2database/releases/download/version-2.3.232/h2-2024-08-11.zip">Platform-Independent Zip</a></td>
34+
</tr>
3135
<tr><td>2.2.230</td>
3236
<td><a href="https://github.com/h2database/h2database/releases/download/version-2.3.230/h2-setup-2024-07-15.exe">Windows Installer</a></td>
3337
<td><a href="https://github.com/h2database/h2database/releases/download/version-2.3.230/h2-2024-07-15.zip">Platform-Independent Zip</a></td>

h2/src/main/org/h2/engine/Constants.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,18 @@ public class Constants {
1515
/**
1616
* The build date is updated for each public release.
1717
*/
18-
public static final String BUILD_DATE = "2024-08-11";
18+
public static final String BUILD_DATE = "2025-09-22";
1919

2020
/**
2121
* Sequential version number. Even numbers are used for official releases,
2222
* odd numbers are used for development builds.
2323
*/
24-
public static final int BUILD_ID = 239;
24+
public static final int BUILD_ID = 240;
2525

2626
/**
2727
* Whether this is a snapshot version.
2828
*/
29-
public static final boolean BUILD_SNAPSHOT = true;
29+
public static final boolean BUILD_SNAPSHOT = false;
3030

3131
/**
3232
* If H2 is compiled to be included in a product, this should be set to
@@ -84,7 +84,7 @@ public class Constants {
8484
/**
8585
* The minor version of this database.
8686
*/
87-
public static final int VERSION_MINOR = 3;
87+
public static final int VERSION_MINOR = 4;
8888

8989
/**
9090
* The lock mode that means no locking is used at all.

h2/src/main/org/h2/mvstore/MVStore.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ public static void compact(String fileName, boolean compress, FileStore<?> fileS
351351
* This fileStore will be closed here.
352352
*/
353353
public static void compact(String sourceFileName, String targetFileName, boolean compress,
354-
FileStore<?> fileStore) {
354+
FileStore<?> fileStore) {
355355
try {
356356
FileUtils.delete(targetFileName);
357357
Builder targetBuilder = new Builder();
@@ -408,7 +408,8 @@ private static void compact(MVStore source, MVStore target) {
408408
}
409409
}
410410

411-
int poolSize = Integer.getInteger("h2.compactThreads", Math.max(1, Runtime.getRuntime().availableProcessors() / 4));
411+
int poolSize = Integer.getInteger("h2.compactThreads",
412+
Math.max(1, Runtime.getRuntime().availableProcessors() / 4));
412413
ExecutorService pool = Executors.newFixedThreadPool(poolSize);
413414
CompletableFuture.allOf(
414415
// We are going to cheat a little bit in the copyFrom() by employing "incomplete" pages,
@@ -417,7 +418,7 @@ private static void compact(MVStore source, MVStore target) {
417418
// That's why it is important to preserve all chunks
418419
// created in the process, especially if retention time
419420
// is set to a lower value, or even 0.
420-
source.getMapNames().stream().map(mapName ->
421+
source.getMapNames().stream().map(mapName ->
421422
CompletableFuture.runAsync(() -> {
422423
MVMap.Builder<Object, Object> mp = MVStoreTool.getGenericMapBuilder();
423424
// This is a hack to preserve chunks occupancy rate accounting.
@@ -432,7 +433,8 @@ private static void compact(MVStore source, MVStore target) {
432433
MVMap<Object, Object> sourceMap = source.openMap(mapName, mp);
433434
MVMap<Object, Object> targetMap = target.openMap(mapName, mp);
434435
targetMap.copyFrom(sourceMap);
435-
targetMeta.put(MVMap.getMapKey(targetMap.getId()), sourceMeta.get(MVMap.getMapKey(sourceMap.getId())));
436+
targetMeta.put(MVMap.getMapKey(targetMap.getId()),
437+
sourceMeta.get(MVMap.getMapKey(sourceMap.getId())));
436438
}, pool)
437439
).toArray(CompletableFuture[]::new)
438440
).join();

h2/src/test/org/h2/samples/newsfeed.sql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
CREATE TABLE VERSION(ID INT PRIMARY KEY, VERSION VARCHAR, CREATED VARCHAR);
88
INSERT INTO VERSION VALUES
99

10+
(162, '2.4.240', '2025-09-22'),
1011
(161, '2.3.232', '2024-08-11'),
1112
(160, '2.3.230', '2024-07-15'),
1213
(159, '2.2.224', '2023-09-17'),
@@ -21,8 +22,7 @@ INSERT INTO VERSION VALUES
2122
(150, '1.4.200', '2019-10-14'),
2223
(149, '1.4.199', '2019-03-13'),
2324
(148, '1.4.198', '2019-02-22'),
24-
(147, '1.4.197', '2018-03-18'),
25-
(146, '1.4.196', '2017-06-10');
25+
(147, '1.4.197', '2018-03-18');
2626

2727
CREATE TABLE CHANNEL(TITLE VARCHAR, LINK VARCHAR, DESC VARCHAR,
2828
LANGUAGE VARCHAR, PUB TIMESTAMP, LAST TIMESTAMP, AUTHOR VARCHAR);

h2/src/tools/org/h2/build/doc/dictionary.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -397,7 +397,7 @@ meantime meanwhile measurable measure measured measurement measurements
397397
meat mechanism media median medium
398398
mediumblob mediumint mediumtext megabyte megabytes mehner meier meijer melbourne
399399
mem member members memcpy memmove memo memory mendonca mentioned menu
400-
merchantability merchantable merge merged merges merging meridian message
400+
merchantability merchantable merely merge merged merges merging meridian message
401401
messager messages messes met meta metadata meteorite method methods mfulton mgmt mhpk
402402
michael michi micro microarray microarrays microsoft mid middle middleware middot
403403
midnight midori midpoint might migrate migrated migrating migration mill miller

0 commit comments

Comments
 (0)