Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
397 commits
Select commit Hold shift + click to select a range
89cddb8
RATIS-2248. Rename CI workflows to .yaml (#1220)
adoroszlai Feb 11, 2025
fd6be6c
RATIS-2249. Remove unused shellcheck.sh (#1221)
adoroszlai Feb 11, 2025
4ffa60a
RATIS-2245. Ratis should wait for all apply transaction futures befor…
swamirishi Feb 19, 2025
e0dc9d5
RATIS-2242. change consistency criteria of heartbeat during appendLog…
SzyWilliam Feb 20, 2025
48ac97e
RATIS-2252. Replace JUnitRunListener with JUnit5TestExecutionListener…
szetszwo Feb 26, 2025
9616b3a
RATIS-2217. Automatically re-try flaky tests in CI (#1229)
adoroszlai Feb 26, 2025
337017f
RATIS-2254. Replace junit 4 Timeout with junit 5. (#1230)
szetszwo Feb 26, 2025
fae2552
RATIS-2022. Replace some Guava usage with builtins (#1231)
adoroszlai Feb 27, 2025
509f72e
RATIS-2124. Remove the use of org.junit.Rule. (#1232)
slfan1989 Mar 4, 2025
81a35d7
RATIS-2256. Update Maven to 3.9.9 (#1234)
szetszwo Mar 5, 2025
e2a4156
RATIS-2255. Migrate ratis-grpc to junit 5. (#1233)
szetszwo Mar 5, 2025
2acf086
RATIS-2261. Mark TestRaftSnapshotWithGrpc as flaky
adoroszlai Mar 17, 2025
5744477
RATIS-2262. Mark RaftBasicTests#testStateMachineMetrics as flaky
adoroszlai Mar 17, 2025
5cdc54e
RATIS-2260. AtomicFileOutputStream should truncate temp file (#1237)
adoroszlai Mar 17, 2025
5b2b1df
RATIS-2263. Bump sonar-maven-plugin to 5.0.0.4389 (#1238)
adoroszlai Mar 17, 2025
eed0760
RATIS-2258. Caching TermIndex objects (#1239)
szetszwo Mar 19, 2025
0657d41
RATIS-2266. Use WeakValueCache instead of Guava cache in RaftId. (#1240)
szetszwo Mar 22, 2025
bf48b0a
RATIS-2268. A minor documatention fix for method getSuccessors. (#1242)
hfutatzhanghb Mar 24, 2025
e0f99c6
RATIS-2269. Remove all import java.util.* statements. (#1243)
hfutatzhanghb Mar 25, 2025
5bc25ab
RATIS-2209. Exercise make_rc.sh in CI (#1244)
adoroszlai Mar 31, 2025
129f997
RATIS-2271. Leadership Loss Causes ClosedByInterruptException and Nul…
RkGrit Apr 5, 2025
4685e69
RATIS-2274. Newly added peer may retain outdated configuration after …
RkGrit Apr 5, 2025
b87ed58
RATIS-2282. LogAppender Restart Due to Premature Log Entry Access Dur…
RkGrit Apr 20, 2025
40c8938
RATIS-2278. Follower Fails to Append Entries Due to Index Validation …
RkGrit Apr 22, 2025
0b3f8f5
RATIS-2283. GrpcLogAppender Thread Restart Leaves catchup=false, Bloc…
RkGrit Apr 23, 2025
05a7b24
RATIS-2285. Bump ratis-thirdparty to 1.0.9 (#1252)
adoroszlai May 2, 2025
3c58b82
RATIS-2286. Generate the necessary unified names for the submodules u…
jianghuazhu May 2, 2025
8addb3c
RATIS-2287. Improve RaftServerImpl#toString() to make it more readabl…
jianghuazhu May 7, 2025
8a8ec9e
RATIS-2289. Coverage is 0% due to no execution data files provided (#…
adoroszlai May 9, 2025
13b39d5
RATIS-2180. Use Objects.requireNonNull instead of Preconditions.asser…
jianghuazhu May 12, 2025
9609da1
RATIS-2291. Fix failing TestInstallSnapshotNotificationWithGrpc#testA…
slfan1989 May 12, 2025
df6f217
RATIS-2290. Simply the EventQueue in leader (#1258)
jianghuazhu May 14, 2025
d0b1c58
RATIS-1995. Prevent data loss when a storage is accidentally re-forma…
szetszwo May 16, 2025
0df68e6
RATIS-2293. Fix typo in ClientProtoUtils (#1263)
jianghuazhu May 18, 2025
70a601c
RATIS-2294. Fix NettyClientRpc exception and timeout handling (#1264)
slfan1989 May 19, 2025
5c663ce
RATIS-2251. Migrate ratis-test tests to Junit 5 - Part 3. (#1227)
slfan1989 May 20, 2025
4176007
RATIS-2304. SnapshotManager should validate snapshot file path (#1268)
szetszwo May 22, 2025
d714518
RATIS-2297. Set default commit message to PR title (#1265)
adoroszlai May 22, 2025
b4d7c9a
RATIS-2303. Migrate ratis-examples tests to Junit 5. (#1267)
slfan1989 May 22, 2025
be0ebb0
RATIS-1977. Remove Junit 4 dependencies. (#1269)
slfan1989 May 23, 2025
240358d
RATIS-2305. Add a security doc. (#1270)
szetszwo Jun 2, 2025
8dbf413
RATIS-2308. Remove the unused gRPC TLS confs. (#1271)
szetszwo Jun 2, 2025
e7b7aa3
RATIS-2221. Remove ratis-replicated-map module (#1260)
adoroszlai Jun 10, 2025
c38b8a0
RATIS-2310. Implement hashCode and equals method for SizeInBytes clas…
nandakumar131 Jun 15, 2025
9f1b197
RATIS-2314. Fix that SegmentedRaftLogWorker may append entry by itsel…
jt2594838 Jul 2, 2025
4933d72
RATIS-2317. Move acquire PendingRequestPermit out of synchronized blo…
nandakumar131 Jul 9, 2025
caa54f3
RATIS-2321. Fix NPE in ServerState after continuous leader changes (#…
jt2594838 Aug 13, 2025
add3158
RATIS-2323. Extend ratis-shell add command (#1282)
gaoyajun02 Aug 26, 2025
c94e8a0
RATIS-2318. Add a test to show how to manually restore a snapshot. (#…
szetszwo Sep 8, 2025
79b4505
RATIS-2330. Intermittent failure in TestRaftServerWithGrpc.testRaftSe…
szetszwo Sep 18, 2025
5b2a94d
RATIS-2328. Bump ratis-thirdparty from 1.0.9 to 1.0.10 (#1284)
OneSizeFitsQuorum Sep 19, 2025
5547980
RATIS-2325. Create GrpcStubPool for GrpcServerProtocolClient (#1283)
symious Sep 20, 2025
1f6a24d
RATIS-2261. Intermittent failure in TestRaftSnapshotWithGrpc.testInst…
szetszwo Sep 22, 2025
744ea5a
RATIS-2333. Fix TestInstallSnapshotNotificationWithGrpc failure. (#1289)
szetszwo Sep 22, 2025
58f1436
RATIS-2322. Upgrade JUnit Jupiter to 5.13.3 and Maven Surefire Plugin…
slfan1989 Sep 24, 2025
bdcba19
RATIS-2336. PeerProxyMap.getProxy() could return null. (#1290)
szetszwo Sep 24, 2025
3b6350e
RATIS-2337. Refactor MiniRaftCluster.PeerChanges. (#1291)
szetszwo Sep 26, 2025
e7d8677
RATIS-2331. Reuse SslContext in gRPC. (#1288)
szetszwo Sep 27, 2025
d9d705f
RATIS-2338. Print version info when starting a server. (#1292)
szetszwo Sep 29, 2025
af18220
RATIS-2332. Start new servers with empty peer list in tests (#1294)
szetszwo Oct 1, 2025
e5f0eb6
RATIS-2339. Avoid "commit does not belong to any branch" during relea…
OneSizeFitsQuorum Oct 2, 2025
4c3a3b4
RATIS-2342. Remove NIO specification from GrpcStubPool. (#1297)
symious Oct 3, 2025
0438c9e
RATIS-2344. Remove the unused mock from StateMachineShutdownTests. (#…
szetszwo Oct 9, 2025
1ea8fa4
RATIS-2343. Replace string reasons with enum constants in log messag…
szetszwo Oct 10, 2025
39bbb5d
RATIS-2329. NettyRpcProxy should support handling netty channel excep…
leixm Oct 10, 2025
38ccb22
RATIS-2345. Leader stepDown could cause a deadlock. (#1300)
szetszwo Oct 14, 2025
3341340
RATIS-2346. SimpleStateMachineStorage prints too many log messages. (…
szetszwo Oct 20, 2025
3120cb2
Bump org.bouncycastle:bcpkix-jdk18on from 1.78.1 to 1.79 in /ratis-te…
dependabot[bot] Oct 27, 2025
090b18c
RATIS-2347. NPE in GrpcServerProtocolService. (#1304)
szetszwo Nov 1, 2025
336f9b4
Revert "RATIS-2325. Create GrpcStubPool for GrpcServerProtocolClient …
szetszwo Oct 31, 2025
98de255
RATIS-2348. GrpcLogAppender may print a lot of messages in an error c…
szetszwo Nov 3, 2025
171954c
./mvnw versions:set -DnewVersion=3.3.0-SNAPSHOT
szetszwo Nov 3, 2025
3853d05
RATIS-2349. NettyClient#writeAndFlush should support throwing Already…
leixm Nov 3, 2025
e534bf8
RATIS-2353. Refactor ReadOnlyRequestTests. (#1308)
szetszwo Nov 11, 2025
0f329cb
RATIS-2355. Duplicate output in checkstyle check (#1310)
adoroszlai Nov 11, 2025
02403b8
RATIS-2354. Bump Apache parent POM to 35 (#1309)
adoroszlai Nov 11, 2025
de687e1
RATIS-2356. Define maven.compiler.release globally (#1312)
adoroszlai Nov 12, 2025
82dbcf9
RATIS-2358. Remove unnecessary repository definitions (#1314)
adoroszlai Nov 13, 2025
027965a
RATIS-2352. Update spotbugs to 4.8.6 and suppress new warnings (#1307)
symious Nov 13, 2025
c899285
RATIS-2359. Use JDK 17 for CI checks (#1315)
adoroszlai Nov 14, 2025
9e058dd
RATIS-2350. Fix readAfterWrite bugs. (#1311)
szetszwo Nov 14, 2025
f6e9c71
RATIS-2325. Create GrpcStubPool for GrpcServerProtocolClient (#1306)
symious Nov 17, 2025
f06d8c3
RATIS-2362. Use maven.compiler.release for target Java version (#1317)
adoroszlai Nov 19, 2025
db7ced0
RATIS-2361. Change MD5Hash to value-based. (#1316)
szetszwo Nov 20, 2025
d393e33
RATIS-2363. Bump plugin versions (#1318)
adoroszlai Nov 20, 2025
f909fa7
RATIS-2364. MultipleLinearRandomRetry should throw exceptions for ill…
szetszwo Nov 26, 2025
eefff94
RATIS-2371. Fix LeaderElection/SegmentedRaftLogReader/FileChunkReader…
OneSizeFitsQuorum Dec 16, 2025
4db27b0
RATIS-2373. Use workflow inputs in run command via environment variab…
adoroszlai Dec 16, 2025
a43511f
RATIS-2129. Low replication performance because of lock contention on…
symious Dec 18, 2025
422c96c
RATIS-2374. Do not print stack trace for known exceptions in OrderedA…
szetszwo Dec 24, 2025
e92a8e4
RATIS-2372. Add weekly CVE vulnerability check workflow for Apache Ra…
OneSizeFitsQuorum Dec 29, 2025
d46b170
RATIS-2378. fix listener role transition (#1331)
JoeCqupt Jan 3, 2026
f82804e
RATIS-2379. Support returning applied index for ReadIndex (#1332)
ivandika3 Jan 9, 2026
519581d
RATIS-2380. repeat-test.yaml is vulnerable to parameter injection att…
adoroszlai Jan 13, 2026
a63ea32
RATIS-2383. AtomicFileOutputStream should override FilterOutputStream…
ivandika3 Jan 20, 2026
cceeae9
RATIS-2384. Add Bill of Materials module (#1335)
adoroszlai Jan 22, 2026
eaff520
RATIS-2387. Performance degradation after RATIS-2235 (#1337)
ss77892 Jan 29, 2026
1022fc4
RATIS-2388 (Further) Enhancing content for concept in ratis-docs (#1338)
jcshepherd Feb 3, 2026
9d63777
RATIS-2400. Support timeout and interrupt handling in GrpcClientRpc. …
slfan1989 Feb 8, 2026
1e154c8
RATIS-2402. Fix CallId overflow when parsing gRPC metadata. (#1344)
slfan1989 Feb 8, 2026
2152d35
RATIS-2401. Add memory info to VersionInfo. (#1343)
szetszwo Feb 8, 2026
b182b31
RATIS-2392. Leader should trigger heartbeat immediately after ReadInd…
ivandika3 Feb 9, 2026
d56ae22
RATIS-2382. Support skip leadership check during ReadIndex (#1334)
ivandika3 Feb 9, 2026
39cb975
RATIS-2404. Validate message size before sending async requests. (#1345)
slfan1989 Feb 11, 2026
7382059
RATIS-2405. Remove duplicate computeIfAbsent call in MessageMetrics.i…
slfan1989 Feb 11, 2026
375dd0c
RATIS-2406. Fix resource cleanup bug in GrpcServicesImpl.closeImpl() …
slfan1989 Feb 14, 2026
1d41cc0
RATIS-2407. Missing return statement after stream closed check in Ord…
slfan1989 Feb 14, 2026
31b71cf
RATIS-2409. Fix typos in ratis-docs configurations.md. (#1350)
slfan1989 Feb 16, 2026
f9c0b3d
RATIS-2410. GrpcStubPool should use GrpcUtil for channel shutdown. (#…
slfan1989 Feb 16, 2026
2f52cd4
RATIS-2411. Bump ratis-thirdparty to 1.0.11 (#1352)
adoroszlai Feb 17, 2026
dae55df
RATIS-2408. Add configurable exponential backoff reconnection for Net…
slfan1989 Feb 18, 2026
132c3e5
RATIS-2412. NettyClient LoggingHandler not working. (#1353)
slfan1989 Feb 18, 2026
963d310
RATIS-2413. Support different RetryPolicy implementations. (#1354)
slfan1989 Feb 20, 2026
6ac85ae
RATIS-2414. Add leak detection for ZeroCopyMessageMarshaller. (#1355)
slfan1989 Feb 21, 2026
dc4facd
RATIS-2415. Fix queue corruption in NettyRpcProxy when request sendin…
slfan1989 Feb 21, 2026
9381df6
RATIS-2416. Fix memory leak in NettyClientReplies for stale replies. …
slfan1989 Feb 24, 2026
f6f3c76
RATIS-2417. Fix ChannelMap memory leak in DataStreamManagement when r…
slfan1989 Feb 24, 2026
5306c47
RATIS-2419. checkstyle should not check generated-sources  (#1360)
adoroszlai Feb 26, 2026
122ae75
RATIS-2418. NettyClient LoggingHandler prints too many messages. (#1359)
slfan1989 Feb 26, 2026
26f80a3
RATIS-2420: Fix CT_CONSTRUCTOR_THROW in AtomicFileOutputStream (#1361)
snehasishroy Mar 3, 2026
5055b54
RATIS-2422. TestNettyRpcProxy.testOfferRollbackOnAlreadyClosed fails …
adoroszlai Mar 6, 2026
3319c53
RATIS-2423. Javadoc should be generated in English regardless of buil…
OneSizeFitsQuorum Mar 7, 2026
de72ce5
RATIS-2424. Fix javadoc locale configuration for JDK 8 compatibility …
OneSizeFitsQuorum Mar 8, 2026
a2e130e
RATIS-2425. make_rc.sh does not set version in ratis-bom (#1367)
adoroszlai Mar 8, 2026
d44d500
RATIS-2429. ratis-bom module fails to deploy due to missing distribut…
OneSizeFitsQuorum Mar 10, 2026
cbddb5f
RATIS-2393 Add Span Context to RaftRpcRequestProto (#1341)
taklwu Mar 12, 2026
0491d26
RATIS-2427. Close LogAppender for illegalStateException (#1369)
symious Mar 12, 2026
2525791
RATIS-2435. ratis-bom POM is not signed during release staging (#1374)
OneSizeFitsQuorum Mar 13, 2026
185f83c
RATIS-2434. Regression test for data race between SegmentedRaftLog.ge…
jojochuang Mar 14, 2026
c030f16
RATIS-2436. Bump GitHub action versions (#1375)
adoroszlai Mar 14, 2026
271b12d
RATIS-2439. Remove URL from ratis-version.properties (#1380)
adoroszlai Mar 18, 2026
d94789d
RATIS-2437. make_rc.sh version check prevents releasing subsequent RC…
OneSizeFitsQuorum Mar 18, 2026
f3c2128
RATIS-2438: Update membership-change documentation (#1379)
snehasishroy Mar 20, 2026
8d13def
RATIS-2440. Let ratis-bom inherit from Apache parent (#1381)
adoroszlai Mar 22, 2026
f5b94ef
RATIS-2442. Wait for configuration to be applied to listeners in test…
spacemonkd Mar 22, 2026
bdc149b
RATIS-2443. Sync fork should not trigger CI (#1384)
adoroszlai Mar 22, 2026
e41476d
RATIS-2395. Add Client Span for AyncImpl (#1385)
taklwu Mar 25, 2026
e801403
RATIS-2446. Enable Dependabot dependency updates (#1386)
adoroszlai Mar 27, 2026
d133eff
RATIS-2451. Bump hadoop-maven-plugins to 3.4.3 (#1388)
dependabot[bot] Mar 27, 2026
ddd5379
RATIS-2450. Bump common-custom-user-data-maven-extension to 2.1.0 (#1…
dependabot[bot] Mar 27, 2026
c8fb9e1
RATIS-2452. Bump extra-enforcer-rules to 1.12.0 (#1390)
dependabot[bot] Mar 27, 2026
3abfd82
RATIS-2459. Bump dropwizard3 to 3.2.6 (#1394)
dependabot[bot] Mar 27, 2026
6a0b30b
RATIS-2460. Bump bouncycastle to 1.83 (#1393)
dependabot[bot] Mar 27, 2026
477655b
RATIS-2432. Close PRs after three months of inactivity (#1373)
spacemonkd Mar 28, 2026
152520f
RATIS-244. Skip snapshot file if corresponding MD5 file is missing (#…
spacemonkd Mar 28, 2026
3d71a3f
RATIS-2455. Ignore Spotbugs 4.9+ due to Java 11 requirement (#1395)
adoroszlai Mar 28, 2026
688c586
RATIS-2463. Bump slf4j to 2.0.17 (#1399)
dependabot[bot] Mar 28, 2026
1afb303
RATIS-2461. Ignore Mockito 5+ due to Java 11 requirement (#1401)
adoroszlai Mar 28, 2026
23304b4
RATIS-2466. Bump sonar-maven-plugin to 5.5.0.6356 (#1397)
dependabot[bot] Mar 28, 2026
b0c714c
RATIS-2467. Bump jacoco-maven-plugin to 0.8.14 (#1402)
dependabot[bot] Mar 28, 2026
cdb7e46
RATIS-2469. Remove Command#close() (#1404)
adoroszlai Mar 29, 2026
d1188e2
RATIS-2471. Bump commons-cli to 1.11.0 (#1398)
dependabot[bot] Mar 29, 2026
28dc87a
RATIS-2473. Ignore JUnit 6+ due to Java 17 requirement (#1408)
adoroszlai Mar 30, 2026
ba11fa3
RATIS-2476. Bump develocity-maven-extension to 2.4.0 (#1410)
dependabot[bot] Mar 30, 2026
d59bd0d
RATIS-2479. Bump junit to 5.14.3 (#1409)
dependabot[bot] Mar 30, 2026
67a3717
RATIS-2480. Bump os-maven-plugin to 1.7.1 (#1406)
dependabot[bot] Mar 30, 2026
f61a9c8
RATIS-2478. compile check does not set target version (#1411)
adoroszlai Mar 30, 2026
9b48f5b
RATIS-2472. Bump apache parent to 37 (#1403)
dependabot[bot] Mar 30, 2026
86f2aab
RATIS-2481. Bump license-maven-plugin to 2.7.1 (#1412)
dependabot[bot] Mar 31, 2026
5f6c6bf
RATIS-2484. Remove unused jakarta.annotation-api (#1416)
adoroszlai Mar 31, 2026
f9f4b02
RATIS-2490. Bump spotbugs-maven-plugin to 4.8.6.8 (#1421)
dependabot[bot] Apr 2, 2026
e95f94e
RATIS-2482. Bump maven-bundle-plugin to 6.0.2 (#1413)
dependabot[bot] Apr 2, 2026
a6b3c19
RATIS-2454. Findbugs summary is empty despite violations (#1396)
adoroszlai Apr 3, 2026
94da526
RATIS-2494. Ignore Hadoop 3.5+ due to Java 17 requirement (#1423)
adoroszlai Apr 3, 2026
0f954a6
RATIS-2487. Trigger installSnapshot if leader cannot get previous ent…
ivandika3 Apr 3, 2026
6e40497
RATIS-2489. Bump exec-maven-plugin to 3.6.3 (#1418)
dependabot[bot] Apr 3, 2026
885d1b7
RATIS-2403. Support leader batch write to improve linearizable follow…
ivandika3 Apr 6, 2026
e0d6a32
RATIS-2499. Allow the LogAppender restart when LogAppenderDaemon exce…
xichen01 Apr 8, 2026
93314c3
RATIS-2433. Cancel transaction in case of failure to append (#1382)
spacemonkd Apr 9, 2026
6b7d16b
RATIS-2483. Bump dependency-check-maven to 12.2.0 (#1414)
dependabot[bot] Apr 12, 2026
6eb952e
RATIS-2453. Bump opentelemetry to 1.60.1 (#1387)
dependabot[bot] Apr 12, 2026
0ac3277
RATIS-2493. Check actions with zizmor (#1426)
adoroszlai Apr 15, 2026
f3da8f5
RATIS-2497. Pass server to the dummy watch request in OrderedAsync (#…
szetszwo Apr 23, 2026
c846086
RATIS-2505. Improve RATIS-2387 with direct synchronous append when co…
ss77892 Apr 23, 2026
481906c
RATIS-2507. Fix java.lang.IllegalStateException: gap between entries …
ChenSammi May 1, 2026
803de35
RATIS-2508. appendEntries log messages improvement. (#1440)
szetszwo May 5, 2026
62e9c3d
RATIS-2513. Bump bouncycastle.version from 1.83 to 1.84 (#1437)
dependabot[bot] May 5, 2026
41f9a7d
RATIS-2515. Bump common-custom-user-data-maven-extension to 2.2.0 (#1…
dependabot[bot] May 5, 2026
6e171d8
RATIS-2517. Bump actions/upload-artifact to 7.0.1 (#1430)
dependabot[bot] May 5, 2026
85b18d3
RATIS-2519. Bump actions/cache to 5.0.5 (#1435)
dependabot[bot] May 5, 2026
e1cdcd4
RATIS-1925. Support Zero-Copy in GrpcClientProtocolService (#1007)
duongkame Jan 13, 2024
9921552
RATIS-1990. Refactor appendEntries processing to support reference co…
duongkame Jan 18, 2024
b34799f
RATIS-2009. ReferenceCount should work for all LogEntry types. (#1021)
duongkame Jan 19, 2024
44129f8
RATIS-1934. Support Zero-Copy in GrpcServerProtocolService (#1014)
duongkame Jan 19, 2024
71d832c
RATIS-2007. Zero-copy buffers are not released (#1027)
duongkame Jan 25, 2024
d6b9168
RATIS-2018. Zero-copy buffers are not released - 2nd chunk (#1032)
duongkame Jan 30, 2024
9df8fda
RATIS-1978. Add tests assertions to verify all zero-copy messages are…
duongkame Jan 31, 2024
e63011e
RATIS-1976. Migrate ratis-test tests to Junit 5 - Part 1 (#1038)
nandakumar131 Feb 1, 2024
b7f425e
RATIS-1997. Refactor StateMachine interface to use ReferenceCountedOb…
duongkame Feb 1, 2024
73adbd8
RATIS-2024. Refactor appendEntries code. (#1040)
szetszwo Feb 6, 2024
439ed9a
RATIS-2025. Move out assert and proto methods from RaftServerImpl. (#…
szetszwo Feb 7, 2024
5907705
RATIS-2021. Migrate ratis-test tests to Junit 5 - Part 2. (#1043)
nandakumar131 Feb 20, 2024
20e2bae
RATIS-2020. Refactor TransactionContext to supply LogEntryProto via a…
duongkame Feb 21, 2024
3c39786
RATIS-2028. Refactor RaftLog to supply log as ReferenceCountedObject …
duongkame Mar 12, 2024
40f3c63
RATIS-2026. LogAppender to consume log entries with reference count (…
duongkame Mar 27, 2024
05e0d6f
RATIS-1979. Allow StateMachine.read to return a ReferentCountedObject…
duongkame Apr 2, 2024
5727d5a
RATIS-2051. Fix Sonar bugs for Ratis. (#1059)
OneSizeFitsQuorum Apr 3, 2024
7e188c8
RATIS-2059. Missing reference count when putting log entries to cache…
duongkame Apr 17, 2024
f5ca448
RATIS-2055. Move notifyTermIndexUpdated after leader.checkReady (#1068)
symious Apr 19, 2024
c0e6f48
RATIS-2068. Avoid logging raw StateMachine data body. (#1074)
duongkame May 3, 2024
e2ba1be
RATIS-2080. Reuse LeaderElection executor. (#1082)
szetszwo May 10, 2024
740a7ee
Revert "RATIS-2080. Reuse LeaderElection executor. (#1082)"
szetszwo May 10, 2024
0350055
RATIS-2077. Timedout StateMachine retainRead is released twice (#1081)
duongkame May 11, 2024
163cfd9
RATIS-2088. Fix name and imports related check in test-directory (#1092)
symious May 14, 2024
5a88741
RATIS-2092. Add metrics to expose number of zero-copy unclosed messag…
duongkame May 23, 2024
0193fbc
RATIS-2096. Add a conf to enable/disable zero copy. (#1099)
duongkame May 24, 2024
7678319
RATIS-2093. Decouple metadata and configuration entries from appendEn…
duongkame May 24, 2024
d0b88a8
RATIS-2094. Avoid corruptions from TransactionContext's stateMachineL…
duongkame Jun 3, 2024
4786390
RATIS-2114. Corruption due to SegmentedRaftLogWorker queue LogEntry w…
duongkame Jun 21, 2024
49caf36
RATIS-2120. Bump version after 3.1.0 release (#1118)
adoroszlai Jun 29, 2024
45ec1d1
RATIS-2116. Fix the issue where RaftServerImpl.appendEntries may be b…
sunhaibotb Jul 2, 2024
f09e5af
RATIS-2134. `logMetadata` could miss appending the `metadataEntry` w…
chungen0126 Aug 6, 2024
c028860
RATIS-2139. Fix checkstyle:ParameterNumber in GrpcService. (#1134)
szetszwo Aug 14, 2024
d1ebf2b
RATIS-2137. Fix LogAppenderDefault in handling of INCONSISTENCY. (#1136)
Flyangz Aug 21, 2024
4d31909
RATIS-2129. Low replication performance because LogAppender is often …
szetszwo Aug 30, 2024
fd2b8cf
RATIS-2155. Add a builder for RatisShell. (#1150)
szetszwo Sep 18, 2024
8c92d2c
RATIS-2151. TestRaftWithGrpc keeps failing with zero-copy. (#1164)
szetszwo Oct 11, 2024
2c5ba67
RATIS-2164. LeakDetector has a race condition. (#1163)
szetszwo Oct 16, 2024
f2deccc
RATIS-2168. Support custom gRPC services. (#1169)
szetszwo Oct 17, 2024
ab8b482
RATIS-2173. Fix zero-copy bugs for non-gRPC cases. (#1167)
szetszwo Oct 20, 2024
ebfb53d
RATIS-2174. Move future.join outside the lock (#1168)
133tosakarin Oct 21, 2024
fb497ef
RATIS-2178. Add a log message whenever deleting a RaftLog segment. (#…
szetszwo Oct 28, 2024
a017333
RATIS-2186. Raft log should not purge index lower than the log start …
ivandika3 Nov 12, 2024
e6f81ba
RATIS-2220. Skip further tests after leak detected (#1193)
adoroszlai Dec 23, 2024
50e2d7d
RATIS-2225. RaftClientRequest leak in RaftServerImpl. (#1198)
szetszwo Dec 23, 2024
faeeb08
RATIS-2184. Improve TestRaftWithGrpc test stability (#1177)
jianghuazhu Dec 23, 2024
0ed7113
RATIS-2227. LogEntryProto leak in SegmentedRaftLog (#1199)
jianghuazhu Dec 25, 2024
9658b90
RATIS-2228. Refactor the offered map in LogAppenderBase.nextAppendEnt…
szetszwo Jan 3, 2025
460ba5c
RATIS-2235. Allow only one thread to perform appendLog (#1206)
SzyWilliam Jan 6, 2025
867c5f3
RATIS-2244. Reduce the number of log messages during bootstrap (#1217)
Feb 3, 2025
c3159a3
RATIS-2245. Ratis should wait for all apply transaction futures befor…
swamirishi Feb 19, 2025
b55fca9
RATIS-2242 change consistency criteria of heartbeat during appendLog …
SzyWilliam Feb 20, 2025
fd56bd3
RATIS-2217. Automatically re-try flaky tests in CI (#1229)
adoroszlai Feb 26, 2025
07294e3
RATIS-2254. Replace junit 4 Timeout with junit 5. (#1230)
szetszwo Feb 26, 2025
52b1930
RATIS-2124. Remove the use of org.junit.Rule. (#1232)
slfan1989 Mar 4, 2025
60f5491
RATIS-2255. Migrate ratis-grpc to junit 5. (#1233)
szetszwo Mar 5, 2025
cd996f8
RATIS-2258. Caching TermIndex objects (#1239)
szetszwo Mar 19, 2025
c81ce58
RATIS-2269. Remove all import java.util.* statements. (#1243)
hfutatzhanghb Mar 25, 2025
b70a235
RATIS-2271 Leadership Loss Causes ClosedByInterruptException and Null…
RkGrit Apr 5, 2025
193c826
RATIS-2278. Follower Fails to Append Entries Due to Index Validation …
RkGrit Apr 11, 2025
b1373cc
Revert "RATIS-2278. Follower Fails to Append Entries Due to Index Val…
szetszwo Apr 17, 2025
092dbea
RATIS-2282. LogAppender Restart Due to Premature Log Entry Access Dur…
RkGrit Apr 20, 2025
71c93b7
RATIS-2278. Follower Fails to Append Entries Due to Index Validation …
RkGrit Apr 22, 2025
2161b16
RATIS-2180. Use Objects.requireNonNull instead of Preconditions.asser…
jianghuazhu May 12, 2025
300bb2f
RATIS-2291. Fix failing TestInstallSnapshotNotificationWithGrpc#testA…
slfan1989 May 12, 2025
6d7a5b9
RATIS-2251. Migrate ratis-test tests to Junit 5 - Part 3. (#1227)
slfan1989 May 20, 2025
c2d2207
RATIS-2303. Migrate ratis-examples tests to Junit 5. (#1267)
slfan1989 May 22, 2025
8216f04
RATIS-1977. Remove Junit 4 dependencies. (#1269)
slfan1989 May 23, 2025
645d66e
RATIS-2414. Add leak detection for ZeroCopyMessageMarshaller. (#1355)
slfan1989 Feb 21, 2026
667ecc1
RATIS-2501. Improve diagnostics for testInstallSnapshotDuringBootstra…
slfan1989 Apr 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 4 additions & 1 deletion .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,12 @@ github:
- java
enabled_merge_buttons:
squash: true
squash_commit_message: PR_TITLE
merge: false
rebase: false
autolink_jira: RATIS
autolink_jira:
- HDDS
- RATIS

notifications:
commits: commits@ratis.apache.org
Expand Down
47 changes: 47 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# 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.

version: 2

updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
# 'daily' only runs on weekdays
interval: "cron"
cronjob: "15 9 * * *"
cooldown:
default-days: 7
- package-ecosystem: "maven"
directory: "/"
schedule:
# 'daily' only runs on weekdays
interval: "cron"
cronjob: "15 10 * * *"
cooldown:
default-days: 7
ignore:
# requires Java 11
- dependency-name: "com.github.spotbugs:spotbugs"
versions: [">=4.9.0"]
- dependency-name: "com.github.spotbugs:spotbugs-maven-plugin"
versions: [">=4.9.0.0"]
- dependency-name: "org.mockito:mockito-core"
versions: [">=5.0.0"]
# requires Java 17
- dependency-name: "org.apache.hadoop:*"
versions: [">=3.5.0"]
- dependency-name: "org.junit:junit-bom"
versions: [">=6.0.0"]
212 changes: 212 additions & 0 deletions .github/workflows/check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,212 @@
# 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.

# This reusable workflow executes a single check from `dev-support/checks/`.
# Before and after the check, it performs various steps based on workflow inputs.

name: ci-check

on:
workflow_call:
inputs:
# REQUIRED
script:
type: string
description: "Test script to run from dev-support/checks, without .sh extension"
required: true

# OPTIONAL (ordered alphabetically)
java-version:
type: string
description: "Java version to set up (default: 17)"
default: '17'
required: false

needs-binary-tarball:
type: boolean
description: "Whether to download Ratis binary tarball created by build (default: no)"
default: false
required: false

needs-maven-repo:
type: boolean
description: "Whether to download Ratis jars created by build (default: no)"
default: false
required: false

needs-source-tarball:
type: boolean
description: "Whether to download Ratis source tarball created by build (default: no)"
default: false
required: false

runner:
type: string
description: "GitHub Actions runner to use"
default: 'ubuntu-24.04'
required: false

script-args:
type: string
description: "Arguments for the test script"
default: ''
required: false

split:
type: string
description: "Name of split for matrix jobs, only used in display name"
default: ''
required: false

timeout-minutes:
type: number
description: "Job timeout in minutes (default: 30)"
default: 30
required: false

secrets:
DEVELOCITY_ACCESS_KEY:
description: 'Token for submitting build scan to Develocity'
required: false

env:
MAVEN_ARGS: --batch-mode --show-version
MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
SCRIPT: ${{ inputs.script }}
WITH_COVERAGE: ${{ github.event_name == 'push' }}

jobs:
check:
name: ${{ (inputs.split && format('{0} ({1})', inputs.script, inputs.split)) || inputs.script }}
runs-on: ${{ inputs.runner }}
timeout-minutes: ${{ inputs.timeout-minutes }}
steps:
- name: Checkout project
if: ${{ !inputs.needs-source-tarball }}
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false

- name: Download source tarball
if: ${{ inputs.needs-source-tarball }}
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: ratis-src

- name: Extract source tarball
if: ${{ inputs.needs-source-tarball }}
run: |
tar --strip-components 1 -xzvf ratis*-src.tar.gz

- name: Create cache for Maven dependencies
if: ${{ inputs.script == 'build' }}
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
with:
path: |
~/.m2/repository/*/*/*
!~/.m2/repository/org/apache/ratis
key: maven-repo-${{ hashFiles('**/pom.xml') }}
restore-keys: |
maven-repo-

- name: Restore cache for Maven dependencies
if: ${{ inputs.script != 'build' }}
uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
with:
path: |
~/.m2/repository/*/*/*
!~/.m2/repository/org/apache/ratis
key: maven-repo-${{ hashFiles('**/pom.xml') }}
restore-keys: |
maven-repo-

- name: Download Maven repo
id: download-maven-repo
if: ${{ inputs.needs-maven-repo }}
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: maven-repo
path: |
~/.m2/repository/org/apache/ratis

- name: Download binary tarball
if: ${{ inputs.needs-binary-tarball }}
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: ratis-bin

- name: Extract binary tarball
if: ${{ inputs.needs-binary-tarball }}
run: |
mkdir -p ratis-assembly/target
tar xzvf ratis-*-bin.tar.gz -C ratis-assembly/target

- name: Setup java ${{ inputs.java-version }}
if: ${{ inputs.java-version }}
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: 'temurin'
java-version: ${{ inputs.java-version }}

- name: Execute tests
run: |
$COMMAND
env:
COMMAND: dev-support/checks/${{ inputs.script }}.sh ${{ inputs.script-args }}
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}

- name: Summary of failures
if: ${{ failure() }}
run: |
if [[ -s "target/$SCRIPT/summary.txt" ]]; then
cat target/$SCRIPT/summary.txt
fi

- name: Archive build results
if: ${{ !cancelled() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: ${{ (inputs.split && format('{0}-{1}', inputs.script, inputs.split)) || inputs.script }}
path: target/${{ inputs.script }}
continue-on-error: true

# The following steps are hard-coded to be run only for 'build' check,
# to avoid the need for 3 more inputs.
- name: Store binaries for tests
if: ${{ inputs.script == 'build' && !cancelled() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: ratis-bin
path: |
ratis-assembly/target/ratis-assembly-*-bin.tar.gz
retention-days: 1

- name: Store source tarball for compilation
if: ${{ inputs.script == 'build' && !cancelled() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: ratis-src
path: |
ratis-assembly/target/ratis-assembly-*-src.tar.gz
retention-days: 1

- name: Store Maven repo for tests
if: ${{ inputs.script == 'build' && !cancelled() }}
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: maven-repo
path: |
~/.m2/repository/org/apache/ratis
retention-days: 1
Loading