fix(Data::ODBC): use connection and login timeouts in ODBC session implementation (#4721)

* fix(Data::ODBC): use connection and login timeouts in ODBC session implementation (#4366)

* fix(Data::ODBC): use only connection timeout in ODBC session implementation (#4366)

* fix(ODBC): consolidate login timeout; create temp directory if it doesn't exist #4366

---------

Co-authored-by: Alex Fabijanic <alex@pocoproject.org>
This commit is contained in:
Matej Kenda
2024-10-30 16:52:45 +01:00
committed by GitHub
parent 82c17ea813
commit 7df5ec45b8
13 changed files with 171 additions and 168 deletions

View File

@@ -52,7 +52,7 @@ const std::string SessionImpl::SQLITE_READ_COMMITTED = "PRAGMA read_uncommitted
SessionImpl::SessionImpl(const std::string& fileName, std::size_t loginTimeout):
Poco::Data::AbstractSessionImpl<SessionImpl>(fileName, loginTimeout),
_connector(Connector::KEY),
_pDB(0),
_pDB(nullptr),
_connected(false),
_isTransaction(false),
_transactionType(TransactionType::DEFERRED),
@@ -213,7 +213,7 @@ void SessionImpl::open(const std::string& connect)
while (true)
{
rc = sqlite3_open_v2(connectionString().c_str(), &_pDB,
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_URI, NULL);
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_URI, nullptr);
if (rc == SQLITE_OK) break;
if (!_pDB)
throw ConnectionFailedException(std::string(sqlite3_errstr(rc)));
@@ -240,7 +240,7 @@ void SessionImpl::close()
if (_pDB)
{
sqlite3_close_v2(_pDB);
_pDB = 0;
_pDB = nullptr;
}
_connected = false;