Copilot commented on code in PR #7205:
URL: https://github.com/apache/ignite-3/pull/7205#discussion_r2606596617


##########
modules/runner/src/integrationTest/java/org/apache/ignite/internal/streamer/ItAbstractDataStreamerTest.java:
##########
@@ -202,6 +211,127 @@ public void testBasicStreamingKvPojoView() {
         assertNull(view.get(null, 3));
     }
 
+    @Test
+    public void testBasicStreamingCompositeKeyRecordBinaryView() {
+        RecordView<Tuple> view = compositeKeyTable().recordView();
+        view.upsert(null, compositeKeyTuple(1));
+        view.upsert(null, compositeKeyTuple(2));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Tuple>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(3)));
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(4)));
+
+            
publisher.submit(DataStreamerItem.removed(compositeKeyTupleKey(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, compositeKeyTupleKey(1)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(2)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(3)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(4)));
+
+        Tuple resTuple = view.get(null, compositeKeyTupleKey(3));
+        assertEquals("name3", resTuple.stringValue("name"));
+        assertEquals("data3", resTuple.stringValue("data"));
+        assertEquals("uniqueId3", resTuple.stringValue("uniqueId"));
+        assertEquals("foo3", resTuple.stringValue("foo"));
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyRecordPojoView() {
+        RecordView<CompositeKeyPojo> view = 
compositeKeyTable().recordView(CompositeKeyPojo.class);
+        view.upsert(null, new CompositeKeyPojo(1, "data1", "foo1"));
+        view.upsert(null, new CompositeKeyPojo(2, "data2", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<CompositeKeyPojo>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(3, 
"data3", "foo3")));
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(4, 
"data4", "foo4")));
+
+            publisher.submit(DataStreamerItem.removed(new 
CompositeKeyPojo(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, new CompositeKeyPojo(1)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(2)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(3)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(4)));
+
+        CompositeKeyPojo resPojo = view.get(null, new CompositeKeyPojo(3));
+        assertEquals("name3", resPojo.name);
+        assertEquals("data3", resPojo.data);
+        assertEquals("uniqueId3", resPojo.uniqueId);
+        assertEquals("foo3", resPojo.foo);
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyKvBinaryView() {
+        KeyValueView<Tuple, Tuple> view = compositeKeyTable().keyValueView();
+        view.put(null, compositeKeyTupleKey(1), Tuple.create().set("data", 
"data1").set("foo", "foo1"));
+        view.put(null, compositeKeyTupleKey(2), Tuple.create().set("data", 
"data2").set("foo", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Map.Entry<Tuple, Tuple>>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            
publisher.submit(DataStreamerItem.of(Map.entry(compositeKeyTupleKey(3), 
Tuple.create().set("data", "data3").set("foo", "foo3"))));

Review Comment:
   This line exceeds the project's line length limit of 140 characters. 
Consider breaking it into multiple lines:
   
   ```java
   publisher.submit(DataStreamerItem.of(Map.entry(
           compositeKeyTupleKey(3), 
           Tuple.create().set("data", "data3").set("foo", "foo3"))));
   ```
   ```suggestion
               publisher.submit(
                   DataStreamerItem.of(
                       Map.entry(
                           compositeKeyTupleKey(3),
                           Tuple.create()
                               .set("data", "data3")
                               .set("foo", "foo3")
                       )
                   )
               );
   ```



##########
modules/runner/src/integrationTest/java/org/apache/ignite/internal/streamer/ItAbstractDataStreamerTest.java:
##########
@@ -202,6 +211,127 @@ public void testBasicStreamingKvPojoView() {
         assertNull(view.get(null, 3));
     }
 
+    @Test
+    public void testBasicStreamingCompositeKeyRecordBinaryView() {
+        RecordView<Tuple> view = compositeKeyTable().recordView();
+        view.upsert(null, compositeKeyTuple(1));
+        view.upsert(null, compositeKeyTuple(2));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Tuple>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(3)));
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(4)));
+
+            
publisher.submit(DataStreamerItem.removed(compositeKeyTupleKey(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, compositeKeyTupleKey(1)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(2)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(3)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(4)));
+
+        Tuple resTuple = view.get(null, compositeKeyTupleKey(3));
+        assertEquals("name3", resTuple.stringValue("name"));
+        assertEquals("data3", resTuple.stringValue("data"));
+        assertEquals("uniqueId3", resTuple.stringValue("uniqueId"));
+        assertEquals("foo3", resTuple.stringValue("foo"));
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyRecordPojoView() {
+        RecordView<CompositeKeyPojo> view = 
compositeKeyTable().recordView(CompositeKeyPojo.class);
+        view.upsert(null, new CompositeKeyPojo(1, "data1", "foo1"));
+        view.upsert(null, new CompositeKeyPojo(2, "data2", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<CompositeKeyPojo>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(3, 
"data3", "foo3")));
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(4, 
"data4", "foo4")));
+
+            publisher.submit(DataStreamerItem.removed(new 
CompositeKeyPojo(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, new CompositeKeyPojo(1)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(2)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(3)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(4)));
+
+        CompositeKeyPojo resPojo = view.get(null, new CompositeKeyPojo(3));
+        assertEquals("name3", resPojo.name);
+        assertEquals("data3", resPojo.data);
+        assertEquals("uniqueId3", resPojo.uniqueId);
+        assertEquals("foo3", resPojo.foo);
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyKvBinaryView() {
+        KeyValueView<Tuple, Tuple> view = compositeKeyTable().keyValueView();
+        view.put(null, compositeKeyTupleKey(1), Tuple.create().set("data", 
"data1").set("foo", "foo1"));
+        view.put(null, compositeKeyTupleKey(2), Tuple.create().set("data", 
"data2").set("foo", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Map.Entry<Tuple, Tuple>>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            
publisher.submit(DataStreamerItem.of(Map.entry(compositeKeyTupleKey(3), 
Tuple.create().set("data", "data3").set("foo", "foo3"))));
+            
publisher.submit(DataStreamerItem.of(Map.entry(compositeKeyTupleKey(4), 
Tuple.create().set("data", "data4").set("foo", "foo4"))));

Review Comment:
   This line exceeds the project's line length limit of 140 characters. 
Consider breaking it into multiple lines:
   
   ```java
   publisher.submit(DataStreamerItem.of(Map.entry(
           compositeKeyTupleKey(4), 
           Tuple.create().set("data", "data4").set("foo", "foo4"))));
   ```
   ```suggestion
               publisher.submit(
                   DataStreamerItem.of(
                       Map.entry(
                           compositeKeyTupleKey(4),
                           Tuple.create()
                               .set("data", "data4")
                               .set("foo", "foo4")
                       )
                   )
               );
   ```



##########
modules/runner/src/integrationTest/java/org/apache/ignite/internal/streamer/ItAbstractDataStreamerTest.java:
##########
@@ -202,6 +211,127 @@ public void testBasicStreamingKvPojoView() {
         assertNull(view.get(null, 3));
     }
 
+    @Test
+    public void testBasicStreamingCompositeKeyRecordBinaryView() {
+        RecordView<Tuple> view = compositeKeyTable().recordView();
+        view.upsert(null, compositeKeyTuple(1));
+        view.upsert(null, compositeKeyTuple(2));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Tuple>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(3)));
+            publisher.submit(DataStreamerItem.of(compositeKeyTuple(4)));
+
+            
publisher.submit(DataStreamerItem.removed(compositeKeyTupleKey(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, compositeKeyTupleKey(1)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(2)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(3)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(4)));
+
+        Tuple resTuple = view.get(null, compositeKeyTupleKey(3));
+        assertEquals("name3", resTuple.stringValue("name"));
+        assertEquals("data3", resTuple.stringValue("data"));
+        assertEquals("uniqueId3", resTuple.stringValue("uniqueId"));
+        assertEquals("foo3", resTuple.stringValue("foo"));
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyRecordPojoView() {
+        RecordView<CompositeKeyPojo> view = 
compositeKeyTable().recordView(CompositeKeyPojo.class);
+        view.upsert(null, new CompositeKeyPojo(1, "data1", "foo1"));
+        view.upsert(null, new CompositeKeyPojo(2, "data2", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<CompositeKeyPojo>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(3, 
"data3", "foo3")));
+            publisher.submit(DataStreamerItem.of(new CompositeKeyPojo(4, 
"data4", "foo4")));
+
+            publisher.submit(DataStreamerItem.removed(new 
CompositeKeyPojo(1)));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, new CompositeKeyPojo(1)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(2)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(3)));
+        assertNotNull(view.get(null, new CompositeKeyPojo(4)));
+
+        CompositeKeyPojo resPojo = view.get(null, new CompositeKeyPojo(3));
+        assertEquals("name3", resPojo.name);
+        assertEquals("data3", resPojo.data);
+        assertEquals("uniqueId3", resPojo.uniqueId);
+        assertEquals("foo3", resPojo.foo);
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyKvBinaryView() {
+        KeyValueView<Tuple, Tuple> view = compositeKeyTable().keyValueView();
+        view.put(null, compositeKeyTupleKey(1), Tuple.create().set("data", 
"data1").set("foo", "foo1"));
+        view.put(null, compositeKeyTupleKey(2), Tuple.create().set("data", 
"data2").set("foo", "foo2"));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Map.Entry<Tuple, Tuple>>>()) {
+            streamerFut = view.streamData(publisher, null);
+
+            
publisher.submit(DataStreamerItem.of(Map.entry(compositeKeyTupleKey(3), 
Tuple.create().set("data", "data3").set("foo", "foo3"))));
+            
publisher.submit(DataStreamerItem.of(Map.entry(compositeKeyTupleKey(4), 
Tuple.create().set("data", "data4").set("foo", "foo4"))));
+
+            
publisher.submit(DataStreamerItem.removed(Map.entry(compositeKeyTupleKey(1), 
Tuple.create())));
+        }
+
+        streamerFut.orTimeout(1, TimeUnit.SECONDS).join();
+
+        assertNull(view.get(null, compositeKeyTupleKey(1)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(2)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(3)));
+        assertNotNull(view.get(null, compositeKeyTupleKey(4)));
+
+        Tuple resValue = view.get(null, compositeKeyTupleKey(3));
+        assertEquals("data3", resValue.stringValue("data"));
+        assertEquals("foo3", resValue.stringValue("foo"));
+    }
+
+    @Test
+    public void testBasicStreamingCompositeKeyKvPojoView() {
+        KeyValueView<CompositeKeyKeyPojo, CompositeKeyValPojo> view = 
compositeKeyTable().keyValueView(
+                Mapper.of(CompositeKeyKeyPojo.class), 
Mapper.of(CompositeKeyValPojo.class));
+        view.put(null, new CompositeKeyKeyPojo(1), new CompositeKeyValPojo(1));
+        view.put(null, new CompositeKeyKeyPojo(2), new CompositeKeyValPojo(2));
+
+        CompletableFuture<Void> streamerFut;
+
+        try (var publisher = new 
SubmissionPublisher<DataStreamerItem<Map.Entry<CompositeKeyKeyPojo, 
CompositeKeyValPojo>>>()) {

Review Comment:
   This line exceeds the project's line length limit of 140 characters. 
Consider breaking the generic type declaration:
   
   ```java
   try (var publisher = new SubmissionPublisher<
           DataStreamerItem<Map.Entry<CompositeKeyKeyPojo, 
CompositeKeyValPojo>>>()) {
   ```
   ```suggestion
           try (var publisher = new SubmissionPublisher<
                   DataStreamerItem<
                       Map.Entry<CompositeKeyKeyPojo, CompositeKeyValPojo>
                   >
               >()) {
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to