1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

MCOL-3536 Collation

This commit is contained in:
David Hall
2020-06-08 17:57:37 -05:00
parent d289c30521
commit f9078efbc6
38 changed files with 79 additions and 147 deletions

View File

@ -77,9 +77,7 @@ using namespace rowgroup;
#include "idbregistry.h" #include "idbregistry.h"
#endif #endif
#include <mariadb.h> #include "collation.h"
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#undef BAIL_IF_0 #undef BAIL_IF_0
#if 1 #if 1

View File

@ -30,10 +30,7 @@
#include "liboamcpp.h" #include "liboamcpp.h"
#include <mariadb.h> #include "collation.h"
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
using namespace oam; using namespace oam;

View File

@ -86,9 +86,7 @@ using namespace execplan;
#include "functor.h" #include "functor.h"
using namespace funcexp; using namespace funcexp;
#include <mariadb.h> #include "collation.h"
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
const uint64_t AGG_BIT = 0x01; const uint64_t AGG_BIT = 0x01;
const uint64_t SUB_BIT = 0x02; const uint64_t SUB_BIT = 0x02;

View File

@ -18,10 +18,6 @@
/****************************************************************************************** /******************************************************************************************
******************************************************************************************/ ******************************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
#include <unistd.h> #include <unistd.h>
#include <signal.h> #include <signal.h>
@ -68,6 +64,8 @@ using namespace execplan;
#include "crashtrace.h" #include "crashtrace.h"
#include "installdir.h" #include "installdir.h"
#include "collation.h"
namespace namespace
{ {
DistributedEngineComm* Dec; DistributedEngineComm* Dec;

View File

@ -20,10 +20,6 @@
* *
* *
***********************************************************************/ ***********************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <unistd.h> #include <unistd.h>
#include <signal.h> #include <signal.h>
#include <string> #include <string>
@ -88,6 +84,8 @@ using namespace joblist;
#include "crashtrace.h" #include "crashtrace.h"
#include "installdir.h" #include "installdir.h"
#include "collation.h"
threadpool::ThreadPool DMLServer::fDmlPackagepool(10, 0); threadpool::ThreadPool DMLServer::fDmlPackagepool(10, 0);
namespace namespace

View File

@ -39,10 +39,6 @@
* on the Front-End Processor where it is returned to the DBMS * on the Front-End Processor where it is returned to the DBMS
* front-end. * front-end.
*/ */
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <iostream> #include <iostream>
#include <cstdint> #include <cstdint>
#include <csignal> #include <csignal>
@ -80,6 +76,8 @@
#include "dbrm.h" #include "dbrm.h"
#include "collation.h"
namespace namespace
{ {

View File

@ -34,10 +34,7 @@ using namespace std;
#include "dataconvert.h" #include "dataconvert.h"
#include <sstream> #include <sstream>
#include <mariadb.h> #include "collation.h"
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
using namespace logging; using namespace logging;

View File

@ -21,10 +21,6 @@
* *
* *
***********************************************************************/ ***********************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <unistd.h> #include <unistd.h>
#include <string> #include <string>
#include <iostream> #include <iostream>
@ -78,6 +74,8 @@ using namespace idbdatafile;
#include "crashtrace.h" #include "crashtrace.h"
#include "installdir.h" #include "installdir.h"
#include "collation.h"
namespace primitiveprocessor namespace primitiveprocessor
{ {

View File

@ -13,12 +13,8 @@
along with this program; if not, write to the Free Software along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA */
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
#include "utils_utf8.h" #include "utils_utf8.h"
#include "collation.h"
namespace utf8 namespace utf8
{ {

View File

@ -22,10 +22,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
using namespace std; using namespace std;
@ -41,6 +37,9 @@ using namespace execplan;
#include "errorcodes.h" #include "errorcodes.h"
#include "idberrorinfo.h" #include "idberrorinfo.h"
#include "errorids.h" #include "errorids.h"
#include "collation.h"
using namespace logging; using namespace logging;
namespace namespace

View File

@ -22,10 +22,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
//#define NDEBUG //#define NDEBUG
#include <cassert> #include <cassert>
@ -47,6 +43,8 @@ using namespace logging;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
namespace namespace
{ {
using namespace funcexp; using namespace funcexp;

View File

@ -21,10 +21,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
#include <sstream> #include <sstream>
@ -42,6 +38,9 @@ using namespace execplan;
#include "errorcodes.h" #include "errorcodes.h"
#include "idberrorinfo.h" #include "idberrorinfo.h"
#include "errorids.h" #include "errorids.h"
#include "collation.h"
using namespace logging; using namespace logging;
namespace funcexp namespace funcexp

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -35,6 +32,8 @@ using namespace execplan;
#include "rowgroup.h" #include "rowgroup.h"
using namespace rowgroup; using namespace rowgroup;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
@ -45,6 +42,8 @@ using namespace execplan;
#include "errorids.h" #include "errorids.h"
using namespace logging; using namespace logging;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -22,10 +22,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
#include <sstream> #include <sstream>
@ -44,6 +40,7 @@ using namespace joblist;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
class to_lower class to_lower
{ {

View File

@ -22,10 +22,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
using namespace std; using namespace std;
@ -48,6 +44,8 @@ using namespace logging;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
namespace namespace
{ {
template<typename result_t> template<typename result_t>

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -40,6 +37,8 @@ using namespace joblist;
#include "utf8.h" #include "utf8.h"
using namespace utf8; using namespace utf8;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,10 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
@ -36,6 +32,8 @@ using namespace std;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace execplan; using namespace execplan;
#include "collation.h"
namespace funcexp namespace funcexp
{ {
CalpontSystemCatalog::ColType Func_instr::operationType( FunctionParm& fp, CalpontSystemCatalog::ColType& resultType ) CalpontSystemCatalog::ColType Func_instr::operationType( FunctionParm& fp, CalpontSystemCatalog::ColType& resultType )

View File

@ -20,10 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -39,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
class to_lower class to_lower
{ {
public: public:

View File

@ -22,10 +22,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
#include <sstream> #include <sstream>
@ -44,6 +40,8 @@ using namespace joblist;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
class to_lower class to_lower
{ {
public: public:

View File

@ -20,10 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +34,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
@ -36,6 +33,8 @@ using namespace execplan;
#include "rowgroup.h" #include "rowgroup.h"
#include "collation.h"
namespace funcexp namespace funcexp
{ {
CalpontSystemCatalog::ColType Func_length::operationType( FunctionParm& fp, CalpontSystemCatalog::ColType& resultType ) CalpontSystemCatalog::ColType Func_length::operationType( FunctionParm& fp, CalpontSystemCatalog::ColType& resultType )

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include "errorids.h" #include "errorids.h"
#include <string> #include <string>
@ -39,6 +36,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {
const string Func_lpad::fPad = " "; const string Func_lpad::fPad = " ";

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +35,7 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -22,10 +22,10 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h> //#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost //#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#undef LONGLONG_MIN //#undef LONGLONG_MIN
#include <my_sys.h> //#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
@ -50,6 +50,8 @@ using namespace dataconvert;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -21,10 +21,6 @@
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +34,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,10 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include "errorids.h" #include "errorids.h"
#include <string> #include <string>
using namespace std; using namespace std;
@ -39,7 +35,7 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#define STRCOLL_ENH__ #include "collation.h"
namespace funcexp namespace funcexp
{ {
@ -115,10 +111,10 @@ std::string Func_rpad::getStrVal(rowgroup::Row& row,
while (padLength >= plen) while (padLength >= plen)
{ {
memcpy(pBuf, posP, plen); memcpy(pBuf, posP, binPLen);
padLength -= plen; padLength -= plen;
byteCount += plen; byteCount += binPLen;
pBuf += plen; pBuf += binPLen;
} }
// Sometimes, in a case with multi-char pad, we need to add a partial pad // Sometimes, in a case with multi-char pad, we need to add a partial pad
if (padLength > 0) if (padLength > 0)

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,13 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <cstdlib> #include <cstdlib>
#include <string> #include <string>
@ -46,6 +39,8 @@ using namespace joblist;
#include "utils_utf8.h" #include "utils_utf8.h"
using namespace funcexp; using namespace funcexp;
#include "collation.h"
// Because including my_sys.h in a Columnstore header causes too many conflicts // Because including my_sys.h in a Columnstore header causes too many conflicts
struct charset_info_st; struct charset_info_st;
typedef const struct charset_info_st CHARSET_INFO; typedef const struct charset_info_st CHARSET_INFO;

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
#define STRCOLL_ENH__ #define STRCOLL_ENH__
namespace funcexp namespace funcexp

View File

@ -21,10 +21,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +34,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {

View File

@ -20,9 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -38,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
namespace funcexp namespace funcexp
{ {
CalpontSystemCatalog::ColType Func_trim::operationType(FunctionParm& fp, CalpontSystemCatalog::ColType& resultType) CalpontSystemCatalog::ColType Func_trim::operationType(FunctionParm& fp, CalpontSystemCatalog::ColType& resultType)

View File

@ -20,10 +20,6 @@
* *
* *
****************************************************************************/ ****************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <m_ctype.h>
#include <string> #include <string>
using namespace std; using namespace std;
@ -39,6 +35,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
using namespace joblist; using namespace joblist;
#include "collation.h"
class to_upper class to_upper
{ {
public: public:

View File

@ -24,10 +24,6 @@
* is the primary class. * is the primary class.
*/ */
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <unistd.h> #include <unistd.h>
#include <sstream> #include <sstream>
#include <stdexcept> #include <stdexcept>
@ -55,6 +51,8 @@
#include "calpontsystemcatalog.h" #include "calpontsystemcatalog.h"
#include "utils_utf8.h" #include "utils_utf8.h"
#include "collation.h"
//..comment out NDEBUG to enable assertions, uncomment NDEBUG to disable //..comment out NDEBUG to enable assertions, uncomment NDEBUG to disable
//#define NDEBUG //#define NDEBUG

View File

@ -26,10 +26,6 @@
// Author: Patrick LeBlanc <pleblanc@calpont.com>, (C) 2008 // Author: Patrick LeBlanc <pleblanc@calpont.com>, (C) 2008
// //
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
//#define NDEBUG //#define NDEBUG
#include <sstream> #include <sstream>
#include <iterator> #include <iterator>
@ -47,6 +43,8 @@ using namespace execplan;
#include "nullvaluemanip.h" #include "nullvaluemanip.h"
#include "rowgroup.h" #include "rowgroup.h"
#include "collation.h"
namespace rowgroup namespace rowgroup
{ {

View File

@ -18,9 +18,6 @@
// $Id: idborderby.cpp 3932 2013-06-25 16:08:10Z xlou $ // $Id: idborderby.cpp 3932 2013-06-25 16:08:10Z xlou $
#include <mariadb.h>
#include <m_ctype.h>
#include <iostream> #include <iostream>
#include <cassert> #include <cassert>
#include <string> #include <string>
@ -51,6 +48,8 @@ using namespace rowgroup;
#include "joblisttypes.h" #include "joblisttypes.h"
#include "collation.h"
// See agg_arg_charsets in sql_type.h to see conversion rules for // See agg_arg_charsets in sql_type.h to see conversion rules for
// items that have different char sets // items that have different char sets
namespace ordering namespace ordering

View File

@ -19,9 +19,6 @@
* $Id: we_server.cpp 4700 2013-07-08 16:43:49Z bpaul $ * $Id: we_server.cpp 4700 2013-07-08 16:43:49Z bpaul $
* *
*******************************************************************************/ *******************************************************************************/
#include <mariadb.h>
#undef set_bits // mariadb.h defines set_bits, which is incompatible with boost
#include <my_sys.h>
#include <unistd.h> #include <unistd.h>
#include <iostream> #include <iostream>
@ -44,7 +41,6 @@ using namespace messageqcpp;
using namespace threadpool; using namespace threadpool;
#include "we_readthread.h" #include "we_readthread.h"
using namespace WriteEngine;
#include "liboamcpp.h" #include "liboamcpp.h"
using namespace oam; using namespace oam;
@ -56,6 +52,10 @@ using namespace oam;
#include "crashtrace.h" #include "crashtrace.h"
#include "collation.h"
using namespace WriteEngine;
namespace namespace
{ {
void added_a_pm(int) void added_a_pm(int)