Commit 7d25a18
committed
Make the build more forward-compatible (before move/testing with Java 21/25)
Hadoop upgrade (3.3.0 -> 3.4.3):
- Hadoop 3.3.x uses javax.security.auth.Subject.getSubject() which
was removed in JDK 23+ (JEP 471). Hadoop 3.4.x uses
Subject.current() instead, restoring JDK 25 compatibility.
Spotless upgrade (2.46.1 -> 3.5.1):
- Spotless 2.46.1 calls com.sun.tools.javac.util.Log methods that
were removed in JDK 25, causing NoSuchMethodError at format time.
Spotless 3.5.1 is compatible with JDK 25. The minor formatting
changes to switch/case comment indentation are from the new version.
Fix ByteBuffer leak in vectored I/O reads:
- Hadoop's readVectored() API accepts an IntFunction<ByteBuffer> for
allocation but has no corresponding release callback. When a
wrapping filesystem like ChecksumFileSystem is in the path, Hadoop
allocates a buffer through the caller's allocator, uses it
internally for checksum verification, then creates a different
buffer for the CompletableFuture result. The originally allocated
buffer is abandoned without release.
- This caused TrackingByteBufferAllocator (used in tests) to throw
LeakedByteBufferException for tests using vectored I/O:
TestRecordLevelFilters, TestColumnIndexFiltering, TestParquetReader.
- Fix: wrap the allocator in a capturing decorator that tracks every
buffer allocated during readVectored(), then registers them all
for release via ByteBufferReleaser. A try-finally ensures buffers
are registered even if a read future times out or fails.1 parent 8c8ec92 commit 7d25a18
8 files changed
Lines changed: 46 additions & 15 deletions
File tree
- parquet-hadoop/src/main/java/org/apache/parquet
- format/converter
- hadoop
- parquet-thrift/src/main/java/org/apache/parquet/thrift
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
763 | 763 | | |
764 | 764 | | |
765 | 765 | | |
766 | | - | |
| 766 | + | |
767 | 767 | | |
768 | 768 | | |
769 | 769 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
325 | 325 | | |
326 | 326 | | |
327 | 327 | | |
328 | | - | |
| 328 | + | |
329 | 329 | | |
330 | 330 | | |
331 | 331 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
546 | 546 | | |
547 | 547 | | |
548 | 548 | | |
549 | | - | |
| 549 | + | |
550 | 550 | | |
551 | 551 | | |
552 | 552 | | |
| |||
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
107 | | - | |
| 106 | + | |
| 107 | + | |
108 | 108 | | |
109 | 109 | | |
110 | 110 | | |
| |||
Lines changed: 37 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| 68 | + | |
68 | 69 | | |
69 | 70 | | |
70 | 71 | | |
| |||
1361 | 1362 | | |
1362 | 1363 | | |
1363 | 1364 | | |
1364 | | - | |
1365 | | - | |
1366 | | - | |
1367 | | - | |
1368 | | - | |
1369 | | - | |
| 1365 | + | |
| 1366 | + | |
| 1367 | + | |
| 1368 | + | |
| 1369 | + | |
| 1370 | + | |
| 1371 | + | |
| 1372 | + | |
| 1373 | + | |
| 1374 | + | |
| 1375 | + | |
| 1376 | + | |
| 1377 | + | |
| 1378 | + | |
| 1379 | + | |
| 1380 | + | |
| 1381 | + | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
1370 | 1401 | | |
1371 | 1402 | | |
1372 | 1403 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
226 | 226 | | |
227 | 227 | | |
228 | 228 | | |
229 | | - | |
| 229 | + | |
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
77 | | - | |
| 77 | + | |
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
83 | | - | |
| 83 | + | |
84 | 84 | | |
85 | 85 | | |
86 | | - | |
| 86 | + | |
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
| |||
0 commit comments