adoroszlai opened a new pull request, #1396:
URL: https://github.com/apache/ratis/pull/1396

   ## What changes were proposed in this pull request?
   
   Even if there are findbugs failures, `summary.txt` is [not 
created](https://github.com/apache/ratis/actions/runs/23635751630/job/68844523643?pr=1391#step:13:18):
   
   ```
   No files were found with the provided path: target/findbugs
   ```
   
   because Spotbugs CLI commands (required for post-processing output created 
by Maven run) are not available in GitHub.
   
   Install Spotbugs in subdirectory of `.dev-tools` (installation script taken 
from Ozone, where it has been in use for few years).
   
   https://issues.apache.org/jira/browse/RATIS-2454
   
   ## How was this patch tested?
   
   Current state (without violations):
   
   ```
   $ ./dev-support/checks/findbugs.sh
   mkdir: created directory '.dev-tools'
   mkdir: created directory '.dev-tools/spotbugs'
   ...
   Installed spotbugs in .dev-tools/spotbugs
   ...
   [INFO] BUILD SUCCESS
   ...
   
   $ echo $?
   0
   
   $ ls -1s target/findbugs
   total 448
     4 failures
    68 output.log
   236 summary.html
     0 summary.txt
   140 summary.xml
   
   $ cat target/findbugs/failures
   0
   ```
   
   With some violations introduced temporarily:
   
   ```
   $ git revert --no-commit eb465d56
   $ git reset HEAD -- ratis-server/dev-support/findbugsExcludeFile.xml
   $ git checkout -- ratis-server/dev-support/findbugsExcludeFile.xml
   
   $ ./dev-support/checks/findbugs.sh
   ...
   [INFO] BUILD SUCCESS
   ...
   
   $ echo $?
   1
   
   $ ls -1s target/findbugs                                          
   total 464
     4 failures
    68 output.log
   240 summary.html
     4 summary.txt
   148 summary.xml
   
   $ cat target/findbugs/failures
   0
   
   $ cat target/findbugs/summary.txt 
   M B CT: Exception thrown in class 
org.apache.ratis.server.impl.LeaderElection at new 
org.apache.ratis.server.impl.LeaderElection(LeaderElection$ServerInterface, 
boolean) will leave the constructor. The object under construction remains 
partially initialized and may be vulnerable to Finalizer attacks.  At 
LeaderElection.java:[line 324]
   M B CT: Exception thrown in class 
org.apache.ratis.server.impl.LeaderElection at new 
org.apache.ratis.server.impl.LeaderElection(RaftServerImpl, boolean) will leave 
the constructor. The object under construction remains partially initialized 
and may be vulnerable to Finalizer attacks.  At LeaderElection.java:[line 310]
   M B CT: Exception thrown in class 
org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogReader at new 
org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogReader(File, 
SizeInBytes, SegmentedRaftLogMetrics) will leave the constructor. The object 
under construction remains partially initialized and may be vulnerable to 
Finalizer attacks.  At SegmentedRaftLogReader.java:[line 155]
   M B CT: Exception thrown in class 
org.apache.ratis.server.storage.FileChunkReader at new 
org.apache.ratis.server.storage.FileChunkReader(FileInfo, Path) will leave the 
constructor. The object under construction remains partially initialized and 
may be vulnerable to Finalizer attacks.  At FileChunkReader.java:[line 60]
   ```
   
   CI:
   https://github.com/adoroszlai/ratis/actions/runs/23641934315


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

Reply via email to