org.h2.mvstore
Class MVStoreTool

java.lang.Object
  extended by org.h2.mvstore.MVStoreTool

public class MVStoreTool
extends java.lang.Object

Utility methods used in combination with the MVStore.


Constructor Summary
MVStoreTool()
           
 
Method Summary
static void compact(MVStore source, MVStore target)
          Copy all live pages from the source store to the target store.
static void compact(java.lang.String fileName, boolean compress)
          Compress the store by creating a new file and copying the live pages there.
static void compact(java.lang.String sourceFileName, java.lang.String targetFileName, boolean compress)
          Copy all live pages from the source store to the target store.
static void compactCleanUp(java.lang.String fileName)
          Clean up if needed, in a case a compact operation was interrupted due to killing the process or a power failure.
static void dump(java.lang.String fileName, boolean details)
          Read the contents of the file and write them to system out.
static void dump(java.lang.String fileName, java.io.Writer writer, boolean details)
          Read the contents of the file and display them in a human-readable format.
static void info(java.lang.String fileName)
          Read the summary information of the file and write them to system out.
static void info(java.lang.String fileName, java.io.Writer writer)
          Read the summary information of the file and write them to system out.
static void main(java.lang.String... args)
          Runs this tool.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MVStoreTool

public MVStoreTool()
Method Detail

main

public static void main(java.lang.String... args)
Runs this tool. Options are case sensitive. Supported options are:
[-dump <fileName>] Dump the contends of the file
[-info <fileName>] Get summary information about a file
[-compact <fileName>] Compact a store
[-compress <fileName>] Compact a store with compression enabled

Parameters:
args - the command line arguments

dump

public static void dump(java.lang.String fileName,
                        boolean details)
Read the contents of the file and write them to system out.

Parameters:
fileName - the name of the file
details - whether to print details

info

public static void info(java.lang.String fileName)
Read the summary information of the file and write them to system out.

Parameters:
fileName - the name of the file

dump

public static void dump(java.lang.String fileName,
                        java.io.Writer writer,
                        boolean details)
Read the contents of the file and display them in a human-readable format.

Parameters:
fileName - the name of the file
writer - the print writer
details - print the page details

info

public static void info(java.lang.String fileName,
                        java.io.Writer writer)
Read the summary information of the file and write them to system out.

Parameters:
fileName - the name of the file
writer - the print writer

compact

public static void compact(java.lang.String fileName,
                           boolean compress)
Compress the store by creating a new file and copying the live pages there. Temporarily, a file with the suffix ".tempFile" is created. This file is then renamed, replacing the original file, if possible. If not, the new file is renamed to ".newFile", then the old file is removed, and the new file is renamed. This might be interrupted, so it's better to compactCleanUp before opening a store, in case this method was used.

Parameters:
fileName - the file name
compress - whether to compress the data

compactCleanUp

public static void compactCleanUp(java.lang.String fileName)
Clean up if needed, in a case a compact operation was interrupted due to killing the process or a power failure. This will delete temporary files (if any), and in case atomic file replacements were not used, rename the new file.

Parameters:
fileName - the file name

compact

public static void compact(java.lang.String sourceFileName,
                           java.lang.String targetFileName,
                           boolean compress)
Copy all live pages from the source store to the target store.

Parameters:
sourceFileName - the name of the source store
targetFileName - the name of the target store
compress - whether to compress the data

compact

public static void compact(MVStore source,
                           MVStore target)
Copy all live pages from the source store to the target store.

Parameters:
source - the source store
target - the target store