8 Appendix A: Mnesia Error Messages
Whenever an operation returns an error in Mnesia, a description
of the error is available. For example, the functions
mnesia:transaction(Fun), or mnesia:create_table(N,L)
may return the tuple {aborted, Reason}, where Reason
is a term describing the error. The following function is used to
retrieve more detailed information about the error:
-
mnesia:error_description(Error)
8.1 Errors in Mnesia
The following is a list of valid errors in Mnesia.
-
badarg. Bad or invalid argument, possibly bad type.
-
no_transaction. Operation not allowed outside transactions.
-
combine_error. Table options were illegally combined.
-
bad_index. Index already exists, or was out of bounds.
-
already_exists. Schema option to be activated is already on.
-
index_exists. Some operations cannot be performed on tables with an index.
-
no_exists.; Tried to perform operation on non-existing (non-alive) item.
-
system_limit.; A system limit was exhausted.
-
mnesia_down. A transaction involves records on a
remote node which became unavailable before the transaction
was completed. Record(s) are no longer available elsewhere in
the network.
-
not_a_db_node. A node was mentioned which does not exist in the schema.
-
bad_type.; Bad type specified in argument.
-
node_not_running. Node is not running.
-
truncated_binary_file. Truncated binary in file.
-
active. Some delete operations require that all active records are removed.
-
illegal. Operation not supported on this record.
The following example illustrates a function which returns an error, and the method to retrieve more detailed error information.
The function mnesia:create_table(bar, [{attributes, 3.14}]) will return the tuple {aborted,Reason}, where Reason is the tuple
{bad_type,bar,3.14000}.
The function mnesia:error_description(Reason), returns the term
{"Bad type on some provided arguments",bar,3.14000} which is an error
description suitable
for display.
mnesia 4.4.5
Copyright © 1991-2008
Ericsson AB