Error Messages
Woori DB has a variety of Error messages, from WQL when parsing the transaction or the query to some internal database errors. Here are listed expected messages:
WooriDB Errors:
Example errors as response:
#![allow(unused)] fn main() { ( error_type: "CheckNonEncryptedKeys", error_message: "CHECK can only verify encrypted keys: [\"ssn\"]", ) }
Error types:
Io(io::Error)- Failed to read or write file.QueryFormat(String)- WQL error.EntityAlreadyCreated(<entity_name>)- Entityentity_namealready created in the database.EntityNotCreated(<entity_name>)- tx or query at entity tree does not contain keyentity_name.EntityNotCreatedWithUniqueness(<entity_name>)- this error only occurs if a failed write to the bank happened. Migration to fix data inconsistency may be needed.Serialization(ron::Error)- Ron serialization error in wql context.UuidNotCreatedForEntity(<entity_name>, Uuid)- If you try toUPDATE/DELETE/EVICT/SELECTan Uuid thatentity_namedoes not contain.FailedToParseState- Failed to read log file state/entity map.FailedToParseRegistry- Failed to read log file registry informationUnknownCondition-MATCH UPDATEhas an unknown condition (==,>=,<, etc).FailedMatchCondition-MATCH UPDATEinternal service error while processing conditions.DuplicatedUnique(<entity_name>, <entity_map_key>, Types)- This means thatTypesis already present atentity_map_keyfor entity treeentity_name.SelectBadRequest- Select operation done at/wql/tx. Select operations are done at/wql/query.NonSelectQuery- Tx operation done at/wql/query. Tx operations are done at/wql/tx.ActixMailbox(MailboxError)- Internal server error meaning that some actor mailbox crashed.LockData- Failed to get a lock on DataRon(ron::Error)- Ron serialization error that occurred in user creation.InvalidUuid(uuid::Error)- Uuid could not be parsed.UpdateContentEncryptKeys(Vec<keys>)-UPDATE CONTENTcannot update encryptedkeys.CheckNonEncryptedKeys(Vec<keys>)- CannotCHECKnon encryptedkeys.DateTimeParse(chrono::ParseError)- failed to parse inputDateTime<UTC>.FailedToParseDate- failed to parse log file saved date.AdminNotConfigured- Admin is not configured at release mode, please check auth section for more info.AuthBadRequest- Authentication & Authorization error.FailedToCreateUser- Failed to create new user.Unknown- Unknown error.KeyTxTimeNotAllowed- the keytx_timeis not allowed in entities map for inserts and updates.
WQL Parsing
-
Query symbol error:- "Symbol
{symbol_name}not implemented". Symbol name are the start of the query, likeSELECT, CHECK, CREATE, ISNERT.
- "Symbol
-
Keyword error:CREATE: Keyword ENTITY is required for CREATE"- "Correct wording is ENCRYPT" for
CREATE ENTITY ENCRYPT - "Correct wording is UNIQUES" for
CREATE ENTITY UNIQUES.
- "Correct wording is ENCRYPT" for
UPDATE: "UPDATE type is required after entity. Keywords are SET or CONTENT"- "Keyword INTO is required for UPDATE"
- "Keyword INTO is required for MATCH UPDATE"
- "UPDATE keyword is required for MATCH UPDATE"
- "MATCH UPDATE type is required after entity. Keyword is SET". Use
SETas update type inMATCH.
SELECT/CHECK: "Keyword FROM is required for CHECK"- "Keyword FROM is required for SELECT"
- "WHEN not allowed after IDS IN"
- "Keyword AT is required after WHEN"
- "Keyword IN is required after IDS to define a set of uuids"
- "Keyword ID/IDS is required to set an uuid in SELECT".
EVICT/DELETE/INSERT: "Keyword FROM is required for DELETE"- "Keyword INTO is required for INSERT"
- "Keyword FROM is required to EVICT an UUID".
-
Argument format error:- "Arguments set should start with
#{and end with}" - "Entity map should start with
{and end with}" occurs mostly withINSERT and UPDATE. - "Field ID must be a UUID v4"
SELECT: "Encrypted arguments cannot be set to UNIQUE"- "SELECT expression should be followed by
*for ALL keys or#{key_names...}for some keys" and "SELECT arguments set should start with#{and end with}" - "Uuids in
IDS INare reuired to be inside a#{and}" - "START date and END date should be the same date."
- "WHERE clauses must be contained inside
{...}"
- "SELECT expression should be followed by
- "Arguments set should start with
-
Required content:- "MATCH requires ALL or ANY symbols". It is necessary to include
ANYorALLconditions afterMATCHkeyword. - "Entity UUID is required for DELETE"
Entity name:- "Entity name is required after FROM"
- "Entity name is required for SELECT"
- "Entity name is required after INTO"
- "Entity name is required for UPDATE"
- "Entity name is required for EVICT"
- "Entity name is required for MATCH UPDATE"
- "MATCH requires ALL or ANY symbols". It is necessary to include
-
Parse error:- "Couldn't create uuid from {some-text}. Error: {Uuid::Error}"
- "Couldn't parse UPDATE query".
SETorCONTENTwere not found afterUPDATE - "Couldn't parse MATCH UPDATE query"
- "Entity name cannot contain
-". Entity name should contain only alphanumeric and_chars. - "Key must be an alphanumeric value" or contain
_. - "Hash cannot be hashed" and "Nil cannot be hashed".
Types::HashandTypes::Nilcannot be hashed. - "Not able to parse match argument". Match condition has wrong argument type.
- "Unidentified Match Condition". Could not identify match condition.
- "Entity HashMap could not be created"
- "Value Type could not be created from {some value}". Could not create
Typesfromsome value. - "WHERE clause cannot be empty"