Package org.apache.accumulo.minicluster
Class MiniAccumuloCluster
java.lang.Object
org.apache.accumulo.minicluster.MiniAccumuloCluster
- All Implemented Interfaces:
AutoCloseable
A utility class that will create Zookeeper and Accumulo processes that write all of their data to
a single local directory. This class makes it easy to test code against a real Accumulo instance.
The use of this utility will yield results which closely match a normal Accumulo instance.
- Since:
- 1.5.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()createAccumuloClient(String user, AuthenticationToken token) Utility method to create anAccumuloClientwith connection to the MAC.Deprecated.static PropertiesgetClientProperties(File directory) Construct clientPropertiesusing aMiniAccumuloClusterdirectorygetConnector(String user, String passwd) Deprecated.since 2.0.0, replaced bycreateAccumuloClient(String, AuthenticationToken)Set<org.apache.accumulo.core.util.Pair<ServerType,Integer>> voidstart()Starts Accumulo and Zookeeper processes.voidstop()Stops Accumulo and Zookeeper processes.
-
Constructor Details
-
MiniAccumuloCluster
- Parameters:
dir- An empty or nonexistent temp directory that Accumulo and Zookeeper can store data in. Creating the directory is left to the user. Java 7, Guava, and Junit provide methods for creating temporary directories.rootPassword- Initial root password for instance.- Throws:
IOException
-
MiniAccumuloCluster
- Parameters:
config- initial configuration- Throws:
IOException
-
-
Method Details
-
start
Starts Accumulo and Zookeeper processes. Can only be called once.- Throws:
IOExceptionInterruptedException
-
getDebugPorts
- Returns:
- generated remote debug ports if in debug mode.
- Since:
- 1.6.0
-
getInstanceName
- Returns:
- Accumulo instance name
-
getZooKeepers
- Returns:
- zookeeper connection string
-
stop
Stops Accumulo and Zookeeper processes. If stop is not called, there is a shutdown hook that is setup to kill the processes. However its probably best to call stop in a finally block as soon as possible.- Throws:
IOExceptionInterruptedException
-
close
- Specified by:
closein interfaceAutoCloseable- Throws:
IOException- Since:
- 2.0.1
-
getConfig
- Since:
- 1.6.0
-
getConnector
@Deprecated(since="2.0.0") public Connector getConnector(String user, String passwd) throws AccumuloException, AccumuloSecurityException Deprecated.since 2.0.0, replaced bycreateAccumuloClient(String, AuthenticationToken)Utility method to get a connector to the MAC.- Throws:
AccumuloExceptionAccumuloSecurityException- Since:
- 1.6.0
-
createAccumuloClient
Utility method to create anAccumuloClientwith connection to the MAC. The AccumuloClient object should be closed by user- Since:
- 2.0.0
-
getClientConfig
Deprecated.since 2.0.0, replaced bygetClientProperties()- Since:
- 1.6.0
-
getClientProperties
- Returns:
- A copy of the connection properties for the cluster
- Since:
- 2.0.0
-
getClientProperties
Construct clientPropertiesusing aMiniAccumuloClusterdirectory- Parameters:
directory- MiniAccumuloCluster directory- Returns:
Propertiesfor that directory- Since:
- 2.0.0
-
getClientProperties()