You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2019/08/31 15:00:59 UTC

[archiva] branch master updated: Improving error handling and log for repository scan

This is an automated email from the ASF dual-hosted git repository.

martin_s pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/archiva.git


The following commit(s) were added to refs/heads/master by this push:
     new 3d2006a  Improving error handling and log for repository scan
3d2006a is described below

commit 3d2006a317512a19f96d6537035fb6d1ae261698
Author: Martin Stockhammer <ma...@apache.org>
AuthorDate: Sat Aug 31 17:00:40 2019 +0200

    Improving error handling and log for repository scan
---
 .../archiva/repository/scanner/DefaultRepositoryScanner.java  |  2 +-
 .../archiva/repository/scanner/RepositoryScannerInstance.java | 11 +++++++++--
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java
index 30abcb4..8d33daf 100644
--- a/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java
+++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/DefaultRepositoryScanner.java
@@ -141,7 +141,7 @@ public class DefaultRepositoryScanner
             stats.setKnownConsumers( gatherIds( knownContentConsumers ) );
             stats.setInvalidConsumers( gatherIds( invalidContentConsumers ) );
         } catch (IOException e) {
-            log.error("Could not scan directory {}", repositoryBase);
+            log.error("Could not scan directory {}: {}", repositoryBase, e.getMessage(), e);
         } finally
         {
             inProgressScans.remove( scannerInstance );
diff --git a/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java
index 425a4c5..b862f7f 100644
--- a/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java
+++ b/archiva-modules/archiva-base/archiva-repository-scanner/src/main/java/org/apache/archiva/repository/scanner/RepositoryScannerInstance.java
@@ -258,8 +258,15 @@ public class RepositoryScannerInstance
     @Override
     public FileVisitResult visitFileFailed(Path file, IOException exc) throws IOException {
         log.error("Error occured at {}: {}", file, exc.getMessage(), exc);
-        if (basePath!=null && Files.isSameFile(file, basePath)) {
-            finishWalk();
+        try
+        {
+            if ( basePath != null && Files.isSameFile( file, basePath ) )
+            {
+                log.debug( "Finishing walk from visitFileFailed" );
+                finishWalk( );
+            }
+        } catch (Throwable e) {
+            log.error( "Error during visitFileFailed handling: {}", e.getMessage( ), e );
         }
         return FileVisitResult.CONTINUE;
     }