220 lines
7.3 KiB
Plaintext
220 lines
7.3 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"\"\"\"\n",
|
|
"This dictionary contains all error codes and descriptions of errors for Secondo server.\n",
|
|
"\"\"\"\n",
|
|
"secondo_errors = {\n",
|
|
"\n",
|
|
"0: \"ERR_NO_ERROR\",\n",
|
|
"1: \"ERR_CMD_NOT_RECOGNIZED\",\n",
|
|
"2: \"ERR_IN_QUERY_EXPR\",\n",
|
|
"3: \"ERR_EXPR_NOT_EVALUABLE\",\n",
|
|
"4: \"ERR_NO_OBJ_CREATED\",\n",
|
|
"5: \"ERR_NO_TYPE_DEFINED\",\n",
|
|
"6: \"ERR_NO_DATABASE_OPEN\",\n",
|
|
"7: \"ERR_DATABASE_OPEN\",\n",
|
|
"701: \"ERR_CREATE_DATABASE\",\n",
|
|
"702: \"ERR_DELETE_DATABASE\",\n",
|
|
"8: \"ERR_UNDEF_OBJ_VALUE\",\n",
|
|
"9: \"ERR_SYNTAX_ERROR\",\n",
|
|
"\n",
|
|
"10: \"ERR_IDENT_USED\",\n",
|
|
"11: \"ERR_IDENT_UNKNOWN_TYPE\",\n",
|
|
"12: \"ERR_IDENT_UNKNOWN_OBJ\",\n",
|
|
"13: \"ERR_EXPR_TYPE_NEQ_OBJ_TYPE\",\n",
|
|
"14: \"ERR_TYPE_NAME_USED_BY_OBJ\",\n",
|
|
"15: \"ERR_IDENT_RESERVED\",\n",
|
|
"16: \"ERR_UPDATE_FOR_DERIVED_OBJ_UNSUPPORTED\",\n",
|
|
"\n",
|
|
"20: \"ERR_TRANSACTION_ACTIVE\",\n",
|
|
"21: \"ERR_NO_TRANSACTION_ACTIVE\",\n",
|
|
"22: \"ERR_BEGIN_TRANSACTION_FAILED\",\n",
|
|
"23: \"ERR_COMMIT_OR_ABORT_FAILED\",\n",
|
|
"24: \"ERR_IN_DEFINITIONS_FILE\",\n",
|
|
"25: \"ERR_IDENT_UNKNOWN_DB_NAME\",\n",
|
|
"26: \"ERR_PROBLEM_IN_WRITING_TO_FILE\",\n",
|
|
"27: \"ERR_DB_NAME_NEQ_IDENT\",\n",
|
|
"28: \"ERR_PROBLEM_IN_READING_FILE\",\n",
|
|
"29: \"ERR_IN_LIST_STRUCTURE_IN_FILE\",\n",
|
|
"\n",
|
|
"30: \"ERR_CMD_NOT_YET_IMPL\",\n",
|
|
"31: \"ERR_CMD_LEVEL_NOT_YET_IMPL\",\n",
|
|
"32: \"ERR_CMD_NOT_IMPL_AT_THIS_LEVEL\",\n",
|
|
"\n",
|
|
"\n",
|
|
"\n",
|
|
"40: \"ERR_IN_TYPE_DEFINITION\",\n",
|
|
"41: \"ERR_NAME_DOUBLY_DEFINED\",\n",
|
|
"42: \"ERR_IN_TYPE_EXPRESSION\",\n",
|
|
" \n",
|
|
"50: \"ERR_IN_OBJ_DEFINITION\",\n",
|
|
"51: \"ERR_OBJ_NAME_DOUBLY_DEFINED\",\n",
|
|
"52: \"ERR_WRONG_TYPE_EXPR_FOR_OBJ\",\n",
|
|
"53: \"ERR_WRONG_LIST_REP_FOR_OBJ\",\n",
|
|
"\n",
|
|
"60: \"ERR_KIND_DOES_NOT_MATCH_TYPE_EXPR\",\n",
|
|
"61: \"ERR_SPECIFIC_KIND_CHECKING_ERROR\",\n",
|
|
"\n",
|
|
"70: \"ERR_IN_VALUELIST_TC_V\",\n",
|
|
"71: \"ERR_SPECIFIC_FOR_TYPE_CONSTRUCTOR\",\n",
|
|
"72: \"ERR_IN_VALUELIST_TC\",\n",
|
|
"73: \"ERR_AT_POS_IN_VALUELIST\",\n",
|
|
"\n",
|
|
"80: \"ERR_IN_SECONDO_PROTOCOL\",\n",
|
|
"81: \"ERR_CONNECTION_TO_SERVER_LOST\",\n",
|
|
"82: \"ERR_IDENT_UNKNOWN_DB_OBJECT\",\n",
|
|
"83: \"ERR_OBJ_NAME_IN_FILE_NEQ_IDENT\",\n",
|
|
"84: \"ERR_IDENT_ALREADY_KNOWN_IN_DB\",\n",
|
|
"85: \"ERR_ALGEBRA_UNKNOWN\",\n",
|
|
"86: \"ERR_IN_FILETRANSFER\",\n",
|
|
"87: \"ERR_INVALID_FILE_NAME\",\n",
|
|
"88: \"ERR_FILE_EXISTS\",\n",
|
|
"89: \"ERR_FILE_NOT_EXISTS\",\n",
|
|
"\n",
|
|
"100: \"ERR_SYSTEM_ERROR\",\n",
|
|
"101: \"ERR_SYSTEM_DIED\",\n",
|
|
"\n",
|
|
"-1: \"ERR_UNKNOWN_RETURN_CODE\",\n",
|
|
"\n",
|
|
"\n",
|
|
"-999: \"E_SMI_BDB\",\n",
|
|
"\n",
|
|
"-1001: \"E_SMI_STARTUP\",\n",
|
|
"-1002: \"E_SMI_SHUTDOWN\",\n",
|
|
"-1003: \"E_SMI_DB_CREATE\",\n",
|
|
"-1004: \"E_SMI_DB_OPEN\",\n",
|
|
"-1005: \"E_SMI_DB_CLOSE\",\n",
|
|
"-1006: \"E_SMI_DB_ERASE\",\n",
|
|
"-1007: \"E_SMI_DB_NOTOPEN\",\n",
|
|
"-1008: \"E_SMI_DB_NOTCLOSED\",\n",
|
|
"-1009: \"E_SMI_DB_INVALIDNAME\",\n",
|
|
"-10010: \"E_SMI_DB_EXISTING\",\n",
|
|
"-10011: \"E_SMI_DB_NOTEXISTING\",\n",
|
|
"-10012: \"E_SMI_DB_LOOKUP\",\n",
|
|
"-10013: \"E_SMI_DB_INSERT_CATALOG\",\n",
|
|
"-10014: \"E_SMI_DB_DELETE_CATALOG\",\n",
|
|
"-10015: \"E_SMI_DB_UPDATE_CATALOG\",\n",
|
|
"-10016: \"E_SMI_DB_NOTFOUND\",\n",
|
|
"-10017: \"E_SMI_DB_NOTLOCKED\",\n",
|
|
"-10018: \"E_SMI_DB_REGISTER\",\n",
|
|
"-10019: \"E_SMI_DB_UNREGISTER\",\n",
|
|
"-10020: \"E_SMI_DB_LOCK\",\n",
|
|
"-10021: \"E_SMI_DB_UNLOCK\",\n",
|
|
"-10022: \"E_SMI_DB_LOCK_DEADLOCK\",\n",
|
|
"\n",
|
|
"-1051: \"E_SMI_TXN_BEGIN\",\n",
|
|
"-1052: \"E_SMI_TXN_COMMIT\",\n",
|
|
"-1053: \"E_SMI_TXN_ABORT\",\n",
|
|
"-1054: \"E_SMI_TXN_RUNNING\",\n",
|
|
"-1055: \"E_SMI_TXN_NOTRUNNING\",\n",
|
|
"\n",
|
|
"-1101: \"E_SMI_CATALOG_LOOKUP\",\n",
|
|
"-1102: \"E_SMI_CATALOG_INSERT\",\n",
|
|
"-1103: \"E_SMI_CATALOG_DELETE\",\n",
|
|
"-1104: \"E_SMI_CATALOG_KEYEXIST\",\n",
|
|
"-1105: \"E_SMI_CATALOG_NOTFOUND\",\n",
|
|
"-1106: \"E_SMI_CATALOG_RENAME\",\n",
|
|
"\n",
|
|
"-1201: \"E_SMI_FILE_INVALIDNAME\",\n",
|
|
"-1202: \"E_SMI_FILE_NOFILEID\",\n",
|
|
"-1203: \"E_SMI_FILE_BADCONTEXT\",\n",
|
|
"-1204: \"E_SMI_FILE_CREATE\",\n",
|
|
"-1205: \"E_SMI_FILE_OPEN\",\n",
|
|
"-1206: \"E_SMI_FILE_CLOSE\",\n",
|
|
"-1207: \"E_SMI_FILE_KEYEXIST\",\n",
|
|
"-1208: \"E_SMI_FILE_ISTEMP\",\n",
|
|
"\n",
|
|
"-1251: \"E_SMI_RECORD_NOTINIT\",\n",
|
|
"-1252: \"E_SMI_RECORD_READ\",\n",
|
|
"-1253: \"E_SMI_RECORD_WRITE\",\n",
|
|
"-1254: \"E_SMI_RECORD_SELECT\",\n",
|
|
"-1255: \"E_SMI_RECORD_APPEND\",\n",
|
|
"-1256: \"E_SMI_RECORD_DELETE\",\n",
|
|
"-1257: \"E_SMI_RECORD_SELECTALL\",\n",
|
|
"-1258: \"E_SMI_RECORD_INSERT\",\n",
|
|
"-1259: \"E_SMI_RECORD_TRUNCATE\",\n",
|
|
"-1260: \"E_SMI_RECORD_READONLY\",\n",
|
|
"-1261: \"E_SMI_RECORD_FINISH\",\n",
|
|
"\n",
|
|
"-1271: \"E_SMI_CURSOR_NOTOPEN\",\n",
|
|
"-1272: \"E_SMI_CURSOR_NEXT\",\n",
|
|
"-1273: \"E_SMI_CURSOR_ENDOFSCAN\",\n",
|
|
"-1274: \"E_SMI_CURSOR_DELETE\",\n",
|
|
"-1275: \"E_SMI_CURSOR_FINISH\",\n",
|
|
"\n",
|
|
"-1290: \"E_SMI_PREFETCH_RANGE\"\n",
|
|
"}\n",
|
|
"\n",
|
|
"\n",
|
|
"\n",
|
|
"class GeneralError(Exception):\n",
|
|
" \"\"\"\n",
|
|
" This exception class is the base class of all other error exceptions,\n",
|
|
" used to catch all errors with one single except statement.\n",
|
|
" \"\"\"\n",
|
|
" def __init__(self, error, *args):\n",
|
|
" self.error = error\n",
|
|
" super(GeneralError, self).__init__(error, *args)\n",
|
|
"\n",
|
|
"\n",
|
|
"class SecondoAPI_Error(GeneralError):\n",
|
|
" \"\"\"\n",
|
|
" The class that is responsible for raising Exception for errors that are related\n",
|
|
" to the PySecondo interface rather than the database itself.\n",
|
|
" \"\"\"\n",
|
|
" def __init__(self, error, *args):\n",
|
|
" self.error = error\n",
|
|
" super(SecondoAPI_Error, self).__init__(error, *args)\n",
|
|
"\n",
|
|
"\n",
|
|
"class SecondoError(GeneralError):\n",
|
|
" \"\"\"\n",
|
|
" The class that is responsible for raising Exception for errors that are related to the database.\n",
|
|
" \"\"\"\n",
|
|
" def __init__(self, error, *args):\n",
|
|
" self.error = error\n",
|
|
" super(SecondoError, self).__init__(error, *args)\n",
|
|
"\n",
|
|
"\n",
|
|
"class UnexpectedSystemError(SecondoError):\n",
|
|
" \"\"\"\n",
|
|
" The class that is responsible for raising Exception for errors that are related to the database's operation\n",
|
|
" e.g. an unexpected disconnect, the data source name not found,\n",
|
|
" a transaction could not be processed, a memory allocation error, etc.\n",
|
|
" \"\"\"\n",
|
|
" def __init__(self, error, *args):\n",
|
|
" self.error = error\n",
|
|
" super(UnexpectedSystemError, self).__init__(error, *args)\n",
|
|
"\n"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.7.4"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|