ayushtkn commented on PR #3853:
URL: https://github.com/apache/ozone/pull/3853#issuecomment-1283981164

   >So, lets investigate in a separate JIRA item as it is highly unlikely and 
unrealistic that a client would set a value less than equal to 3 and also this 
may be our test case problem as well and not the actual problem, I have created 
a new JIRA to track this: https://issues.apache.org/jira/browse/HDDS-7360
   
   Makes sense, we can investigate further on a different Jira,
   
   Just to clear it isn't a `Test-Only` issue. It is bug in the prod code. The 
listStatusRoot behaves differently than the regular listStatus. So that is most 
probably the reason for the failure of the 2nd case.
   
   Moreover `3` isn't as much a magic number, it is because of the number of 
volumes, If you create more volumes the tests will fail with higher page size 
as well.
   ex:
   ```
   diff --git 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestRootedOzoneFileSystem.java
 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestRootedOzoneFileSystem.java
   index 96ac47f06..1946e60fb 100644
   --- 
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestRootedOzoneFileSystem.java
   +++ 
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/fs/ozone/TestRootedOzoneFileSystem.java
   @@ -101,6 +101,8 @@
    import static org.apache.hadoop.fs.FileSystem.TRASH_PREFIX;
    import static org.apache.hadoop.fs.ozone.Constants.LISTING_PAGE_SIZE;
    import static org.apache.hadoop.ozone.OzoneAcl.AclScope.ACCESS;
   +import static 
org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_CLIENT_FS_LISTING_PAGE_SIZE;
   +import static 
org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_CLIENT_FS_LISTING_PAGE_SIZE_DEFAULT;
    import static 
org.apache.hadoop.ozone.OzoneConfigKeys.OZONE_FS_ITERATE_BATCH_SIZE;
    import static org.apache.hadoop.ozone.OzoneConsts.OZONE_URI_DELIMITER;
    import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ADDRESS_KEY;
   @@ -184,8 +186,6 @@ public static Path getBucketPath() {
        return bucketPath;
      }
    
   -  @Rule
   -  public Timeout globalTimeout = Timeout.seconds(300);
    
      private static boolean enabledFileSystemPaths;
      private static boolean omRatisEnabled;
   @@ -217,6 +217,7 @@ public static Path getBucketPath() {
      public static void initClusterAndEnv() throws IOException,
          InterruptedException, TimeoutException {
        conf = new OzoneConfiguration();
   +    conf.setInt(OZONE_CLIENT_FS_LISTING_PAGE_SIZE, 50);
        conf.setFloat(OMConfigKeys.OZONE_FS_TRASH_INTERVAL_KEY, TRASH_INTERVAL);
        conf.setFloat(FS_TRASH_INTERVAL_KEY, TRASH_INTERVAL);
        conf.setFloat(FS_TRASH_CHECKPOINT_INTERVAL_KEY, TRASH_INTERVAL / 2);
   @@ -1084,6 +1085,9 @@ private void listStatusCheckHelper(Path path) throws 
IOException {
      public void testListStatusRootAndVolumeRecursive() throws IOException {
        Path bucketPath1 = createRandomVolumeBucketWithDirs();
        Path bucketPath2 = createRandomVolumeBucketWithDirs();
   +    for(int i=0;i<55;i++) {
   +      createRandomVolumeBucketWithDirs();
   +    }
        // listStatus("/volume/bucket")
        listStatusCheckHelper(bucketPath1);
        // listStatus("/volume")
   
   ```
   Run this and it will fail with 50 as well.
   
   Regarding the 1st one the Client getting Hanged, yep may be nobody will do 
that, but better when you chase the new jira have a validation to not allow a 
value which looks genuine but leads to issues...
   
   The 2nd issue I feel is independent of this PR, 1st one is exposed by this 
PR but can say not a prod use case & can be chased separately in the new Jira.
   
   Rest changes LGTM. Leaving for others to have the final look & commit. Thanx 
Everyone!!!


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to