avijayanhwx commented on a change in pull request #714: HDDS-3164. Add Recon 
endpoint to serve missing containers and its metadata.
URL: https://github.com/apache/hadoop-ozone/pull/714#discussion_r397476365
 
 

 ##########
 File path: 
hadoop-ozone/recon/src/test/java/org/apache/hadoop/ozone/recon/api/TestContainerEndpoint.java
 ##########
 @@ -350,24 +407,52 @@ public void testGetContainersWithPrevKey() {
     assertEquals(1L, containerMetadata.getContainerID());
 
     // test for negative cases
-    response = containerKeyService.getContainers(-1, 5L);
+    response = containerEndpoint.getContainers(-1, 5L);
     responseObject = (ContainersResponse) response.getEntity();
     data = responseObject.getContainersResponseData();
     containers = new ArrayList<>(data.getContainers());
     assertEquals(0, containers.size());
     assertEquals(2, data.getTotalCount());
 
-    response = containerKeyService.getContainers(-1, -1L);
+    response = containerEndpoint.getContainers(-1, -1L);
     responseObject = (ContainersResponse) response.getEntity();
     data = responseObject.getContainersResponseData();
     containers = new ArrayList<>(data.getContainers());
     assertEquals(2, containers.size());
     assertEquals(2, data.getTotalCount());
   }
 
+  @Test
+  public void testGetMissingContainers() {
+    Response response = containerEndpoint.getMissingContainers();
+
+    MissingContainersResponse responseObject =
+        (MissingContainersResponse) response.getEntity();
+
+    assertEquals(0, responseObject.getTotalCount());
+    assertEquals(Collections.EMPTY_LIST, responseObject.getContainers());
+
+    // Add missing containers to the database
+    long missingSince = System.currentTimeMillis();
+    MissingContainers newRecord =
+        new MissingContainers(1L, missingSince);
+    missingContainersDao.insert(newRecord);
+
+    response = containerEndpoint.getMissingContainers();
+    responseObject = (MissingContainersResponse) response.getEntity();
+    assertEquals(1, responseObject.getTotalCount());
+    MissingContainerMetadata container =
+        responseObject.getContainers().stream().findFirst().orElse(null);
+    Assert.assertNotNull(container);
+
+    assertEquals(containerID.getId(), container.getContainerID());
+    assertEquals(keyCount, container.getKeys());
+    assertEquals(pipelineID.getId(), container.getPipelineID());
+    assertEquals(0, container.getDatanodes().size());
+    assertTrue(System.currentTimeMillis() > container.getMissingSince());
 
 Review comment:
   Why not do assertEquals check with "missingSince" ? 

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: ozone-issues-h...@hadoop.apache.org

Reply via email to