[ 
https://issues.apache.org/jira/browse/YETUS-809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16791768#comment-16791768
 ] 

Allen Wittenauer edited comment on YETUS-809 at 3/13/19 2:44 PM:
-----------------------------------------------------------------

Yeah, that's not going to work so much and it's evident now that for even 
simple installations it's questionable if the current code works correctly. 

The code assumes that "${module}/target/findbugsXml.xml" is the key 
differentiator.  We don't want test-patch to run through a bunch of meaningless 
code paths if that doesn't exist.  However, this also means that children of 
the given module may have problems that are never reported if the parent module 
does not have any JVM byte code.

Currently, I'm thinking the best way forward is to rip out the skipper.  Run 
findbugs as usual, but use find to specifically look for 
"/target/findbugsXml.xml".  If there isn't one found, report it as being 
skipped.  But if one or more are, process them as though the the dirname of 
/target/findbugsXml.xml is a module, regardless of whether it was in the 
CHANGED_MODULES list or provided as a MODULE.

A particular kink in this plan is that apparently find's return code isn't 
every reliable.  On OS X Mojave, find always returns 0, regardless of whether 
or not it found anything.  So it looks like testing the output of find is going 
to be required.  Hooray.

P.S., This likely explains why in some instances in the past Hadoop has failed 
to report findbugs errors that later showed up in qbt reports.  When I have 
noticed them in the past, I just assumed that multiple commits involved 
triggered the problem or, as is usually the case, the committer just ignored 
them.


was (Author: aw):
Yeah, that's not going to work so much and it's evident now that for even 
simple installations it's questionable if the current code works correctly. 

The code assumes that "${module}/target/findbugsXml.xml" is the key 
differentiator.  We don't want test-patch to run through a bunch of meaningless 
code paths if that doesn't exist.  However, this also means that children of 
the given module may have problems that are never reported if the parent module 
does not have any JVM-processed code.

Currently, I'm thinking the best way forward is to rip out the skipper.  Run 
findbugs as usual, but use find to specifically look for 
"/target/findbugsXml.xml".  If there isn't one found, report it as being 
skipped.  But if one or more are, process them as though the the dirname of 
/target/findbugsXml.xml is a module, regardless of whether it was in the 
CHANGED_MODULES list or provided as a MODULE.

P.S., This likely explains why in some instances in the past Hadoop has failed 
to report findbugs errors that later showed up in qbt reports.  When I have 
noticed them in the past, I just assumed that multiple commits involved 
triggered the problem or, as is usually the case, the committer just ignored 
them.

> findbugs isn't finding bugs in qbt-mode
> ---------------------------------------
>
>                 Key: YETUS-809
>                 URL: https://issues.apache.org/jira/browse/YETUS-809
>             Project: Yetus
>          Issue Type: Bug
>          Components: Test Patch
>    Affects Versions: 0.9.0
>            Reporter: Allen Wittenauer
>            Assignee: Allen Wittenauer
>            Priority: Blocker
>             Fix For: 0.10.0
>
>         Attachments: YETUS-809.00.patch
>
>
> In current Yetus master, test-patch stopped reporting findbugs issues when 
> run in qbt mode against the Yetus source tree (there is currently one).  
> Individual patch testing does work, however.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to