apache / apache/fluss

[test] Unstable test FlussAuthorizationITCase. testInitWriter

Open
#2,581 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
2.1k
Forks
625
Avg merge
3d 14h
Merged PRs (30d)
97

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/fluss/issues) and found nothing similar.

### Fluss version

main (development)

### Please describe the bug 🐞

https://github.com/apache/fluss/actions/runs/21698664388/job/62574270578

```
[INFO] Running org.apache.fluss.client.table.FlussTableITCase
Error: Tests run: 22, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 181.549 s <<< FAILURE! - in org.apache.fluss.client.security.acl.FlussAuthorizationITCase
Error: org.apache.fluss.client.security.acl.FlussAuthorizationITCase.testInitWriter Time elapsed: 71.391 s <<< FAILURE!
java.lang.AssertionError:

Expecting Optional to contain a value but it was empty.
at org.apache.fluss.server.testutils.FlussClusterExtension.waitReplicaInAssignmentReady(FlussClusterExtension.java:619)
at org.apache.fluss.server.testutils.FlussClusterExtension.lambda$waitUntilTableReady$8(FlussClusterExtension.java:558)
at org.apache.fluss.testutils.common.CommonTestUtils.retry(CommonTestUtils.java:142)
at org.apache.fluss.server.testutils.FlussClusterExtension.waitUntilTableReady(FlussClusterExtension.java:552)
at org.apache.fluss.client.security.acl.FlussAuthorizationITCase.testInitWriter(FlussAuthorizationITCase.java:549)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)
```

### Solution

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with FlussAuthorizationITCase.testInitWriter at line 549 and the failure path in FlussClusterExtension.waitUntilTableReady and waitReplicaInAssignmentReady at lines 552-619. Run the failing integration test and investigate why the replica assignment remains empty during initialization. Done means testInitWriter passes reliably without the Optional assertion failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
distributed-systems, security, testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.