testMixedCqe() — netty Function Reference
Architecture documentation for the testMixedCqe() function in SubmissionQueueTest.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 20ef5255_b2ac_30b9_f60c_9c9af686fa7e["testMixedCqe()"] fd25db8c_3569_d733_e052_a05bfd7b5f45["SubmissionQueueTest"] 20ef5255_b2ac_30b9_f60c_9c9af686fa7e -->|defined in| fd25db8c_3569_d733_e052_a05bfd7b5f45 style 20ef5255_b2ac_30b9_f60c_9c9af686fa7e fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
transport-native-io_uring/src/test/java/io/netty/channel/uring/SubmissionQueueTest.java lines 253–300
@Test
public void testMixedCqe() {
assumeTrue(Native.ioUringSetupSupportsFlags(CqeSize.MIXED.setupFlag()));
RingBuffer ringBuffer = Native.createRingBuffer(8, CqeSize.MIXED.setupFlag());
ringBuffer.enable();
try {
SubmissionQueue submissionQueue = ringBuffer.ioUringSubmissionQueue();
final CompletionQueue completionQueue = ringBuffer.ioUringCompletionQueue();
assertNotNull(ringBuffer);
assertNotNull(submissionQueue);
assertNotNull(completionQueue);
// Loop a few times so that we will get into the situation that we will also receive
// completion events that are marked as "fillers".
for (int i = 0; i < 10; i++) {
int remaining = submissionQueue.remaining();
int added = 0;
while (--remaining > 0) {
assertNotEquals(0, submissionQueue.addNop(
(byte) 0, remaining % 2 != 0 ? Native.IORING_NOP_CQE32 : 0, remaining));
added++;
}
assertEquals(added, submissionQueue.submitAndGet());
int processed = completionQueue.process((res, flags, udata, extraCqeData) -> {
assertEquals(0, res);
// If there is a filler we should not be notified.
assertEquals(0, flags & Native.IORING_CQE_F_SKIP);
if (udata % 2 != 0) {
assertEquals(Native.IORING_CQE_F_32, flags);
assertNotNull(extraCqeData);
assertEquals(0, extraCqeData.position());
assertEquals(16, extraCqeData.limit());
} else {
assertEquals(0, flags);
assertNull(extraCqeData);
}
});
assertEquals(7, processed);
assertFalse(completionQueue.hasCompletions());
}
} finally {
ringBuffer.close();
}
}
Domain
Subdomains
Source
Frequently Asked Questions
What does testMixedCqe() do?
testMixedCqe() is a function in the netty codebase, defined in transport-native-io_uring/src/test/java/io/netty/channel/uring/SubmissionQueueTest.java.
Where is testMixedCqe() defined?
testMixedCqe() is defined in transport-native-io_uring/src/test/java/io/netty/channel/uring/SubmissionQueueTest.java at line 253.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free