You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2017/08/14 05:05:14 UTC
svn commit: r1804951 - in /jackrabbit/oak/trunk:
oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java
oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java
Author: chetanm
Date: Mon Aug 14 05:05:14 2017
New Revision: 1804951
URL: http://svn.apache.org/viewvc?rev=1804951&view=rev
Log:
OAK-6552 - Dump index command should fallback to dumping NodeState incase of error
Modified:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java?rev=1804951&r1=1804950&r2=1804951&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryUtils.java Mon Aug 14 05:05:14 2017
@@ -61,7 +61,7 @@ public class DirectoryUtils {
return totalFileSize;
}
- static File createIndexDir(File baseDir, String indexPath) throws IOException {
+ public static File createIndexDir(File baseDir, String indexPath) throws IOException {
String subDirPath = IndexRootDirectory.getIndexFolderBaseName(indexPath);
IndexRootDirectory rootDir = new IndexRootDirectory(baseDir, false);
List<LocalIndexDir> existingDirs = rootDir.getLocalIndexes(indexPath);
Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java?rev=1804951&r1=1804950&r2=1804951&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDumper.java Mon Aug 14 05:05:14 2017
@@ -24,6 +24,8 @@ import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.apache.jackrabbit.oak.commons.IOUtils;
+import org.apache.jackrabbit.oak.exporter.NodeStateSerializer;
+import org.apache.jackrabbit.oak.plugins.index.lucene.directory.DirectoryUtils;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.LuceneIndexDumper;
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.apache.jackrabbit.oak.spi.state.NodeStateUtils;
@@ -61,6 +63,18 @@ public class IndexDumper {
} catch (Exception e){
System.out.printf("Error occurred while performing consistency check for index [%s]%n", indexPath);
e.printStackTrace(System.out);
+ try {
+ File indexDir = DirectoryUtils.createIndexDir(indexDumpDir, indexPath);
+ NodeStateSerializer serializer = new NodeStateSerializer(root);
+ serializer.setPath(indexPath);
+ serializer.setSerializeBlobContent(true);
+ serializer.serialize(indexDir);
+ System.out.printf(" - Dumping raw node content%n", indexPath, FileUtils.sizeOf(indexDir));
+ System.out.printf(" - %s (%s)%n", indexPath, FileUtils.sizeOf(indexDir));
+ } catch (Exception e2){
+ System.out.printf("Error occurred while performing consistency check for index [%s]%n", indexPath);
+ e2.printStackTrace(System.out);
+ }
}
indexCount++;