Skip to content

YARN-8246 winutils - fix failure to retrieve disk and network perf co… - #458

Closed
pgoron wants to merge 1 commit into
apache:trunkfrom
pgoron:YARN-8246
Closed

YARN-8246 winutils - fix failure to retrieve disk and network perf co…#458
pgoron wants to merge 1 commit into
apache:trunkfrom
pgoron:YARN-8246

Conversation

@pgoron

Copy link
Copy Markdown

…unters on localized windows installlation.

PdhAddCounter expects performance counter path to be in the same language than the windows installation.
With current code, the calls to PdhAddCounter will fail with error 0xc0000bb8 (PDH_CSTATUS_NO_OBJECT)
on non-english windows installation.

The solution is to use PdhAddEnglishCounter function instead
https://docs.microsoft.com/en-us/windows/desktop/api/pdh/nf-pdh-pdhaddenglishcounterw

"This function provides a language-neutral way to add performance counters to the query"

…unters on localized windows installlation
PdhAddCounter expects performance counter path to be in the same language than the windows installation.
With current code, the calls to PdhAddCounter will fail with error 0xc0000bb8 (PDH_CSTATUS_NO_OBJECT)
on non-english windows installation.
The solution is to use PdhAddEnglishCounter function instead
https://docs.microsoft.com/en-us/windows/desktop/api/pdh/nf-pdh-pdhaddenglishcounterw
"This function provides a language-neutral way to add performance counters to the query"

@jiwqjiwq left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

checkstyle


// Add each one of the counters with wild cards
if(status = PdhAddCounter(hQuery, COUNTER_PATH_NET_READ_ALL, 0, &hCounterNetRead))
if(status = PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_READ_ALL, 0, &hCounterNetRead))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_READ_ALL, 0, &hCounterNetRead))
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_READ_ALL, 0, &hCounterNetRead))

goto cleanup;
}
if(status = PdhAddCounter(hQuery, COUNTER_PATH_NET_WRITE_ALL, 0, &hCounterNetWrite))
if(status = PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_WRITE_ALL, 0, &hCounterNetWrite))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_WRITE_ALL, 0, &hCounterNetWrite))
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_NET_WRITE_ALL, 0, &hCounterNetWrite))

goto cleanup;
}
if(status = PdhAddCounter(hQuery, COUNTER_PATH_DISK_READ_ALL, 0, &hCounterDiskRead))
if(status = PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_READ_ALL, 0, &hCounterDiskRead))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_READ_ALL, 0, &hCounterDiskRead))
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_READ_ALL, 0, &hCounterDiskRead))

goto cleanup;
}
if(status = PdhAddCounter(hQuery, COUNTER_PATH_DISK_WRITE_ALL, 0, &hCounterDiskWrite))
if(status = PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_WRITE_ALL, 0, &hCounterDiskWrite))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_WRITE_ALL, 0, &hCounterDiskWrite))
if(status=PdhAddEnglishCounter(hQuery, COUNTER_PATH_DISK_WRITE_ALL, 0, &hCounterDiskWrite))

@pgoron

Copy link
Copy Markdown
Author

Hi jiwq,

If I do the suggested format change, it will make the formatting inconsistent with the rest of file (there are plenty of "if" not followed by space in the rest of the file).

I would prefer not mixing a functional change with a formatting change.

Peter

@jiwq

jiwq commented Apr 4, 2019

Copy link
Copy Markdown
Member

Hi @pgoron , I'm okay.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec39Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1033trunk passed
+1compile1139trunk passed
+1mvnsite69trunk passed
+1shadedclient2861branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall51the patch passed
+1compile1070the patch passed
+1cc1070the patch passed
+1javac1070the patch passed
+1mvnsite70the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient602patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit518hadoop-common in the patch passed.
+1asflicense42The patch does not generate ASF License warnings.
5370
SubsystemReport/Notes
DockerClient=18.09.8 Server=18.09.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/1/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 949a9fd514dd 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / cd967c7
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/1/testReport/
Max. process+thread count1410 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/1/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec83Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1207trunk passed
+1compile1120trunk passed
+1mvnsite93trunk passed
+1shadedclient3204branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall60the patch passed
+1compile1086the patch passed
+1cc1086the patch passed
+1javac1086the patch passed
+1mvnsite89the patch passed
+1whitespace1The patch has no whitespace issues.
+1shadedclient790patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit568hadoop-common in the patch passed.
+1asflicense47The patch does not generate ASF License warnings.
6054
SubsystemReport/Notes
DockerClient=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/2/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux ad60a2739e67 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / c7c7a88
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/2/testReport/
Max. process+thread count1616 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/2/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec44Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1050trunk passed
+1compile1154trunk passed
+1mvnsite78trunk passed
+1shadedclient2916branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall47the patch passed
+1compile1007the patch passed
+1cc1007the patch passed
+1javac1007the patch passed
+1mvnsite75the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient655patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit571hadoop-common in the patch passed.
+1asflicense46The patch does not generate ASF License warnings.
5468
SubsystemReport/Notes
DockerClient=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/3/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 683c1734c28d 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / c2d00c8
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/3/testReport/
Max. process+thread count1448 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/3/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec125Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1232trunk passed
+1compile1093trunk passed
+1mvnsite80trunk passed
+1shadedclient3164branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall54the patch passed
+1compile1032the patch passed
+1cc1032the patch passed
+1javac1032the patch passed
+1mvnsite76the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient756patch has no errors when building and testing our client artifacts.
_ Other Tests _
-1unit540hadoop-common in the patch failed.
+1asflicense46The patch does not generate ASF License warnings.
5927
ReasonTests
Failed junit testshadoop.security.TestRaceWhenRelogin
SubsystemReport/Notes
DockerClient=18.09.7 Server=18.09.7 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/4/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 324f1d5e5039 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / b0131bc
Default Java1.8.0_212
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/4/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/4/testReport/
Max. process+thread count1342 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/4/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec134Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1380trunk passed
+1compile1202trunk passed
+1mvnsite92trunk passed
+1shadedclient3428branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall47the patch passed
+1compile1012the patch passed
+1cc1012the patch passed
+1javac1012the patch passed
+1mvnsite81the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient717patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit572hadoop-common in the patch passed.
+1asflicense45The patch does not generate ASF License warnings.
6172
SubsystemReport/Notes
DockerClient=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/5/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 722812dc221a 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / e356e4f
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/5/testReport/
Max. process+thread count1347 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/5/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec46Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1071trunk passed
+1compile1107trunk passed
+1mvnsite68trunk passed
+1shadedclient2887branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall48the patch passed
+1compile1094the patch passed
+1cc1094the patch passed
+1javac1094the patch passed
+1mvnsite67the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient611patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit524hadoop-common in the patch passed.
+1asflicense42The patch does not generate ASF License warnings.
5436
SubsystemReport/Notes
DockerClient=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/6/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 7d46abb57989 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 094d736
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/6/testReport/
Max. process+thread count1408 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/6/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec104Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests0The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1447trunk passed
+1compile1437trunk passed
+1mvnsite84trunk passed
+1shadedclient3754branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall56the patch passed
+1compile1061the patch passed
+1cc1061the patch passed
+1javac1061the patch passed
+1mvnsite77the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient757patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit586hadoop-common in the patch passed.
+1asflicense43The patch does not generate ASF License warnings.
6578
SubsystemReport/Notes
DockerClient=19.03.0 Server=19.03.0 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/7/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux dc3cfddd957b 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 69ddb36
Default Java1.8.0_212
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/7/testReport/
Max. process+thread count1686 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/7/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec71Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
-1test4tests1The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+1mvninstall1216trunk passed
+1compile1110trunk passed
+1mvnsite89trunk passed
+1shadedclient3202branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1mvninstall57the patch passed
+1compile1051the patch passed
+1cc1051the patch passed
+1javac1051the patch passed
+1mvnsite75the patch passed
+1whitespace0The patch has no whitespace issues.
+1shadedclient743patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1unit583hadoop-common in the patch passed.
+1asflicense46The patch does not generate ASF License warnings.
5959
SubsystemReport/Notes
DockerClient=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-458/8/artifact/out/Dockerfile
GITHUB PR#458
Optional Testsdupname asflicense compile cc mvnsite javac unit
unameLinux 2892d93cdfe4 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 3329257
Default Java1.8.0_222
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/8/testReport/
Max. process+thread count1344 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/8/console
versionsgit=2.7.4 maven=3.3.9
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec0Docker mode activated.
-1patch11#458 does not apply to trunk. Rebase required? Wrong Branch? See https://wiki.apache.org/hadoop/HowToContribute for help.
SubsystemReport/Notes
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-458/9/console
versionsgit=2.17.1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@asfgitasfgit closed this Sep 3, 2019
shanthoosh pushed a commit to shanthoosh/hadoop that referenced this pull request Oct 15, 2019
…ducer
Refactoring eventhub system producer into common reusable components
1. AsyncSystemProducer : All the system producers that have real async send API with call backs can use this
2. NoFlushAsyncSystemProducer: All the system producers that have real async call back based send API and doesn't provide flush semantics can use this.
The system producers that implement AsyncSystemproducers can be used across Samza and Brooklin.
TODO: AsyncSystemProducer needs to be moved to the api layer so that it can be used across different system producers (i.e. eventhub and kinesis)
Author: Srinivasulu Punuru <spunuru@linkedin.com>
Reviewers: Boris S <boryas@apache.org>
Closesapache#458 from srinipunuru/async-prod.3
@gianlucastrada

Copy link
Copy Markdown

checkstyle

but where I use this function? I've the same problem to start hadoop: ExitCodeException exitCode=1: PdhAddCounter \Network Interface(*)\Bytes Received/Sec failed with 0xc0000bb8 Please help me!

@naseem87

naseem87 commented Feb 13, 2021

Copy link
Copy Markdown

Hello,

@jiwq@pgoron

I have the same error. Where can I download the fixed winutils for hadoop 3.3.0?

Any help will be appreciated!

NyteKnight pushed a commit to NyteKnight/hadoop that referenced this pull request Jun 25, 2024
NyteKnight pushed a commit to NyteKnight/hadoop that referenced this pull request Jun 25, 2024
…-76130 (apache#491)
* Revert "[hadoop] LIHADOOP-76132 : Evolve the BundledTokenIdentifier to include SPIFFE tokens (apache#458)"
This reverts commit e3d76d0.
* Revert "[hadoop] LIHADOOP-76131 : Create the SPIFFE Delegation Token Identifier (apache#456)"
This reverts commit df81929.
* Revert "[hadoop] LIHADOOP-76130: Update BundledDelegationTokenIdentifier to have unambiguous serde (apache#457)"
This reverts commit 902ba08.
singer-bin pushed a commit to singer-bin/hadoop that referenced this pull request Dec 19, 2024
In parquet-format every value in Statistics is optional while parquet-mr does not properly handle these scenarios:
- null_count is set but min/max or min_value/max_value are not: filtering may fail with NPE or incorrect filtering occurs
fix: check if min/max is set before comparing to the related values
- null_count is not set: filtering handles null_count as if it would be 0 -> incorrect filtering may occur
fix: introduce new method in Statistics object to check if num_nulls is set; check if num_nulls is set by the new method before using its value for filtering
Author: Gabor Szadovszky <gabor.szadovszky@cloudera.com>
Closesapache#458 from gszadovszky/PARQUET-1217 and squashes the following commits:
9d14090 [Gabor Szadovszky] Updates according to rdblue's comments
116d1d3 [Gabor Szadovszky] PARQUET-1217: Updates according to zi's comments
c264b50 [Gabor Szadovszky] PARQUET-1217: fix handling of unset nullCount
2ec2fb1 [Gabor Szadovszky] PARQUET-1217: Incorrect handling of missing values in Statistics
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@pgoron@jiwq@hadoop-yetus@gianlucastrada@naseem87@asfgit