public final class H2O
extends java.lang.Object
H2O
Cloud.Modifier and Type | Class and Description |
---|---|
static class |
H2O.AboutEntry |
static class |
H2O.BaseArgs
A class containing all of the authentication arguments for H2O.
|
static class |
H2O.FJWThr |
static class |
H2O.H2OCallback<T extends H2O.H2OCountedCompleter> |
static class |
H2O.H2OCountedCompleter<T extends H2O.H2OCountedCompleter>
Simple wrapper over F/J
CountedCompleter to support priority
queues. |
static class |
H2O.KeyValueArg |
static class |
H2O.OptArgs
A class containing all of the arguments for H2O.
|
static class |
H2O.OptString |
static class |
H2O.RemoteRunnable<T extends H2O.RemoteRunnable> |
Modifier and Type | Field and Description |
---|---|
H2ONode[] |
_memary |
static AbstractBuildVersion |
ABV |
static byte |
ACK_ACK_PRIORITY |
static byte |
ACK_PRIORITY |
static int |
API_PORT |
static H2O.OptArgs |
ARGS
Singleton ARGS instance that contains the processed arguments.
|
static byte |
ATOMIC_PRIORITY |
static H2O |
CLOUD |
static java.net.InetAddress |
CLOUD_MULTICAST_GROUP |
static java.net.NetworkInterface |
CLOUD_MULTICAST_IF |
static int |
CLOUD_MULTICAST_PORT |
static java.net.MulticastSocket |
CLOUD_MULTICAST_SOCKET |
static long |
CLUSTER_ID |
static java.lang.String |
DEFAULT_JKS_PASS |
static byte |
DESERIAL_PRIORITY |
static AbstractEmbeddedH2OConfig |
embeddedH2OConfig |
static byte |
FETCH_ACK_PRIORITY |
static byte |
GET_KEY_PRIORITY |
static java.util.Map<java.lang.Integer,java.lang.Integer> |
GITHUB_DISCUSSIONS |
static byte |
GUI_PRIORITY |
static int |
H2O_DEFAULT_PORT |
static int |
H2O_PORT |
static java.net.URI |
ICE_ROOT |
static byte |
INVALIDATE_PRIORITY |
static int |
LOW_PRIORITY_API_WORK |
static java.lang.String |
LOW_PRIORITY_API_WORK_CLASS |
static byte |
MAX_PRIORITY |
static byte |
MIN_HI_PRIORITY |
static byte |
MIN_PRIORITY |
static int |
NUMCPUS |
static long |
PID |
static byte |
PUT_KEY_PRIORITY |
static H2ONode |
SELF
Myself, as a Node in the Cloud
|
static java.net.InetAddress |
SELF_ADDRESS
IP address of this node used for communication
with other nodes.
|
static java.util.concurrent.atomic.AtomicLong |
START_TIME_MILLIS |
static water.nbhm.NonBlockingHashMap<Key,Value> |
STORE |
Modifier and Type | Method and Description |
---|---|
static void |
addAboutEntry(java.lang.String name,
java.lang.String value) |
static boolean |
addNodeToFlatfile(H2ONode node)
Add node to a manual multicast list.
|
static java.lang.String |
calcNextUniqueModelId(java.lang.String desc)
Calculate a unique model id that includes User-Agent info (if it can be discovered).
|
static java.lang.String |
calcNextUniqueObjectId(java.lang.String type,
java.util.concurrent.atomic.AtomicLong sequenceSource,
java.lang.String desc) |
static boolean |
checkUnsupportedJava(java.lang.String[] args)
Check if the Java version is not supported
|
static void |
closeAll() |
static void |
clusterInitializationFailed()
Use when given arguments are incompatible for cluster to run.
|
static void |
configureLogging() |
static boolean |
containsKey(Key key) |
static void |
decrementActiveRapidsCounter()
Decrement the current number of active Rapids exec calls.
|
static java.lang.String |
DEFAULT_FLOW_DIR() |
static java.lang.String |
DEFAULT_ICE_ROOT() |
static Key<DecryptionTool> |
defaultDecryptionTool() |
static void |
die(java.lang.String s) |
static java.net.URI |
downloadLogs(java.lang.String destinationDir,
LogArchiveContainer logContainer) |
static java.net.URI |
downloadLogs(java.lang.String destinationDir,
java.lang.String logContainer) |
static java.net.URI |
downloadLogs(java.net.URI destinationDir,
LogArchiveContainer logContainer) |
static java.net.URI |
downloadLogs(java.net.URI destinationDir,
java.lang.String logContainer) |
static void |
exit(int status)
Notify embedding software instance H2O wants to exit.
|
static H2OFailException |
fail() |
static H2OFailException |
fail(java.lang.String msg) |
static H2OFailException |
fail(java.lang.String msg,
java.lang.Throwable cause)
H2O.fail is intended to be used in code where something should never happen, and if
it does it's a coding error that needs to be addressed immediately.
|
static void |
finalizeRegistration()
Deprecated.
use starServingRestApi
|
long |
free_mem() |
static void |
gc()
Run System.gc() on every node in the H2O cluster.
|
static java.util.ArrayList<H2O.AboutEntry> |
getAboutEntries() |
static H2ONode |
getClientByIPPort(java.lang.String ipPort) |
static H2ONode[] |
getClients() |
static int |
getCloudSize() |
static AbstractEmbeddedH2OConfig |
getEmbeddedH2OConfig()
Returns an instance of
AbstractEmbeddedH2OConfig . |
static java.util.Set<H2ONode> |
getFlatfile()
Returns a set of nodes which are contacted during manual multi-cast.
|
static long |
getIdleTimeMillis()
Get the number of milliseconds the H2O cluster has been idle.
|
static java.lang.String |
getIpPortString() |
H2ONode |
getNodeByIpPort(java.lang.String ipPort) |
static NodePersistentStorage |
getNPS() |
static PersistManager |
getPM() |
static boolean |
getShutdownRequested() |
static boolean |
getSysBoolProperty(java.lang.String name,
boolean def)
Retrieves a boolean value of an H2O system property.
|
static java.lang.String |
getSysProperty(java.lang.String name,
java.lang.String def)
Retrieves a value of an H2O system property.
|
static java.lang.String |
getURL(java.lang.String schema) |
static java.lang.String |
getURL(java.lang.String schema,
java.net.InetAddress address,
int port,
java.lang.String contextPath) |
static java.lang.String |
getURL(java.lang.String schema,
java.lang.String hostname,
int port,
java.lang.String contextPath) |
static water.webserver.iface.WebServer |
getWebServer() |
static boolean |
haveInheritedLog4jConfiguration() |
boolean |
healthy() |
static void |
incrementActiveRapidsCounter()
Increment the current number of active Rapids exec calls.
|
static boolean |
isFlatfileEnabled()
Check if manual multicast is enabled.
|
static boolean |
isNodeInFlatfile(H2ONode node)
Check if a node is included in a manual multicast list.
|
boolean |
isSingleNode() |
static void |
joinOthers() |
H2ONode |
leader() |
H2ONode |
leaderOrNull() |
static java.util.Set<Key> |
localKeySet() |
static void |
main(java.lang.String[] args) |
H2ONode[] |
members() |
static void |
notifyAboutCloudSize(java.net.InetAddress ip,
int port,
java.net.InetAddress leaderIp,
int leaderPort,
int size)
Tell the embedding software that this H2O instance belongs to
a cloud of a certain size.
|
static int |
orderlyShutdown()
Orderly shutdown with infinite timeout for confirmations from the nodes in the cluster
|
static int |
orderlyShutdown(int timeout) |
static void |
parseFailed(java.lang.String message) |
static H2O.OptArgs |
parseH2OArgumentsTo(java.lang.String[] args,
H2O.OptArgs trgt) |
static void |
printHelp()
Print help about command line arguments.
|
static Value |
putIfMatch(Key key,
Value val,
Value old) |
static void |
raw_clear() |
static void |
raw_remove(Key key) |
static void |
register(java.lang.String method_url,
java.lang.Class<? extends Handler> hclass,
java.lang.String method,
java.lang.String apiName,
java.lang.String summary)
Deprecated.
|
static void |
registerResourceRoot(java.io.File f) |
static boolean |
removeNodeFromFlatfile(H2ONode node)
Remove node from a manual multicast list.
|
static void |
requestShutdown() |
static <T extends H2O.RemoteRunnable> |
runOnH2ONode(T runnable)
Executes a runnable on a regular H2O Node (= not on a client).
|
static <T extends H2O.RemoteRunnable> |
runOnLeaderNode(T runnable) |
static void |
setEmbeddedH2OConfig(AbstractEmbeddedH2OConfig c)
Register embedded H2O configuration object with H2O instance.
|
static void |
setFlatfile(java.util.Set<H2ONode> nodes)
Setup a set of nodes which should be contacted during manual multicast
|
static void |
setWebServer(water.webserver.iface.WebServer value) |
static void |
shutdown(int status)
Cluster shutdown itself by sending a shutdown UDP packet.
|
int |
size() |
static void |
startServingRestApi()
This switch Jetty into accepting mode.
|
static int |
store_size() |
static java.lang.String |
STOREtoString() |
static <T extends H2O.H2OCountedCompleter> |
submitTask(T task) |
static java.lang.String |
technote(int[] numbers,
java.lang.String message)
Return an error message with an accompanying list of URLs to help the user get more detailed information.
|
static java.lang.String |
technote(int number,
java.lang.String message)
Return an error message with an accompanying URL to help the user get more detailed information.
|
java.lang.String |
toString() |
static H2OIllegalArgumentException |
unimpl()
Throw an exception that will cause the request to fail, but the cluster to continue.
|
static H2OIllegalArgumentException |
unimpl(java.lang.String msg)
Throw an exception that will cause the request to fail, but the cluster to continue.
|
static void |
updateNotIdle()
Update the last time that something happened to reset the idle timer.
|
static void |
waitForCloudSize(int x,
long ms) |
public static final java.lang.String DEFAULT_JKS_PASS
public static final int H2O_DEFAULT_PORT
public static final java.util.Map<java.lang.Integer,java.lang.Integer> GITHUB_DISCUSSIONS
public static final H2O.OptArgs ARGS
public static volatile AbstractEmbeddedH2OConfig embeddedH2OConfig
public static final AbstractBuildVersion ABV
public static final java.util.concurrent.atomic.AtomicLong START_TIME_MILLIS
public static final int NUMCPUS
public static final long PID
public static final byte MAX_PRIORITY
public static final byte ACK_ACK_PRIORITY
public static final byte FETCH_ACK_PRIORITY
public static final byte ACK_PRIORITY
public static final byte DESERIAL_PRIORITY
public static final byte INVALIDATE_PRIORITY
public static final byte GET_KEY_PRIORITY
public static final byte PUT_KEY_PRIORITY
public static final byte ATOMIC_PRIORITY
public static final byte GUI_PRIORITY
public static final byte MIN_HI_PRIORITY
public static final byte MIN_PRIORITY
public static int LOW_PRIORITY_API_WORK
public static java.lang.String LOW_PRIORITY_API_WORK_CLASS
public static int H2O_PORT
public static int API_PORT
public static java.net.MulticastSocket CLOUD_MULTICAST_SOCKET
public static java.net.NetworkInterface CLOUD_MULTICAST_IF
public static java.net.InetAddress CLOUD_MULTICAST_GROUP
public static int CLOUD_MULTICAST_PORT
public static H2ONode SELF
public static java.net.InetAddress SELF_ADDRESS
public static java.net.URI ICE_ROOT
public static final long CLUSTER_ID
public static volatile H2O CLOUD
public final H2ONode[] _memary
public static void printHelp()
public static void parseFailed(java.lang.String message)
public static void clusterInitializationFailed()
public static H2O.OptArgs parseH2OArgumentsTo(java.lang.String[] args, H2O.OptArgs trgt)
public static void setEmbeddedH2OConfig(AbstractEmbeddedH2OConfig c)
public static AbstractEmbeddedH2OConfig getEmbeddedH2OConfig()
AbstractEmbeddedH2OConfig
. The origin of the embedded config might be either
from directly setting the embeddedH2OConfig field via setEmbeddedH2OConfig setter, or dynamically provided via
service loader. Directly set AbstractEmbeddedH2OConfig
is always prioritized. ServiceLoader lookup is only
performed if no config is previously set.
Result of first ServiceLoader lookup is also considered final - once a service is found, dynamic lookup is not performed any further.
AbstractEmbeddedH2OConfig
, if set or dynamically provided. Otherwise nullpublic static void notifyAboutCloudSize(java.net.InetAddress ip, int port, java.net.InetAddress leaderIp, int leaderPort, int size)
ip
- IP address this H2O can be reached at.port
- Port this H2O can be reached at (for REST API and browser).size
- Number of H2O instances in the cloud.public static void closeAll()
public static void exit(int status)
status
- H2O's requested process exit value.public static void shutdown(int status)
public static int orderlyShutdown()
public static int orderlyShutdown(int timeout)
public static void requestShutdown()
public static boolean getShutdownRequested()
public static boolean haveInheritedLog4jConfiguration()
public static void configureLogging()
public static void addAboutEntry(java.lang.String name, java.lang.String value)
public static java.util.ArrayList<H2O.AboutEntry> getAboutEntries()
public static java.lang.String calcNextUniqueModelId(java.lang.String desc)
desc
- Model description.public static java.lang.String calcNextUniqueObjectId(java.lang.String type, java.util.concurrent.atomic.AtomicLong sequenceSource, java.lang.String desc)
public static long getIdleTimeMillis()
public static void updateNotIdle()
public static void incrementActiveRapidsCounter()
public static void decrementActiveRapidsCounter()
public static java.lang.String getSysProperty(java.lang.String name, java.lang.String def)
H2O.OptArgs.SYSTEM_PROP_PREFIX
prefix.name
- property namedef
- default valuepublic static boolean getSysBoolProperty(java.lang.String name, boolean def)
H2O.OptArgs.SYSTEM_PROP_PREFIX
prefix.name
- property namedef
- default valuepublic static H2OIllegalArgumentException unimpl()
fail(String, Throwable)
public static H2OIllegalArgumentException unimpl(java.lang.String msg)
unimpl(String)
,
fail(String, Throwable)
public static H2OFailException fail(java.lang.String msg, java.lang.Throwable cause)
It should *not* be used when only the single request should fail, it should *only* be used if the error means that someone needs to go add some code right away.
msg
- Message to Log.fatal()cause
- Optional cause exception to Log.fatal()public static H2OFailException fail()
fail(String, Throwable)
public static H2OFailException fail(java.lang.String msg)
fail(String, Throwable)
public static java.lang.String technote(int number, java.lang.String message)
number
- H2O tech note number.message
- Message to present to the user.public static java.lang.String technote(int[] numbers, java.lang.String message)
numbers
- H2O tech note numbers.message
- Message to present to the user.public static <T extends H2O.H2OCountedCompleter> T submitTask(T task)
public static <T extends H2O.RemoteRunnable> T runOnH2ONode(T runnable)
T
- RemoteRunnablerunnable
- code to be executedpublic static <T extends H2O.RemoteRunnable> T runOnLeaderNode(T runnable)
public static java.lang.String getIpPortString()
public static java.lang.String getURL(java.lang.String schema)
public static java.lang.String getURL(java.lang.String schema, java.net.InetAddress address, int port, java.lang.String contextPath)
public static java.lang.String getURL(java.lang.String schema, java.lang.String hostname, int port, java.lang.String contextPath)
public static java.lang.String DEFAULT_ICE_ROOT()
public static java.lang.String DEFAULT_FLOW_DIR()
public static void setWebServer(water.webserver.iface.WebServer value)
public static water.webserver.iface.WebServer getWebServer()
@Deprecated public static void register(java.lang.String method_url, java.lang.Class<? extends Handler> hclass, java.lang.String method, java.lang.String apiName, java.lang.String summary)
public static void registerResourceRoot(java.io.File f)
@Deprecated public static void finalizeRegistration()
public static void startServingRestApi()
public H2ONode getNodeByIpPort(java.lang.String ipPort)
public final int size()
public boolean isSingleNode()
public final H2ONode leader()
public final H2ONode leaderOrNull()
public java.lang.String toString()
toString
in class java.lang.Object
public H2ONode[] members()
public long free_mem()
public boolean healthy()
public static void waitForCloudSize(int x, long ms)
public static int getCloudSize()
public static void joinOthers()
public static void raw_remove(Key key)
public static void raw_clear()
public static boolean containsKey(Key key)
public static java.util.Set<Key> localKeySet()
public static int store_size()
public static java.lang.String STOREtoString()
public static PersistManager getPM()
public static NodePersistentStorage getNPS()
public static void gc()
public static boolean checkUnsupportedJava(java.lang.String[] args)
public static void main(java.lang.String[] args)
public static void die(java.lang.String s)
public static boolean addNodeToFlatfile(H2ONode node)
node
- H2O nodepublic static boolean removeNodeFromFlatfile(H2ONode node)
node
- H2O nodepublic static boolean isNodeInFlatfile(H2ONode node)
node
- H2O nodepublic static boolean isFlatfileEnabled()
public static void setFlatfile(java.util.Set<H2ONode> nodes)
nodes
- set of H2O nodespublic static java.util.Set<H2ONode> getFlatfile()
public static H2ONode[] getClients()
public static H2ONode getClientByIPPort(java.lang.String ipPort)
public static Key<DecryptionTool> defaultDecryptionTool()
public static java.net.URI downloadLogs(java.net.URI destinationDir, LogArchiveContainer logContainer)
public static java.net.URI downloadLogs(java.net.URI destinationDir, java.lang.String logContainer)
public static java.net.URI downloadLogs(java.lang.String destinationDir, LogArchiveContainer logContainer)
public static java.net.URI downloadLogs(java.lang.String destinationDir, java.lang.String logContainer)