From d617ac4a9beedf7f7445c6704d628adc32d228fa Mon Sep 17 00:00:00 2001 From: Steven Murray <Steven.Murray@cern.ch> Date: Fri, 20 Sep 2019 11:38:06 +0200 Subject: [PATCH] Permanently removed the concept of rdbms::UnexpectedSemicolon. The rdbms package should avoid trying to parse SQL, at least for now. --- rdbms/CMakeLists.txt | 3 +-- rdbms/Conn.cpp | 1 - rdbms/ConnTest.cpp | 18 -------------- rdbms/UnexpectedSemicolon.cpp | 32 ------------------------- rdbms/UnexpectedSemicolon.hpp | 45 ----------------------------------- 5 files changed, 1 insertion(+), 98 deletions(-) delete mode 100644 rdbms/UnexpectedSemicolon.cpp delete mode 100644 rdbms/UnexpectedSemicolon.hpp diff --git a/rdbms/CMakeLists.txt b/rdbms/CMakeLists.txt index b674fc05c1..a3fa9ad9df 100644 --- a/rdbms/CMakeLists.txt +++ b/rdbms/CMakeLists.txt @@ -29,8 +29,7 @@ set (RDBMS_LIB_SRC_FILES rdbms.cpp Rset.cpp Stmt.cpp - StmtPool.cpp - UnexpectedSemicolon.cpp) + StmtPool.cpp) add_library (ctardbms SHARED ${RDBMS_LIB_SRC_FILES}) diff --git a/rdbms/Conn.cpp b/rdbms/Conn.cpp index e101a5197e..7c5530109a 100644 --- a/rdbms/Conn.cpp +++ b/rdbms/Conn.cpp @@ -21,7 +21,6 @@ #include "rdbms/Conn.hpp" #include "rdbms/ConnPool.hpp" #include "rdbms/rdbms.hpp" -#include "rdbms/UnexpectedSemicolon.hpp" namespace cta { namespace rdbms { diff --git a/rdbms/ConnTest.cpp b/rdbms/ConnTest.cpp index f317d99456..75db5e60a7 100644 --- a/rdbms/ConnTest.cpp +++ b/rdbms/ConnTest.cpp @@ -20,7 +20,6 @@ #include "rdbms/ConnPool.hpp" #include "rdbms/ConnTest.hpp" #include "rdbms/Login.hpp" -#include "rdbms/UnexpectedSemicolon.hpp" #include <gtest/gtest.h> @@ -149,23 +148,6 @@ TEST_P(cta_rdbms_ConnTest, createTableInMemoryDatabase_executeNonQuery) { } } -TEST_P(cta_rdbms_ConnTest, DISABLED_createTableInMemoryDatabase_executeNonQuery_semicolon) { - using namespace cta::rdbms; - - const std::string sql = "CREATE TABLE POOLED_STMT_TEST(ID INTEGER);"; - - { - const Login login(Login::DBTYPE_SQLITE, "", "", "file::memory:?cache=shared", "", 0); - const uint64_t maxNbConns = 1; - ConnPool connPool(login, maxNbConns); - auto conn = connPool.getConn(); - - ASSERT_TRUE(conn.getTableNames().empty()); - - ASSERT_THROW(conn.executeNonQuery(sql), UnexpectedSemicolon); - } -} - TEST_P(cta_rdbms_ConnTest, createSameTableInTwoSeparateInMemoryDatabases_executeNonQuery) { using namespace cta::rdbms; diff --git a/rdbms/UnexpectedSemicolon.cpp b/rdbms/UnexpectedSemicolon.cpp deleted file mode 100644 index c2f084aacf..0000000000 --- a/rdbms/UnexpectedSemicolon.cpp +++ /dev/null @@ -1,32 +0,0 @@ -/* - * The CERN Tape Archive (CTA) project - * Copyright (C) 2015 CERN - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "UnexpectedSemicolon.hpp" - -namespace cta { -namespace rdbms { - -//------------------------------------------------------------------------------ -// constructor -//------------------------------------------------------------------------------ -UnexpectedSemicolon::UnexpectedSemicolon(const std::string &context, const bool embedBacktrace): - Exception(context, embedBacktrace) { -} - -} // namespace rdbms -} // namespace cta diff --git a/rdbms/UnexpectedSemicolon.hpp b/rdbms/UnexpectedSemicolon.hpp deleted file mode 100644 index 50b0961acd..0000000000 --- a/rdbms/UnexpectedSemicolon.hpp +++ /dev/null @@ -1,45 +0,0 @@ -/* - * The CERN Tape Archive (CTA) project - * Copyright (C) 2015 CERN - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#include "common/exception/Exception.hpp" - -namespace cta { -namespace rdbms { - -/** - * Encountered an unexpected semicolon. - */ -class UnexpectedSemicolon: public exception::Exception { -public: - - /** - * Constructor. - * - * @param context optional context string added to the message - * at initialisation time. - * @param embedBacktrace whether to embed a backtrace of where the - * exception was throw in the message - */ - UnexpectedSemicolon(const std::string &context = "", const bool embedBacktrace = true); - -}; // class UnexpectedSemicolon - -} // namespace rdbms -} // namespace cta -- GitLab