-
Notifications
You must be signed in to change notification settings - Fork 1
Error Codes
This page describes the error codes emitted by dyna4JDBC driver.
NOTE: The documentation is still in progress
This document uses the following terms while explaining possible error codes emitted:
- Client: the Java application, which uses dyna4JDBC to execute user scripts
- User script: a string passed by the client to the driver for execution
- Script Engine: an implementation of
javax.script.ScriptEngine
Java API, which allows the execution of User scripts - Process Runner: A component of dyna4JDBC driver, which allows console-oriented applications to be called via the JDBC API and their output to be processed as Java JDBC Result Sets.
- Script executor: a Script Engine or the dyna4JDBC Process Runner component
This is a warning message indicating that the execution of the statement was aborted by the client.
The client application called java.sql.Statement#cancel() while the statement was still being executed.
No corrective action needed. If required, re-run the statement without calling java.sql.Statement#cancel()
The execution of the user script raised an exception during processing.
The JDBC driver received an Exception from the underlying Script Executor
Examine the stack trace of the exception to understand the cause. Ensure that there are no syntax errors in the user script the client application does not truncate or split the user script at semicolons (as normal with some interactive SQL tools, which assume semicolon to be statement separator) the underlying Script Executor is operational (all required runtime dependencies are present etc)
The Script Engine specified in the URL cannot be loaded: the Script Engine is either not found or could not initialize properly.
The system call javax.script.ScriptEngineManager#getEngineByName(String) returned null, indicating that the specified Script Engine could not be loaded.
Check if the Script Engine name is correct. Examine application logs, standard output and standard error messages for any detailed description of the error Ensure that all the necessary Java libraries (JAR files etc.) are added to the classpath if native libraries are used by the ScriptEngine, all the necessary native libraries (.dll, .so etc.) are added to the system PATH or the library path of the host JVM if native libraries are used by the ScriptEngine, bitness (32bit/64bit), platform and system library versions (gcc etc.) of the native libraries match and are compatible with that of the host JVM, and readable by the process
The init script file defined in the connection configuration could not be read
The driver attempted to read the file containing the init script to execute the initialization for the connection, however attempting to read the path specified in the configuration failed due to an I/O error.
Ensure the init script file exists and is readable for the host JVM process or try to remove the init script reference from the connection configuration.
The execution of the init script file defined in the connection configuration failed.
The driver started the execution of the init script, which in turn failed with an exception.
ensure the init script is syntactically correct and can be executed.
The operation failed due to a required library or other resource not being available.
Most likely, this error is caused by a library not properly being added to the connection definition as classpath. (Some JAR file is missing from the classpath).
ensure all external resources required for the connection are properly added to the classpath of the connection. Use classpath
setting of the connection to add all the required JAR files to the classpath of the connection .
See Configuration Parameters for details.
The requested JDBC operation is not supported by the driver.
The JDBC driver does not implement the feature / operation the client attempted to call or use (e.g JDBC method call, certain settings etc).
Abstain from calling or using the operation or feature mentioned in the error message Configure the client application so that it does not invoke or attempt to use the feature (e.g. transactional connections) described in the error message. If there is no viable work-around available, please file a feature request via the dyna4JDBC issue tracker.
The attempt to retrieve the value as the specified type failed due to a conversion error.
The value could not be converted to the requested type.
Ensure that the client application calls the appropriate method for retrieving the data. (if applicable) the correct type is defined in the formatting header by the user script
The specified javax.script.ScriptEngine implementation is not standard compliant, hence the interaction attempt made by dyna4JDBC JDBC driver failed.
The specified javax.script.ScriptEngine implementation does not implement certain standard features required to interact with dyna4JDBC JDBC driver.
Use an alternative javax.script.ScriptEngine implementation, which is standard compliant.
The Node.js integration subsystem encountered an error.
Either launching the node
process failed or the execution of auto-generated Node.js JavaScript scripts used to provide interaction between dyna4jdbc and the external Node.js process failed (writes to process standard error are assumed to be an error).
Examine the detailed error message for a detailed explanation of the error.
Ensure Node.js is installed properly and the node
executable is added to the system path (can be launched without specifying installation directory).
Examine warnings emitted to the JDBC statement / connection.
Upgrade to the latest version of dyna4jdbc driver
The user script has written to its standard output from within an update statement.
Since update statements can not return any kind of result set, update operations are not allowed to emit anything to the standard output so as to prevent potential data loss. A user script attempting to write to the standard output stream immediately raises this error
Ensure that the user script does not emit anything to the standard output from an update call, or use methods java.sql.Statement#executeQuery(String java.sql.Statement#execute(String sql)) to retrieve script output as a Result Set.
The operation could not be performed due to an incorrect configuration supplied by the client.
The client supplied incorrect or invalid configuration in either the connection URL or the connection properties, which cannot be properly interpreted.
Examine the detailed error message and correct the configuration passed to the driver.
The client application invoked java.sql.Statement#cancel
, which failed.
There statement is either finished at the time cancel()
is called on it,
or cancel()
has been invoked on the statement previously.
Examine the error message for details. Ensure java.sql.Statement#cancel
is not called multiple times. Ignore if the statement had been intended to be cancelled, but it finished in the meanwhile.
There is not enough memory allocated to the Java process to complete the requested operation.
The Java Virtual Machine reported that it cannot allocate enough memory by throwing an OutOfMemoryError
.
-
) If there is any, try increasing the memory limit of the Java process.
-
) If a
scriptengine
connection type is used and this error is thrown on executing a User script, try rewriting the User script so that less memory is used.
The dyna4JDBC JDBC driver received an unexpected error, which could not be translated to an appropriate JDBC error (SQLException).
An ScriptEngine throwing an unexpected exception or an unexpected error condition within dyna4JDBC JDBC driver.
- ) If a ScriptEngine is used for the connection, upgrade the ScriptEngine to the latest possible version.
- ) Upgrade to the latest version of dyna4JDBC JDBC driver. If the latest version version is used, submit a bug report ticket to dyna4JDBC issue tracker.
- ) Retry the failed operation.
The dyna4JDBC JDBC driver encountered an unexpected internal error condition, which is likely to be caused by a bug.
An unexpected error condition within dyna4JDBC JDBC driver.
Upgrade to the latest version of the driver. If the latest version version is used, submit a bug report ticket to dyna4JDBC issue tracker.