38 #define NCBI_USE_ERRCODE_X Dbapi_DrvrUtil
61 : m_ClosingConnect(
false),
81 static const size_t kMaxItemsToCheck = 3;
94 size_t checked_items = 0;
96 checked_items < kMaxItemsToCheck && it !=
m_Exceptions.rend();
98 if ((*it)->GetDBErrCode() == e->GetDBErrCode())
99 if ((*it)->GetMsg() == e->GetMsg())
void Handle(const CDBHandlerStack &handler)
void SetRetriable(ERetriable retriable)
void Accept(unique_ptr< CDB_Exception > &e)
~CDBExceptionStorage(void)
CDBExceptionStorage(void)
CDB_UserHandler::TExceptions m_Exceptions
void(*)(CSeq_entry_Handle seh, IWorkbench *wb, const CSerialObject &obj) handler
static CS_CONNECTION * conn
void s_DelExceptionStorage(impl::CDBExceptionStorage *storage, void *)
ERetriable
Can the action be retried?
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
@ eRetriable_Unknown
It is unknown if the action can succeed if retried.
@ eRetriable_No
It makes no sense to retry the action.
static void ClearExceptions(TExceptions &expts)
deque< CDB_Exception * > TExceptions
Exception container type.
#define NCBI_CURRENT_FUNCTION
Get current function name.
void SetRetriable(ERetriable retriable)
Set the info about ability to retry an action caused the exception.
#define NCBI_CATCH_ALL_X(err_subcode, message)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition of all error codes used in dbapi libraries (dbapi_driver.lib and others).
void operator()(CDB_UserHandler::TExceptions &) const
void operator()(CDB_UserHandler::TExceptions &resource) const