containerAnalyzer edited a comment on pull request #3164: URL: https://github.com/apache/hadoop/pull/3164#issuecomment-875728419
This is another NPE occurring in DumpS3GuardDynamoTable.java. The patch has been submitted. 1. Return **null** to caller https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DynamoDBMetadataStore.java#L863 2. Return the return value of function **getDirListingMetadataFromDirMetaAndList** to caller https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DynamoDBMetadataStore.java#L844-L845 3. Function **listChildren** executes and returns the **null** value, which is added to the list **childMD**. https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DumpS3GuardDynamoTable.java#L419-L420 4. The value **childMD** is passed as the 2nd parameter of **pushAll**, and it contains **null** value. https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DumpS3GuardDynamoTable.java#L422 5. The list **reversed** contains the **null** value after being assigned by the return value of the function **reverse**. https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DumpS3GuardDynamoTable.java#L268 6. The return value of function **iterator** is passed as the **this** pointer to function **hasNext** (the return value of function **iterator** can be **null**), which will leak to null pointer dereference https://github.com/apache/hadoop/blob/986d0a4f1d5543fa0b4f5916729728f78b4acec9/hadoop-tools/hadoop-aws/src/main/java/org/apache/hadoop/fs/s3a/s3guard/DumpS3GuardDynamoTable.java#L269 Commit: 986d0a4f1d5543fa0b4f5916729728f78b4acec9 ContainerAnalyzer -- 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]
