diff --git a/Client/Client.cpp b/Client/Client.cpp index 0b92f268f..6362dcdd0 100644 --- a/Client/Client.cpp +++ b/Client/Client.cpp @@ -58,7 +58,8 @@ Client::query_result Client::submit(std::string command, std::string &message, command = "#" + command; - write(m_clientFd, command.c_str(), command.length() + 1); + int bytes = write(m_clientFd, command.c_str(), command.length() + 1); + if (bytes != command.length() + 1) perror("failed to send SQL to claims"); ClientLogging::log("Client: message from server!\n"); const int maxBytes = 75536 + sizeof(int) * 2; char *buf = new char[maxBytes]; diff --git a/Client/Makefile.am b/Client/Makefile.am index 478a319b2..d26371768 100644 --- a/Client/Makefile.am +++ b/Client/Makefile.am @@ -17,8 +17,7 @@ LDADD = ../catalog/libcatalog.a \ ../common/Block/libblock.a \ ../common/Schema/libschema.a \ ${BOOST_HOME}/stage/lib/libboost_serialization.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.so \ - ${THERON_HOME}/Lib/libtherond.a + ${BOOST_HOME}/stage/lib/libboost_serialization.so noinst_LIBRARIES=libclient.a libclient_a_SOURCES = \ @@ -27,5 +26,5 @@ libclient_a_SOURCES = \ ClientResponse.cpp ClientResponse.h \ jsoncpp.cpp -SUBDIRS = json Test -DIST_SUBDIRS = json Test +#SUBDIRS = json Test +#DIST_SUBDIRS = json Test diff --git a/Client/Test/TestSeverClient.cpp b/Client/Test/TestSeverClient.cpp index 719931133..ecdf6d6a2 100644 --- a/Client/Test/TestSeverClient.cpp +++ b/Client/Test/TestSeverClient.cpp @@ -123,7 +123,7 @@ static int loadData() { catalog->add_table(table_1); ////////////////////////////////////Create table - ///right////////////////////////// + /// right////////////////////////// TableDescriptor* table_2 = new TableDescriptor( "sb", Environment::getInstance()->getCatalog()->allocate_unique_table_id()); @@ -212,20 +212,20 @@ static int loadData() { } // partitioned by row_id // for(unsigned - //i=0;igetProjectoin(14)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(14)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(14)->getPartitioner()->RegisterPartition(i,2); // } // // // 8 partitions // for(unsigned - //i=0;igetProjectoin(2)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(2)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(2)->getPartitioner()->RegisterPartition(i,1); // } // // for(unsigned - //i=0;igetProjectoin(3)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(3)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(3)->getPartitioner()->RegisterPartition(i,3); // } @@ -245,20 +245,20 @@ static int loadData() { i, 6); } // for(unsigned - //i=0;igetProjectoin(2)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(2)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(2)->getPartitioner()->RegisterPartition(i,1); // } // for(unsigned - //i=0;igetProjectoin(3)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(3)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(3)->getPartitioner()->RegisterPartition(i,3); // } // // //partitioned by row_id // for(unsigned - //i=0;igetProjectoin(14)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(14)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(14)->getPartitioner()->RegisterPartition(i,2); // } @@ -266,41 +266,41 @@ static int loadData() { // //////////////////////////////////////// // // ///////////////////ONE - //MONTH///////////////////////////////////////////////////////////// + // MONTH///////////////////////////////////////////////////////////// // //CJ // // 4 partition // for(unsigned - //i=0;igetProjectoin(4)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(4)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(4)->getPartitioner()->RegisterPartition(i,40); // } // // for(unsigned - //i=0;igetProjectoin(5)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(5)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(5)->getPartitioner()->RegisterPartition(i,104); // } // //8 partitions // for(unsigned - //i=0;igetProjectoin(10)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(10)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(10)->getPartitioner()->RegisterPartition(i,20); // } // // for(unsigned - //i=0;igetProjectoin(11)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(11)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(11)->getPartitioner()->RegisterPartition(i,52); // } // // 18 partitions // for(unsigned - //i=0;igetProjectoin(6)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(6)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(6)->getPartitioner()->RegisterPartition(i,10); // } // // for(unsigned - //i=0;igetProjectoin(7)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(7)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(7)->getPartitioner()->RegisterPartition(i,24); // } @@ -308,37 +308,37 @@ static int loadData() { // //SB // // 4 partition // for(unsigned - //i=0;igetProjectoin(4)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(4)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(4)->getPartitioner()->RegisterPartition(i,39); // } // // for(unsigned - //i=0;igetProjectoin(5)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(5)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(5)->getPartitioner()->RegisterPartition(i,131); // } // // 8 partitions // for(unsigned - //i=0;igetProjectoin(10)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(10)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(10)->getPartitioner()->RegisterPartition(i,20); // } // // for(unsigned - //i=0;igetProjectoin(11)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(11)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(11)->getPartitioner()->RegisterPartition(i,66); // } // // 18 partitions // for(unsigned - //i=0;igetProjectoin(6)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(6)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(6)->getPartitioner()->RegisterPartition(i,10); // } // // for(unsigned - //i=0;igetProjectoin(7)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(7)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(7)->getPartitioner()->RegisterPartition(i,30); // } @@ -349,25 +349,25 @@ static int loadData() { // //// cj//// // // 4 partitions // for(unsigned - //i=0;igetProjectoin(8)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(8)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(8)->getPartitioner()->RegisterPartition(i,14); // } // // for(unsigned - //i=0;igetProjectoin(9)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(9)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(9)->getPartitioner()->RegisterPartition(i,36); // } // // 8 partitions // for(unsigned - //i=0;igetProjectoin(12)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(12)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(12)->getPartitioner()->RegisterPartition(i,7); // } // // for(unsigned - //i=0;igetProjectoin(13)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(13)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(0)->getProjectoin(13)->getPartitioner()->RegisterPartition(i,19); // } @@ -375,25 +375,25 @@ static int loadData() { // //// sb //// // // 4 partitions// // for(unsigned - //i=0;igetProjectoin(8)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(8)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(8)->getPartitioner()->RegisterPartition(i,14); // } // // for(unsigned - //i=0;igetProjectoin(9)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(9)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(9)->getPartitioner()->RegisterPartition(i,131); // } // // 8 partitions// // for(unsigned - //i=0;igetProjectoin(12)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(12)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(12)->getPartitioner()->RegisterPartition(i,7); // } // // for(unsigned - //i=0;igetProjectoin(13)->getPartitioner()->getNumberOfPartitions();i++){ + // i=0;igetProjectoin(13)->getPartitioner()->getNumberOfPartitions();i++){ // // catalog->getTable(1)->getProjectoin(13)->getPartitioner()->RegisterPartition(i,23); // } diff --git a/Config.cpp b/Config.cpp index 341aa300e..f4b29acea 100644 --- a/Config.cpp +++ b/Config.cpp @@ -91,6 +91,23 @@ int Config::thread_pool_init_thread_num; int Config::load_thread_num; int Config::memory_utilization; +bool Config::is_master_loader; +std::string Config::master_loader_ip; +int Config::master_loader_port; +std::string Config::amq_url; +std::string Config::amq_topic; + +bool Config::enable_txn_server; +int Config::txn_server_cores; +std::string Config::txn_server_ip; +int Config::txn_server_port; + +bool Config::enable_txn_log = false; +std::string Config::txn_log_path; + +int Config::master_loader_thread_num; +int Config::slave_loader_thread_num; + Config *Config::getInstance() { if (instance_ == 0) { instance_ = new Config(); @@ -152,6 +169,33 @@ void Config::initialize() { load_thread_num = getInt("load_thread_num", sysconf(_SC_NPROCESSORS_CONF)); + is_master_loader = getBoolean("is_master_loader", true); + + master_loader_ip = getString("master_loader_ip", "10.11.1.193"); + + master_loader_port = getInt("master_loader_port", 9001); + + amq_url = getString("amq_url", "58.198.176.92:61616"); + + amq_topic = getString("amq_topic", "claims"); + + // txn manager + enable_txn_server = getBoolean("txn_server", true); + + txn_server_cores = getInt("txn_server_cores", 4); + + txn_server_ip = getString("txn_server_ip", "127.0.0.1"); + + txn_server_port = getInt("txn_server_port", 9100); + + // txn log + enable_txn_log = getBoolean("txn_log", true); + + txn_log_path = getString("txn_log_path", "."); + + master_loader_thread_num = getInt("master_loader_thread_num", 4); + slave_loader_thread_num = getInt("slave_loader_thread_num", 4); + memory_utilization = getInt("memory_utilization", 100); #ifdef DEBUG_Config @@ -212,6 +256,16 @@ void Config::print_configure() const { std::cout << "catalog_file:" << catalog_file << std::endl; std::cout << "codegen:" << enable_codegen << std::endl; std::cout << "load_thread_num:" << load_thread_num << std::endl; + std::cout << "amq_url:" << amq_url << std::endl; + std::cout << "amq_topic:" << amq_topic << std::endl; + + std::cout << "enable_txn_serverr:" << enable_txn_server << std::endl; + std::cout << "txn_server_cores:" << txn_server_cores << std::endl; + std::cout << "txn_server_ip:" << txn_server_ip << std::endl; + std::cout << "txn_server_port:" << txn_server_port << std::endl; + + std::cout << "enable_txn_log:" << enable_txn_log << std::endl; + std::cout << "txn_log_path:" << txn_log_path << std::endl; } void Config::setConfigFile(std::string file_name) { config_file = file_name; } diff --git a/Config.h b/Config.h index 34defbff1..1380b0066 100644 --- a/Config.h +++ b/Config.h @@ -80,6 +80,22 @@ class Config { static int memory_utilization; static int load_thread_num; + static bool is_master_loader; + static std::string master_loader_ip; + static int master_loader_port; + static std::string amq_url; + static std::string amq_topic; + + static bool enable_txn_server; + static int txn_server_cores; + static std::string txn_server_ip; + static int txn_server_port; + + static bool enable_txn_log; + static std::string txn_log_path; + + static int master_loader_thread_num; + static int slave_loader_thread_num; private: static Config* instance_; diff --git a/Debug.h b/Debug.h index da79c7417..03884adb1 100755 --- a/Debug.h +++ b/Debug.h @@ -25,13 +25,13 @@ #define BLOCK_SIZE (64 * 1024) #define SUCHUNK_SIZE (64 * 1024) #define CHUNK_SIZE (64 * 1024 * 1024) -#define CHUNK_SIZE_IN_MB 64 -#define HEARTBEAT_MESSAGE_LEN 64 -#define REGISTER_MESSAGE_LEN 64 -#define BLOCK_STATUS_MESSAGE_LEN 256 -#define MATCHER_MESSAGE_FILENAME_LEN 256 -#define MATCHER_MESSAGE_BMI_LEN 256 -#define MATCHER_MESSAGE_PROJECT_LEN 256 +#define CHUNK_SIZE_IN_MB (64) +#define HEARTBEAT_MESSAGE_LEN (64) +#define REGISTER_MESSAGE_LEN (64) +#define BLOCK_STATUS_MESSAGE_LEN (256) +#define MATCHER_MESSAGE_FILENAME_LEN (256) +#define MATCHER_MESSAGE_BMI_LEN (256) +#define MATCHER_MESSAGE_PROJECT_LEN (256) // 分布式文件系统的主节点 #define HDFS_N "10.11.1.190" // 磁盘目录 diff --git a/Environment.cpp b/Environment.cpp index 3f01b7e64..8b8196c9d 100755 --- a/Environment.cpp +++ b/Environment.cpp @@ -6,21 +6,29 @@ */ #include "Environment.h" -#include "caf/all.hpp" +#include +#include + +#define GLOG_NO_ABBREVIATED_SEVERITIES +#include +#undef GLOG_NO_ABBREVIATED_SEVERITIES #include #include +#include +#include +#include +#include // NOLINT +#include "caf/all.hpp" #include "common/Message.h" #include "exec_tracker/stmt_exec_tracker.h" #include "exec_tracker/segment_exec_tracker.h" #include "node_manager/base_node.h" -#define GLOG_NO_ABBREVIATED_SEVERITIES -#include -#include -#include -#include -#include +#include "loader/load_packet.h" +#include "loader/master_loader.h" +#include "loader/slave_loader.h" #include "./Debug.h" #include "./Config.h" +#include "common/ids.h" #include "common/Logging.h" #include "common/TypePromotionMap.h" #include "common/TypeCast.h" @@ -29,6 +37,12 @@ #include "common/expression/data_type_oper.h" #include "common/expression/expr_type_cast.h" #include "common/expression/type_conversion_matrix.h" +// #define DEBUG_MODE +#include "catalog/catalog.h" +#include "txn_manager/txn_server.hpp" +#include "txn_manager/txn_client.hpp" +#include "txn_manager/txn_log.hpp" +#include "txn_manager/txn.hpp" using caf::announce; using claims::BaseNode; @@ -37,9 +51,17 @@ using claims::common::InitAggAvgDivide; using claims::common::InitOperatorFunc; using claims::common::InitTypeCastFunc; using claims::common::InitTypeConversionMatrix; -//#define DEBUG_MODE -#include "catalog/catalog.h" using claims::common::rSuccess; +using claims::loader::LoadPacket; +using claims::loader::MasterLoader; +using claims::loader::SlaveLoader; +using claims::txn::UInt64; +using claims::txn::TxnServer; +using claims::txn::TxnClient; +using claims::txn::LogServer; +using claims::txn::LogClient; +using claims::txn::GetGlobalPartId; +using claims::txn::TimeStamp; using claims::NodeAddr; using claims::NodeSegmentID; using claims::StmtExecTracker; @@ -55,13 +77,13 @@ Environment::Environment(bool ismaster) : ismaster_(ismaster) { initializeExpressionSystem(); portManager = PortManager::getInstance(); - if (ismaster) { - catalog_ = claims::catalog::Catalog::getInstance(); - logging_->log("restore the catalog ..."); - if (rSuccess != catalog_->restoreCatalog()) { - LOG(ERROR) << "failed to restore catalog" << std::endl; - cerr << "ERROR: restore catalog failed" << endl; - } + AnnounceCafMessage(); + + catalog_ = claims::catalog::Catalog::getInstance(); + logging_->log("restore the catalog ..."); + if (rSuccess != catalog_->restoreCatalog()) { + LOG(ERROR) << "failed to restore catalog" << std::endl; + cerr << "ERROR: restore catalog failed" << endl; } stmt_exec_tracker_ = new StmtExecTracker(); seg_exec_tracker_ = new SegmentExecTracker(); @@ -70,27 +92,33 @@ Environment::Environment(bool ismaster) : ismaster_(ismaster) { logging_->log("Initializing the ThreadPool..."); if (false == initializeThreadPool()) { logging_->elog("initialize ThreadPool failed"); + assert(false && "can't initialize thread pool"); } } + + logging_->log("Initializing the loader..."); + if (!InitLoader()) { + LOG(ERROR) << "failed to initialize loader"; + } + /** * TODO: * DO something in AdaptiveEndPoint such that the construction function does not return until the connection is completed. If so, the following - sleep() - dose not needed. - + sleep() dose not needed. This is done in Aug.18 by Li :) */ - /*Before initializing Resource Manager, the instance ip and port should be * decided.*/ - AnnounceCafMessage(); + logging_->log("Initializing the ResourceManager..."); initializeResourceManager(); // should after above InitMembership(); + logging_->log("Initializing the Storage..."); initializeStorage(); + logging_->log("Initializing the BufferManager..."); initializeBufferManager(); logging_->log("Initializing the ExecutorMaster..."); @@ -101,11 +129,38 @@ Environment::Environment(bool ismaster) : ismaster_(ismaster) { exchangeTracker = new ExchangeTracker(); expander_tracker_ = ExpanderTracker::getInstance(); + + logging_->log("Initializing txn manager"); + if (!InitTxnManager()) LOG(ERROR) << "failed to initialize txn manager"; + + logging_->log("Initializing txn log server"); + if (!InitTxnLog()) LOG(ERROR) << "failed to initialize txn log"; + #ifndef DEBUG_MODE if (ismaster) { initializeClientListener(); } #endif + + if (ismaster) { + /** + * Binding all partition for each projection + */ + sleep(15); + logging_->log("Advanced Bind all partition for each projection"); + if (!AdvancedBindAllPart()) { + cout << "failed to bind partitions" << endl; + LOG(ERROR) << "failed to bing partitions"; + } else { + cout << "success to bind partitions" << endl; + } + cout << "bind partition...." << endl; + auto parts = BlockManager::getInstance()->GetAllPartition(); + /* for (auto& part : parts) + cout << "binding<" << part.projection_id.table_id << "," + << part.projection_id.projection_off << "," << part.partition_off + << ">" << endl;*/ + } } Environment::~Environment() { @@ -146,6 +201,16 @@ void Environment::readConfigFile() { } void Environment::AnnounceCafMessage() { + announce("NodeAddress", &NodeAddress::ip, &NodeAddress::port); + announce("ProjectionID", &ProjectionID::table_id, + &ProjectionID::projection_off); + announce("PartitionID", &PartitionID::projection_id, + &PartitionID::partition_off); + + announce("LoadPacket", &LoadPacket::txn_id_, + &LoadPacket::global_part_id_, &LoadPacket::pos_, + &LoadPacket::offset_, &LoadPacket::data_length_, + &LoadPacket::data_buffer_, &LoadPacket::socket_fd_); announce( "StorageBudgetMessage", &StorageBudgetMessage::nodeid, &StorageBudgetMessage::memory_budget, &StorageBudgetMessage::disk_budget); @@ -165,11 +230,11 @@ void Environment::initializeStorage() { blockManagerMaster_->initialize(); } /*both master and slave node run the BlockManager.*/ - // BlockManagerId *bmid=new BlockManagerId(); - // string + // BlockManagerId *bmid=new BlockManagerId(); + // string // actorname="blockManagerWorkerActor_"+bmid->blockManagerId; - // cout<Register(); } void Environment::InitMembership() { if (ismaster_) { master_node_ = MasterNode::GetInstance(); } + sleep(2); slave_node_ = SlaveNode::GetInstance(); slave_node_->RegisterToMaster(true); node_id_ = slave_node_->get_node_id(); } + +bool Environment::InitLoader() { + if (Config::is_master_loader) { + LOG(INFO) << "I'm master loader. Oyeah"; + master_loader_ = new MasterLoader(); + std::thread master_thread(&MasterLoader::StartMasterLoader, nullptr); + master_thread.detach(); + DLOG(INFO) << "started thread as master loader"; + } + + DLOG(INFO) << "starting create thread as slave loader"; + slave_loader_ = new SlaveLoader(); + std::thread slave_thread(&SlaveLoader::StartSlaveLoader, nullptr); + slave_thread.detach(); + + return true; +} + +bool Environment::InitTxnManager() { + if (Config::enable_txn_server) { + unordered_map pos_list, his_cp_list, rt_cp_list; + LOG(INFO) << "I'm txn manager server"; + TxnServer::Init(Config::txn_server_cores, Config::txn_server_port); + auto cat = Catalog::getInstance(); + auto table_count = cat->getNumberOfTable(); + // cout << "table count:" << table_count << endl; + for (unsigned table_id : cat->getAllTableIDs()) { + // cout << "start table id :" << table_id << endl; + auto table = cat->getTable(table_id); + if (NULL == table) { + // cout << " No table whose id is:" << table_id << endl; + assert(false); + } + auto proj_count = table->getNumberOfProjection(); + + for (auto proj_id = 0; proj_id < proj_count; proj_id++) { + auto proj = table->getProjectoin(proj_id); + if (NULL == proj) { + cout << "No projection whose id is:" << proj_id + << " in table:" << table->getTableName() << endl; + assert(false); + } + // cout << "start proj_id:" << proj_id << endl; + auto part = proj->getPartitioner(); + auto part_count = part->getNumberOfPartitions(); + for (auto part_id = 0; part_id < part_count; part_id++) { + // cout << "start part_id:" << part_id << endl; + auto global_part_id = GetGlobalPartId(table_id, proj_id, part_id); + pos_list[global_part_id] = his_cp_list[global_part_id] = + rt_cp_list[global_part_id] = + static_cast(part->getPartitionBlocks(part_id)) * + BLOCK_SIZE; + // cout << "pos2 => " << pos_list[global_part_id] << " bytes" << endl; + } + } + } + // cout << "before init pos list..." << endl; + // for (auto& pos : pos_list) + // cout << pos.first << " => " << pos.second << endl; + // cout << "before init his cp list..." << endl; + // for (auto& cp : his_cp_list) + // cout << cp.first << " => " << cp.second << endl; + // cout << "before init rt list..." << endl; + // for (auto& cp : rt_cp_list) cout << cp.first << " => " << cp.second << + // endl; + + TxnServer::LoadCPList(0, his_cp_list, rt_cp_list); + TxnServer::LoadPos(pos_list); + // cout << "init pos list..." << endl; + // for (auto& pos : TxnServer::pos_list_) + // cout << "part[" << pos.first << "] => " << pos.second << endl; + // cout << "init checkpoint list..." << endl; + // for (auto& pos : TxnServer::cp_list_) { + // cout << "part[" << pos.first << "] => his:" << pos.second.GetHisCP(0) + // << ", rt:" << pos.second.GetRtCP(0) << endl; + //} + } + sleep(1); + TxnClient::Init(Config::txn_server_ip, Config::txn_server_port); + return true; +} + +bool Environment::AdvancedBindAllPart() { + for (auto table_id : Catalog::getInstance()->getAllTableIDs()) { + auto table = Catalog::getInstance()->getTable(table_id); + auto proj_count = table->getNumberOfProjection(); + for (auto proj_id = 0; proj_id < proj_count; proj_id++) { + auto proj = table->getProjectoin(proj_id); + if (!proj->AllPartitionBound()) { + bool ret = + Catalog::getInstance()->getBindingModele()->BindingEntireProjection( + proj->getPartitioner(), DESIRIABLE_STORAGE_LEVEL); + // cout << "binding<" << table_id << "," << proj_id << ">:" << ret << + // endl; + } + } + } + return true; +} + +bool Environment::InitTxnLog() { + if (Config::enable_txn_log) { + LOG(INFO) << "I'm txn log server"; + LogServer::Init(Config::txn_log_path); + } + return true; +} + void Environment::initializeBufferManager() { bufferManager_ = BufferManager::getInstance(); } diff --git a/Environment.h b/Environment.h index 541b5ddcc..e0bfd5067 100755 --- a/Environment.h +++ b/Environment.h @@ -26,7 +26,15 @@ #include "node_manager/slave_node.h" #include "Resource/BufferManager.h" +namespace claims { +namespace loader { +class SlaveLoader; +class MasterLoader; +} +} using claims::catalog::Catalog; +using claims::loader::SlaveLoader; +using claims::loader::MasterLoader; using claims::MasterNode; using claims::SegmentExecTracker; using claims::SlaveNode; @@ -64,6 +72,9 @@ class Environment { StmtExecTracker* get_stmt_exec_tracker() { return stmt_exec_tracker_; } SegmentExecTracker* get_segment_exec_tracker() { return seg_exec_tracker_; } + MasterLoader* get_master_loader() const { return master_loader_; } + SlaveLoader* get_slave_loader() const { return slave_loader_; } + private: void AnnounceCafMessage(); void readConfigFile(); @@ -77,6 +88,14 @@ class Environment { bool initializeThreadPool(); void InitMembership(); + bool InitLoader(); + + bool InitTxnManager(); + + bool InitTxnLog(); + + bool AdvancedBindAllPart(); + private: static Environment* _instance; PortManager* portManager; @@ -100,6 +119,8 @@ class Environment { ClientListener* listener_; ThreadPool* thread_pool_; + MasterLoader* master_loader_; + SlaveLoader* slave_loader_; MasterNode* master_node_; SlaveNode* slave_node_; diff --git a/Executor/Coordinator.cpp b/Executor/Coordinator.cpp new file mode 100755 index 000000000..fa6b72c4e --- /dev/null +++ b/Executor/Coordinator.cpp @@ -0,0 +1,318 @@ +/* + * Coordinator.cpp + * + * Created on: Aug 8, 2013 + * Author: wangli + */ + +#include "Coordinator.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "../Debug.h" +#include "../common/Message.h" +#include "../Environment.h" +// #include "../common/TimeOutReceiver.h" +#include "../Config.h" +Coordinator::Coordinator() { + logging = new CoordinatorLogging(); + /** swap the order of SetupTheTheron and PreparetheSocket to provide more time + * to Theron::EndPoint initialization before other EndPoints connect to it. + * + */ + + if (SetupTheTheron() == false) { + logging->elog("Error occurs during the Theron setup!"); + return; + } + if (PrepareTheSocket() == false) { + logging->elog("Error occurs during the socket prepare!"); + return; + } + + if (CreateListeningThread() == false) { + logging->elog("Error occurs during creating listening thread!"); + return; + } +} + +Coordinator::~Coordinator() { + pthread_cancel(prochaseId); + void *res = 0; + while (res != PTHREAD_CANCELED) { + pthread_join(prochaseId, &res); + } + + FileClose(socket_fd); + // logging->elog("-----for debug: fd %d is closed", socket_fd); + // std::cout<<"in "<<__FILE__<<":"<<__LINE__;printf("-----for debug: fd %d + // is closed\n", socket_fd); + delete framework; + delete endpoint; +} +bool Coordinator::PrepareTheSocket() { + libconfig::Config cfg; + cfg.readFile(Config::config_file.c_str()); + std::string master_ip = (const char *)cfg.lookup("coordinator.ip"); + std::string master_port = (const char *)cfg.lookup("coordinator.port"); + + struct hostent *host; + struct sockaddr_in my_addr; + + if ((socket_fd = socket(AF_INET, SOCK_STREAM, 0)) == -1) { + logging->elog("socket create errors!\n"); + return false; + } + my_addr.sin_family = AF_INET; + my_addr.sin_port = htons(atoi(master_port.c_str())); + my_addr.sin_addr.s_addr = INADDR_ANY; + + bzero(&(my_addr.sin_zero), 8); + + /* Enable address reuse */ + int on = 1; + setsockopt(socket_fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)); + + if (bind(socket_fd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == + -1) { + logging->elog("bind errors!\n"); + return false; + } + + if (listen(socket_fd, 100) == -1) { + logging->elog("listen errors!\n"); + return false; + } + + logging->log("Coordinator(%s:%d): PrepareTheSocket() is successful.", + master_ip.c_str(), atoi(master_port.c_str())); + + return true; +} +bool Coordinator::SetupTheTheron() { + std::string ip_port; + std::string ip = Environment::getInstance()->getIp(); + std::ostringstream port; + port << PortManager::getInstance()->applyPort(); + EndPointPort = port.str(); + ip_port = std::string("tcp://") + ip + ":" + port.str(); + + logging->log("[Coordinator]: Now is initializing the Theron EndPoint as %s", + ip_port.c_str()); + + endpoint = + new Theron::EndPoint((ip + ":" + port.str()).c_str(), ip_port.c_str()); + + framework = new Theron::Framework(*endpoint); + framework->SetMaxThreads(1); + + logging->log("[Coordinator]: Now is initializing The CoordinatorActor"); + + return true; +} +bool Coordinator::CreateListeningThread() { + const int error = pthread_create(&prochaseId, NULL, ListeningNewNode, this); + + logging->log("[Coordinator]: The listening thread is created!"); + + return error == 0; +} + +void *Coordinator::ListeningNewNode(void *arg) { + Coordinator *Cthis = (Coordinator *)arg; + while (true) { + socklen_t sin_size = sizeof(struct sockaddr_in); + struct sockaddr_in remote_addr; + int socket_fd_new; + + Cthis->logging->log( + "[Coordinator]: I'm waiting for the new node's connection!"); + + if ((socket_fd_new = accept(Cthis->socket_fd, + (struct sockaddr *)&remote_addr, &sin_size)) == + -1) { + perror("accept errors!\n"); + return 0; + } + + Cthis->logging->log( + "[Coordinator]: New Node is connected! Waiting for the port infor.."); + + /*Set the timeout value, which is essential to guarantee the correctness + * when + * there are more nodes trying to connect the coordinate at the same time. + */ + struct timeval timeout = {1, 0}; + setsockopt(socket_fd_new, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout, + sizeof(struct timeval)); + + int recvbytes; + int port; + + int retry_time = 10; + int time = 0; + while ((recvbytes = + recv(socket_fd_new, &port, sizeof(port), MSG_WAITALL)) == -1) { + std::cout + << "New node " << inet_ntoa(remote_addr.sin_addr) + << " has connected, but the receiving the information times out!" + << strerror(errno) << std::endl; + if (++time >= retry_time) { + FileClose(socket_fd_new); + break; + } + } + if (time >= retry_time) continue; + if (recvbytes != sizeof(int)) { + std::cout << "Information received, but the length is not right!" + << std::endl; + FileClose(socket_fd_new); + // logging->elog("-----for debug: fd %d is closed", + // socket_fd_new); + continue; + } + + Cthis->logging->log("[Coordinator]: The EndPoint of the new node is %s:%d", + inet_ntoa(remote_addr.sin_addr), port); + + if (!Cthis->SendCoordinatorEndPointPort(socket_fd_new)) { + continue; + } + + std::ostringstream ost; + ost << port; + std::string new_node_ip = inet_ntoa(remote_addr.sin_addr); + std::string new_node_port = ost.str(); + + if (!Cthis->endpoint->Connect( + ("tcp://" + new_node_ip + ":" + new_node_port).c_str())) { + Cthis->logging->elog( + "Error occurs when the Coordinator EndPoint is connecting to the " + "EndPoint of the new node: " + "tcp://%s:%s", + new_node_ip.c_str(), new_node_port.c_str()); + Cthis->logging->log(" tcp://%s:%s", new_node_ip.c_str(), + new_node_port.c_str()); + } else { + Cthis->logging->log( + "[Coordinator]: The Coordinator EndPoint has successfully " + "connected " + "to the EndPoint of the new node!"); + } + + TimeOutReceiver *receiver = new TimeOutReceiver(Cthis->endpoint); + Theron::Catcher resultCatcher; + receiver->RegisterHandler(&resultCatcher, &Theron::Catcher::Push); + const int TimeOut = 1000; // ms + + /** + * TODO: In the current version, the Coordinator will repeatedly send + * message to each NodeConnectionActor until the feedback is received + * which means the target node has conducted new connection based on + * message received. + * However, if the target node is dead, the message will be sent + * repeatedly + * and infinitely. Additional code is needed to handle the dead node. + */ + for (unsigned i = 0; i < Cthis->PeersIpPort.size(); i++) { + NodeConnectionMessage new_NCM(new_node_ip, new_node_port); + NodeConnectionMessage old_NCM(Cthis->PeersIpPort[i].first, + Cthis->PeersIpPort[i].second); + receiver->Reset(); + Cthis->framework->Send( + NodeConnectionMessage::serialize(new_NCM), receiver->GetAddress(), + Theron::Address(("ConnectionActor://" + old_NCM.ip + ":" + + old_NCM.port).c_str())); + while (receiver->TimeOutWait(1, TimeOut) != 1) { + Cthis->framework->Send( + NodeConnectionMessage::serialize(new_NCM), receiver->GetAddress(), + Theron::Address(("ConnectionActor://" + old_NCM.ip + ":" + + old_NCM.port).c_str())); + } + + receiver->Reset(); + + Cthis->framework->Send( + NodeConnectionMessage::serialize(old_NCM), receiver->GetAddress(), + Theron::Address(("ConnectionActor://" + new_NCM.ip + ":" + + new_NCM.port).c_str())); + while (receiver->TimeOutWait(1, TimeOut) != 1) { + Cthis->framework->Send( + NodeConnectionMessage::serialize(old_NCM), receiver->GetAddress(), + Theron::Address(("ConnectionActor://" + new_NCM.ip + ":" + + new_NCM.port).c_str())); + } + } + + Cthis->PeersIpPort.push_back( + std::pair(new_node_ip, new_node_port)); + + Cthis->logging->log( + "[Coordinator]: New node %s;%s is successfully added to the Theron " + "communication network!", + new_node_ip.c_str(), new_node_port.c_str()); + + Cthis->SendReadyNotificationToNewNode(socket_fd_new, 'R'); + + // below code should be keep in case of dynamically selecting master + // loader + /*if (1 == Cthis->PeersIpPort.size()) { + // select the first new node as loader master + LOG(INFO) << "Congratulations! (" << new_node_ip << ", " << + new_node_port + << ") is selected to be master loader"; + if (Cthis->SendReadyNotificationToNewNode(socket_fd_new, 'M')) + LOG(INFO) << "succeed to send M notify this node"; + else + LOG(INFO) << "failed to send M notify this node"; + + } else { + if (Cthis->SendReadyNotificationToNewNode(socket_fd_new, 'S')) { + LOG(INFO) << "succeed to send S notify this node"; + } else { + LOG(INFO) << "failed to send S notify this node"; + } + }*/ + FileClose(socket_fd_new); + // logging->elog("-----for debug: fd %d is closed", socket_fd_new); + receiver->~TimeOutReceiver(); + } +} + +bool Coordinator::SendReadyNotificationToNewNode(int socket_new_node, + char signal) { + if (!send(socket_new_node, &signal, sizeof(char), 0)) { + logging->log( + "Error occurs when sending the Coordinate EndPoint port to the new " + "node!"); + } + + logging->log("[Coordinator]: The 'Ready' signal is sent to the new node!"); + + return true; +} +bool Coordinator::SendCoordinatorEndPointPort(int socket_new_node) { + int port = atoi(EndPointPort.c_str()); + + if (!send(socket_new_node, &port, sizeof(int), 0)) { + logging->elog( + "Error occurs when sending the Coordinate EndPoint port to the new " + "node!"); + } + + logging->log( + "[Coordinator]: The Coordinator EndPoint port [%d] is sent to the new " + "node!", + port); + + return true; +} +Coordinator::CoordinateActor::CoordinateActor(Theron::Framework *framework, + const char *Name) + : Actor(*framework, Name) {} diff --git a/Executor/Coordinator.h b/Executor/Coordinator.h new file mode 100755 index 000000000..6f0b3d198 --- /dev/null +++ b/Executor/Coordinator.h @@ -0,0 +1,57 @@ +/* + * Coordinator.h + * The Coordinator is the center for Theron connections. + * + * Accept all slaves' registration + * and send all slaves' Ip/Port to all slave, + * helping them to connect each other + * + * Created on: Aug 8, 2013 + * Author: wangli + */ + +#ifndef COORDINATOR_H_ +#define COORDINATOR_H_ + +#include "Theron/Theron.h" +#include +#include +#ifdef DMALLOC +#include "dmalloc.h" +#endif +#include "../common/Logging.h" + +class Coordinator { + public: + Coordinator(); + virtual ~Coordinator(); + + private: + bool PrepareTheSocket(); + bool SetupTheTheron(); + bool CreateListeningThread(); + bool SendReadyNotificationToNewNode(int socket_new_node, char signal); + + bool SendCoordinatorEndPointPort(int socket_new_node); + static void* ListeningNewNode(void* arg); + + private: + int socket_fd; + Theron::EndPoint* endpoint; + Theron::Framework* framework; + std::string EndPointPort; + std::vector > PeersIpPort; + Logging* logging; + pthread_t prochaseId; + /** + * Actor + */ + /////////////////////////////////////////////////////////////////////// + public: + class CoordinateActor : public Theron::Actor { + public: + CoordinateActor(Theron::Framework* framework, const char* Name); + }; +}; + +#endif /* COORDINATOR_H_ */ diff --git a/IndexManager/LogicalCSBIndexBuilding.cpp b/IndexManager/LogicalCSBIndexBuilding.cpp index 6138714c9..f8debc91e 100644 --- a/IndexManager/LogicalCSBIndexBuilding.cpp +++ b/IndexManager/LogicalCSBIndexBuilding.cpp @@ -59,8 +59,8 @@ PhysicalOperatorBase* LogicalCSBIndexBuilding::GetPhysicalPlan( bls_column_list.push_back(t_int); // chunk offset bls_column_list.push_back( blc_state.schema_->getcolumn(blc_state.key_indexing_)); // sec_code - bls_column_list.push_back(t_u_smallInt); // chunk offset - bls_column_list.push_back(t_u_smallInt); // chunk offset + bls_column_list.push_back(t_u_smallInt); // chunk offset + bls_column_list.push_back(t_u_smallInt); // chunk offset bls_state.schema_ = new SchemaFix(bls_column_list); bls_state.child_ = blc; diff --git a/Makefile.am b/Makefile.am index c10d72d8c..0390f85b4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -9,9 +9,8 @@ AM_CPPFLAGS=-fPIC -DTHERON_XS\ -I${CAF_HOME}/libcaf_core #-L/usr/local/lib \ #-I/usr/local/include -AM_LDFLAGS= -lc -lm -lrt -lcaf_core -lcaf_io -lpthread -lboost_serialization -lboost_date_time -lboost_system \ - -lconfig++ -lxs -lnuma -lreadline -lhistory -lz -ltinfo -Wl,--no-as-needed -ldl -rdynamic -lglog - +AM_LDFLAGS= -lc -lm -lrt -lpthread -lactivemq-cpp -lprofiler\ + -lconfig++ -lxs -lnuma -lreadline -lhistory -lz -ltinfo -Wl,--no-as-needed -ldl -rdynamic -lglog if OPT_TCMALLOC AM_CPPFLAGS+=-fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free @@ -25,7 +24,6 @@ LDADD = \ node_manager/libnodemanager.a \ common/serialization/libserialization.a \ Client/libclient.a \ - Client/Test/libtest.a \ Daemon/libdaemon.a \ Executor/libexecutor.a \ Executor/Test/libtest.a \ @@ -41,7 +39,6 @@ LDADD = \ storage/libstorage.a \ Resource/libresouce.a \ catalog/libcatalog.a \ - catalog/stat/libstat.a \ loader/libloader.a \ loader/test/libtest.a \ codegen/libcodegen.a\ @@ -58,11 +55,13 @@ LDADD = \ common/types/Test/libtest.a \ common/types/ttmath/libttmath.a \ utility/libutility.a \ + txn_manager/libtxnmanager.a \ ${CAF_HOME}/build/lib/libcaf_core.so \ ${CAF_HOME}/build/lib/libcaf_io.so \ ${BOOST_HOME}/stage/lib/libboost_serialization.a \ ${BOOST_HOME}/stage/lib/libboost_serialization.so \ ${BOOST_HOME}/stage/lib/libboost_system.so \ + ${BOOST_HOME}/stage/lib/libboost_date_time.so \ ${HADOOP_HOME}/lib/native/libhdfs.so\ ${JAVA_HOME}/jre/lib/amd64/server/libjvm.so\ ${GTEST_HOME}/libgtest.a \ @@ -72,16 +71,27 @@ LDADD = \ -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT -lLLVMTarget -lLLVMRuntimeDyld \ -lLLVMExecutionEngine -lLLVMMC -lLLVMObject -lLLVMBitReader -lLLVMCore -lLLVMSupport -lLLVMMCParser +LDADD += catalog/stat/libstat.a + +if OPT_DEBUG +LDADD += ${THERON_HOME}/Lib/libtherond.a +else +LDADD += ${THERON_HOME}/Lib/libtheron.a +endif include_HEADERS = Config.h \ Debug.h \ Environment.h \ IDsGenerator.h \ - configure.h + configure.h \ + txn_manager/txn.hpp \ + txn_manager/txn_server.hpp \ + txn_manager/txn_client.hpp -bin_PROGRAMS = claimsserver \ +bin_PROGRAMS = claimsserver \ client \ - test + test \ + txntest client_SOURCES = Client.cpp \ Environment.cpp \ @@ -98,14 +108,14 @@ test_SOURCES = Test/gtest_main.cpp\ IDsGenerator.cpp \ Config.cpp -#node_SOURCES = Config.cpp \ -# node_manager/node_main.cpp +txntest_SOURCES = txn_manager/txn_client_test.cpp + SUBDIRS= catalog Client common Daemon Executor IndexManager\ loader physical_operator logical_operator Resource \ -storage Test utility codegen sql_parser stmt_handler node_manager exec_tracker +storage Test utility codegen sql_parser stmt_handler txn_manager node_manager exec_tracker DIST_SUBDIRS = catalog Client common Daemon Executor IndexManager\ loader physical_operator logical_operator Resource \ -storage Test utility codegen sql_parser stmt_handler node_manager exec_tracker +storage Test utility codegen sql_parser stmt_handler txn_manager node_manager exec_tracker diff --git a/Resource/NodeTracker.cpp b/Resource/NodeTracker.cpp index f47cc3a86..4c411e481 100755 --- a/Resource/NodeTracker.cpp +++ b/Resource/NodeTracker.cpp @@ -8,8 +8,8 @@ #include "NodeTracker.h" #include +#include #include - #include "../Environment.h" NodeTracker* NodeTracker::instance_ = 0; NodeTracker::NodeTracker() : allocate_cur_(0) {} @@ -52,6 +52,7 @@ std::string NodeTracker::GetNodeIP(const NodeID& target) const { .first; #endif } + std::vector NodeTracker::GetNodeIDList() const { std::vector ret; #ifdef THERON @@ -66,3 +67,26 @@ std::vector NodeTracker::GetNodeIDList() const { #endif return ret; } + +RetCode NodeTracker::GetNodeAddr(const NodeID& target, + NodeAddress& node_addr) const { + boost::unordered_map::const_iterator it = + address_to_id_.cbegin(); + while (it != address_to_id_.cend()) { + if (it->second == target) { + node_addr = it->first; + return claims::common::rSuccess; + } + it++; + } + assert(false && "can't find node address according node ID"); + return claims::common::rFailure; +} + +RetCode NodeTracker::InsertRegisteredNode(const NodeID& node_id, + const NodeAddress& node_addr) { + address_to_id_[node_addr] = node_id; + LOG(INFO) << "inserted node:" << node_id + << ". Now size of addr2id is:" << address_to_id_.size(); + return claims::common::rSuccess; +} diff --git a/Resource/NodeTracker.h b/Resource/NodeTracker.h index 6c108a567..a08c39516 100755 --- a/Resource/NodeTracker.h +++ b/Resource/NodeTracker.h @@ -9,29 +9,37 @@ #ifndef NODETRACKER_H_ #define NODETRACKER_H_ +#include #include #include -#include + +#include "../common/error_define.h" #include "../common/ids.h" #ifdef DMALLOC -#include "dmalloc.h" +#include "./dmalloc.h" #endif -typedef std::string NodeIP;//TODO: may use ip + port to support multiple instances on a single node. +typedef std::string NodeIP; // TODO: may use ip + port to support multiple + // instances on a single node. typedef int NodeID; class NodeTracker { -public: + public: + static NodeTracker* GetInstance(); + virtual ~NodeTracker(); + int RegisterNode(NodeAddress); + std::string GetNodeIP(const NodeID&) const; + RetCode GetNodeAddr(const NodeID&, NodeAddress& node_addr) const; + + RetCode InsertRegisteredNode(const NodeID& node_id, + const NodeAddress& node_addr); + + std::vector GetNodeIDList() const; - static NodeTracker* GetInstance(); - virtual ~NodeTracker(); - int RegisterNode(NodeAddress); - std::string GetNodeIP(const NodeID&)const; - std::vector GetNodeIDList()const; -private: - NodeTracker(); - boost::unordered_map address_to_id_; - unsigned allocate_cur_; - static NodeTracker* instance_; + private: + NodeTracker(); + boost::unordered_map address_to_id_; + unsigned allocate_cur_; + static NodeTracker* instance_; }; #endif /* NODETRACKER_H_ */ diff --git a/Resource/ResourceManagerMaster.cpp b/Resource/ResourceManagerMaster.cpp index 5cbb41f19..7135e5ac8 100755 --- a/Resource/ResourceManagerMaster.cpp +++ b/Resource/ResourceManagerMaster.cpp @@ -5,11 +5,15 @@ * Author: wangli */ -#include "ResourceManagerMaster.h" +#include "./ResourceManagerMaster.h" +#include #include - +#include +#include "caf/io/all.hpp" +#include "../Config.h" #include "../Environment.h" +#include "../loader/load_packet.h" ResourceManagerMaster::ResourceManagerMaster() { node_tracker_ = NodeTracker::GetInstance(); } @@ -48,7 +52,6 @@ bool ResourceManagerMaster::ApplyDiskBuget(NodeID target, unsigned size_in_mb) { if (node_to_resourceinfo_[target]->disk.take(size_in_mb)) return true; return false; } - bool ResourceManagerMaster::ReturnDiskBuget(NodeID target, unsigned size_in_mb) { if (node_to_resourceinfo_.find(target) == node_to_resourceinfo_.cend()) @@ -80,23 +83,23 @@ bool ResourceManagerMaster::RegisterDiskBuget(NodeID report_node_id, unsigned size_in_mb) { if (node_to_resourceinfo_.find(report_node_id) == node_to_resourceinfo_.end()) { - LOG(WARNING) << "target slave " << report_node_id << " does not exists!"; + /* target slave does not exists*/ return false; } node_to_resourceinfo_[report_node_id]->disk.initialize(size_in_mb); - LOG(INFO) << "Node(id= " << report_node_id - << ") reports its disk capacity=" << size_in_mb; + DLOG(INFO) << "Node(id=" << report_node_id + << ") reports its disk capacity=" << size_in_mb; return true; } bool ResourceManagerMaster::RegisterMemoryBuget(NodeID report_node_id, unsigned size_in_mb) { if (node_to_resourceinfo_.find(report_node_id) == node_to_resourceinfo_.end()) { - LOG(WARNING) << "target slave " << report_node_id << " does not exists!"; + /* target slave does not exists*/ return false; } node_to_resourceinfo_[report_node_id]->memory.initialize(size_in_mb); - LOG(INFO) << "Node(id= " << report_node_id - << ") reports its memory capacity=" << size_in_mb; + DLOG(INFO) << "Node(id=" << report_node_id + << ") reports its memory capacity=" << size_in_mb; return true; } diff --git a/Resource/ResourceManagerSlave.cpp b/Resource/ResourceManagerSlave.cpp index 8f547fa52..1b885f13d 100755 --- a/Resource/ResourceManagerSlave.cpp +++ b/Resource/ResourceManagerSlave.cpp @@ -8,13 +8,19 @@ #include "ResourceManagerSlave.h" #include +#include +#include #include "../Environment.h" #include "../node_manager/base_node.h" #include "caf/io/all.hpp" #include "caf/all.hpp" -using caf::after; +#include "../Config.h" +#include "../loader/load_packet.h" + using caf::io::remote_actor; +using claims::loader::RegNodeAtom; +using caf::after; using claims::NodeAddr; using claims::OkAtom; using claims::StorageBudgetAtom; @@ -40,3 +46,61 @@ void InstanceResourceManager::ReportStorageBudget( void InstanceResourceManager::setStorageBudget(unsigned long memory, unsigned long disk) {} + +// TODO(Yukai): insert the below code into current version +NodeID InstanceResourceManager::Register() { + // NodeID ret = 10; + // TimeOutReceiver receiver(Environment::getInstance()->getEndPoint()); + // Theron::Catcher resultCatcher; + // receiver.RegisterHandler(&resultCatcher, &Theron::Catcher::Push); + // + // std::string ip = Environment::getInstance()->getIp(); + // unsigned port = Environment::getInstance()->getPort(); + // NodeRegisterMessage message(ip, port); + // + // DLOG(INFO) << "resourceManagerSlave is going to register (" << ip << "," + // << port << ")to master"; + // framework_->Send(message, receiver.GetAddress(), + // Theron::Address("ResourceManagerMaster")); + // Theron::Address from; + // if (receiver.TimeOutWait(1, 1000) == 1) { + // resultCatcher.Pop(ret, from); + // logging_->log( + // "Successfully registered to the master, the allocated id =%d.", + // ret); + // + // // send all node info to master loader + // DLOG(INFO) << "going to send node info to (" << Config::master_loader_ip + // << ":" << Config::master_loader_port << ")"; + NodeID ret = 10; + int retry_max_time = 10; + int time = 0; + while (1) { + try { + caf::actor master_actor = + remote_actor(Config::master_loader_ip, Config::master_loader_port); + caf::scoped_actor self; + self->sync_send( + master_actor, RegNodeAtom::value, + NodeAddress(Environment::getInstance()->getIp(), + to_string(Environment::getInstance()->getPort())), + ret).await([&](int r) { + LOG(INFO) << "sent node info and received response"; + }); + break; + } catch (exception& e) { + cout << "new remote actor " << Config::master_loader_ip << "," + << Config::master_loader_port << "failed for " << ++time << " time. " + << e.what() << endl; + usleep(100 * 1000); + if (time >= retry_max_time) return false; + } + } + + return ret; + // } else { + // logging_->elog("Failed to get NodeId from the master."); + // cerr << "Failed to get NodeId from the master." << endl; + // return -1; + // } +} diff --git a/Resource/ResourceManagerSlave.h b/Resource/ResourceManagerSlave.h index 620933dc9..8e96a335b 100755 --- a/Resource/ResourceManagerSlave.h +++ b/Resource/ResourceManagerSlave.h @@ -8,6 +8,7 @@ #ifndef RESOURCEMANAGERSLAVE_H_ #define RESOURCEMANAGERSLAVE_H_ #include "../common/Message.h" +#include "../Resource/NodeTracker.h" #include "CPUResource.h" typedef int NodeID; /* @@ -21,6 +22,8 @@ class InstanceResourceManager { void ReportStorageBudget(StorageBudgetMessage&); void setStorageBudget(unsigned long memory, unsigned long disk); + NodeID Register(); + private: CPUResourceManager cpu_resource_; }; diff --git a/Server.cpp b/Server.cpp index aa9f9a79e..adb327a20 100644 --- a/Server.cpp +++ b/Server.cpp @@ -2,6 +2,7 @@ #include #include #include +#include // #include "Test/set_up_environment.h" #include "./Test/TestMain.cpp" #include "common/log/logging.h" @@ -100,21 +101,21 @@ int main(int argc, char** argv) { actor = "slave"; #ifndef FORK + std::string cmd; if (master) { Environment::getInstance(master); // create_poc_data_four_partitions(); // create_poc_data_one_partitions(); // print_welcome(); // ExecuteLogicalQueryPlan(); - // while (std::cin.get() != 'q') sleep(1); - // } else { - // Environment::getInstance(master); - // while (std::cin.get() != 'q') sleep(1); - // } - while (1) sleep(1); + + while (std::cin.get() != 'q') { + sleep(1); + } } else { Environment::getInstance(master); - while (1) sleep(1); + while (std::cin.get() != 'q') sleep(1); + } #else int pid = fork(); diff --git a/Test/TestSuit/hash_table_test.h b/Test/TestSuit/hash_table_test.h index 26528d7c5..c768c1bb7 100644 --- a/Test/TestSuit/hash_table_test.h +++ b/Test/TestSuit/hash_table_test.h @@ -164,43 +164,43 @@ static void startup_catalog() { 1); // G1 catalog->add_table(table_2); - for (unsigned i = 0; i < table_1->getProjectoin(0) + for (unsigned i = 0; i < table_1->getProjection(0) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(0) - ->getProjectoin(0) + ->getProjection(0) ->getPartitioner() ->RegisterPartition(i, 2); } - for (unsigned i = 0; i < table_1->getProjectoin(1) + for (unsigned i = 0; i < table_1->getProjection(1) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(0) - ->getProjectoin(1) + ->getProjection(1) ->getPartitioner() ->RegisterPartition(i, 6); } // sb_table - for (unsigned i = 0; i < table_2->getProjectoin(0) + for (unsigned i = 0; i < table_2->getProjection(0) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(1) - ->getProjectoin(0) + ->getProjection(0) ->getPartitioner() ->RegisterPartition(i, 2); } - for (unsigned i = 0; i < table_2->getProjectoin(1) + for (unsigned i = 0; i < table_2->getProjection(1) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(1) - ->getProjectoin(1) + ->getProjection(1) ->getPartitioner() ->RegisterPartition(i, 6); } @@ -229,7 +229,7 @@ void* insert_into_hash_table_from_projection(void* argment) { const unsigned bucketsize = 256 - 8; TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("sb"); - Schema* schema = table->getProjectoin(1)->getSchema(); + Schema* schema = table->getProjection(1)->getSchema(); *arg.hash_table = generate_hashtable(schema->getTupleMaxSize(), nbuckets, bucketsize); } @@ -287,17 +287,17 @@ static double projection_scan(unsigned degree_of_parallelism) { printf("nthread=%d\n", nthreads); TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("sb"); - Schema* schema = table->getProjectoin(1)->getSchema(); + Schema* schema = table->getProjection(1)->getSchema(); // BasicHashTable* // hashtable=generate_hashtable(schema->getTupleMaxSize(),nbuckets,bucketsize); - LogicalScan* scan = new LogicalScan(table->getProjectoin(1)); + LogicalScan* scan = new LogicalScan(table->getProjection(1)); scan->GetPlanContext(); PhysicalOperatorBase* warm_up_iterator = scan->GetPhysicalPlan(1024 * 64); PhysicalProjectionScan::State ps_state; ps_state.block_size_ = 1024 * 64; - ps_state.projection_id_ = table->getProjectoin(1)->getProjectionID(); + ps_state.projection_id_ = table->getProjection(1)->getProjectionID(); ps_state.schema_ = schema; BlockStreamBase* block_for_asking = @@ -314,7 +314,7 @@ static double projection_scan(unsigned degree_of_parallelism) { arg.schema = schema; arg.partition_reader = BlockManager::getInstance() ->GetPartitionHandle(PartitionID( - table->getProjectoin(1)->getProjectionID(), 0)) + table->getProjection(1)->getProjectionID(), 0)) ->CreateAtomicReaderIterator(); arg.barrier = new Barrier(nthreads); pthread_t pid[1000]; diff --git a/Test/TestSuit/in_segment_scalability_test.cpp b/Test/TestSuit/in_segment_scalability_test.cpp index c553ce0e8..56c031ab8 100644 --- a/Test/TestSuit/in_segment_scalability_test.cpp +++ b/Test/TestSuit/in_segment_scalability_test.cpp @@ -21,9 +21,9 @@ static double lineitem_scan_self_join() { TableDescriptor* table_right = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); - LogicalOperator* scan_right = new LogicalScan(table_right->getProjectoin(0)); + LogicalOperator* scan_right = new LogicalScan(table_right->getProjection(0)); LogicalFilter::Condition filter_condition_1; filter_condition_1.add(table->getAttribute("row_id"), AttributeComparator::EQ, @@ -66,9 +66,9 @@ static double sb_scan_self_join() { TableDescriptor* table_right = Environment::getInstance()->getCatalog()->getTable("sb"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); - LogicalOperator* scan_right = new LogicalScan(table_right->getProjectoin(0)); + LogicalOperator* scan_right = new LogicalScan(table_right->getProjection(0)); LogicalFilter::Condition filter_condition_1; filter_condition_1.add(table->getAttribute("row_id"), AttributeComparator::EQ, @@ -111,7 +111,7 @@ static double lineitem_scan_aggregation() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); std::vector group_by_attributes; // group_by_attributes.push_back(table->getAttribute("L_RETURNFLAG")); @@ -157,7 +157,7 @@ static double lineitem_scan_filter() { Environment::getInstance()->getCatalog()->getTable("LINEITEM"); // printf("Tuple // size:%d\n",table->getProjectoin(0)->getSchema()->getTupleMaxSize()); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); LogicalFilter::Condition filter_condition_1; filter_condition_1.add(table->getAttribute("row_id"), AttributeComparator::EQ, @@ -188,7 +188,7 @@ static double sb_scan_filter() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("sb"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); // printf("Tuple // size:%d\n",table->getProjectoin(0)->getSchema()->getTupleMaxSize()); @@ -225,7 +225,7 @@ static double sb_scan_aggregation() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("sb"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); std::vector group_by_attributes; // group_by_attributes.push_back(table->getAttribute("L_RETURNFLAG")); @@ -331,7 +331,7 @@ static void test_block_construct() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("sb"); - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); scan->GetPlanContext(); PhysicalOperatorBase* s = scan->GetPhysicalPlan(64 * 1024); @@ -339,7 +339,7 @@ static void test_block_construct() { std::vector vect; BlockStreamBase* block = BlockStreamBase::createBlock( - table->getProjectoin(0)->getSchema(), 64 * 1024); + table->getProjection(0)->getSchema(), 64 * 1024); s->Open(); while (s->Next(block)) ; diff --git a/Test/common/issue27.cpp b/Test/common/issue27.cpp index b57c950fc..499beb4b7 100644 --- a/Test/common/issue27.cpp +++ b/Test/common/issue27.cpp @@ -38,7 +38,7 @@ static void query_select_aggregation() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); //===========================scan=========================== - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); //==========================project========================= vector > expr_list1; @@ -261,9 +261,9 @@ static void init_single_node_tpc_h_envoriment_(bool master = true) { catalog->add_table(table_1); for (unsigned i = 0; - i < table_1->getProjectoin(0)->getPartitioner()->getNumberOfPartitions(); + i < table_1->getProjection(0)->getPartitioner()->getNumberOfPartitions(); i++) { - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition( + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition( i, 5); } } @@ -303,9 +303,9 @@ static void init_multi_node_tpc_h_envoriment_(bool master = true) { catalog->add_table(table_1); for (unsigned i = 0; - i < table_1->getProjectoin(0)->getPartitioner()->getNumberOfPartitions(); + i < table_1->getProjection(0)->getPartitioner()->getNumberOfPartitions(); i++) { - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition( + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition( i, 3); } } diff --git a/Test/common/issue27_sort.cpp b/Test/common/issue27_sort.cpp index 85615faff..5eb86e764 100644 --- a/Test/common/issue27_sort.cpp +++ b/Test/common/issue27_sort.cpp @@ -41,7 +41,7 @@ static void query_select_sort() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); //===========================scan=========================== - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); //==========================project========================= vector > expr_list1; @@ -124,7 +124,7 @@ static void query_select_sort_string() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); //===========================scan=========================== - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); //==========================project========================= vector > expr_list1; @@ -262,9 +262,9 @@ static void init_single_node_tpc_h_envoriment_sort(bool master = true) { catalog->add_table(table_1); for (unsigned i = 0; - i < table_1->getProjectoin(0)->getPartitioner()->getNumberOfPartitions(); + i < table_1->getProjection(0)->getPartitioner()->getNumberOfPartitions(); i++) { - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition( + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition( i, 5); } } diff --git a/Test/common/issue27ing.cpp b/Test/common/issue27ing.cpp index 393b635de..d5c1bd17f 100644 --- a/Test/common/issue27ing.cpp +++ b/Test/common/issue27ing.cpp @@ -38,7 +38,7 @@ static void query_select_fzh() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); //===========================scan=========================== - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); //==========================project========================= vector > expr_list1; @@ -157,7 +157,7 @@ static void query_select_aggregation_ing() { TableDescriptor* table = Environment::getInstance()->getCatalog()->getTable("LINEITEM"); //===========================scan=========================== - LogicalOperator* scan = new LogicalScan(table->getProjectoin(0)); + LogicalOperator* scan = new LogicalScan(table->getProjection(0)); //==========================project========================= vector > expr_list1; @@ -383,9 +383,9 @@ static void init_single_node_tpc_h_envoriment_ing(bool master = true) { catalog->add_table(table_1); for (unsigned i = 0; - i < table_1->getProjectoin(0)->getPartitioner()->getNumberOfPartitions(); + i < table_1->getProjection(0)->getPartitioner()->getNumberOfPartitions(); i++) { - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition( + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition( i, 1); } } diff --git a/Test/gtest_main.cpp b/Test/gtest_main.cpp index 7de2856f4..72e255399 100644 --- a/Test/gtest_main.cpp +++ b/Test/gtest_main.cpp @@ -25,16 +25,16 @@ #include #include // #include "../codegen/codegen_test.h" -#include "./common/errno_test.h" -#include "../common/test/operate_test.h" -#include "../common/types/Test/data_type_test.h" -#include "../loader/test/data_injector_test.h" -//#include "../common/file_handle/test/disk_file_handle_imp_test.h" -//#include "../common/file_handle/test/hdfs_file_handle_imp_test.h" -//#include "../loader/test/single_thread_single_file_connector_test.h" -//#include "../loader/test/single_file_connector_test.h" +//#include "./common/errno_test.h" +//#include "../common/test/operate_test.h" +//#include "../common/types/Test/data_type_test.h" +// #include "../common/file_handle/test/disk_file_handle_imp_test.h" +// #include "../common/file_handle/test/hdfs_file_handle_imp_test.h" +// #include "../loader/test/single_thread_single_file_connector_test.h" +// #include "../loader/test/single_file_connector_test.h" #include "./iterator/elastic_iterator_model_test.h" -//#include "../loader/test/table_file_connector_test.h" +// #include "../loader/test/data_ingestion_test.h" +// #include "../loader/test/table_file_connector_test.h" #define GLOG_NO_ABBREVIATED_SEVERITIES #include "../common/log/logging.h" diff --git a/Test/set_up_environment.h b/Test/set_up_environment.h index 27634cea9..daa661694 100644 --- a/Test/set_up_environment.h +++ b/Test/set_up_environment.h @@ -139,27 +139,27 @@ static void create_poc_data_one_partitions(){ catalog->add_table(table_2); - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); // catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,0); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(0)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } //sb_table - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(1)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } } @@ -292,27 +292,27 @@ static void create_poc_data_four_partitions(){ catalog->add_table(table_2); - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); // catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,0); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(0)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } //sb_table - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(1)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } } @@ -478,27 +478,27 @@ static void startup_mulitple_node_environment_of_poc(){ catalog->add_table(table_2); - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); // catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,0); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(0)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } //sb_table - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,2); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,2); } - for(unsigned i=0;igetProjectoin(1)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(1)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(1)->getPartitioner()->RegisterPartition(i,6); + catalog->getTable(1)->getProjection(1)->getPartitioner()->RegisterPartition(i,6); } } } @@ -647,43 +647,43 @@ static void startup_single_node_environment_of_tpch(bool master=true){ //T0 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,3); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,3); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(2)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,15); + catalog->getTable(2)->getProjection(0)->getPartitioner()->RegisterPartition(i,15); } //T3 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(3)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,3); + catalog->getTable(3)->getProjection(0)->getPartitioner()->RegisterPartition(i,3); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(4)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,19); + catalog->getTable(4)->getProjection(0)->getPartitioner()->RegisterPartition(i,19); } //T6 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_6->getProjectoin(0)->getPartitioner()->RegisterPartition(i,93); + table_6->getProjection(0)->getPartitioner()->RegisterPartition(i,93); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_7->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_7->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_8->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_8->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } catalog->saveCatalog(); } @@ -832,43 +832,43 @@ static void startup_single_node_one_partition_environment_of_tpch(bool master=tr //T0 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,3); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,3); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(2)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,15); + catalog->getTable(2)->getProjection(0)->getPartitioner()->RegisterPartition(i,15); } //T3 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(3)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,3); + catalog->getTable(3)->getProjection(0)->getPartitioner()->RegisterPartition(i,3); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(4)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,19); + catalog->getTable(4)->getProjection(0)->getPartitioner()->RegisterPartition(i,19); } //T6 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_6->getProjectoin(0)->getPartitioner()->RegisterPartition(i,93); + table_6->getProjection(0)->getPartitioner()->RegisterPartition(i,93); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_7->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_7->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_8->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_8->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } } @@ -932,19 +932,19 @@ static void startup_multiple_node_environment_of_stock(bool master=true){ - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(2)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(2)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(3)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,445); + catalog->getTable(3)->getProjection(0)->getPartitioner()->RegisterPartition(i,445); } catalog->saveCatalog(); @@ -1098,43 +1098,43 @@ static void startup_multiple_node_environment_of_tpch(bool master=true){ //T0 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(1)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + catalog->getTable(1)->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(2)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,15); + catalog->getTable(2)->getProjection(0)->getPartitioner()->RegisterPartition(i,15); } //T3 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(3)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,3); + catalog->getTable(3)->getProjection(0)->getPartitioner()->RegisterPartition(i,3); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - catalog->getTable(4)->getProjectoin(0)->getPartitioner()->RegisterPartition(i,19); + catalog->getTable(4)->getProjection(0)->getPartitioner()->RegisterPartition(i,19); } //T6 - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_6->getProjectoin(0)->getPartitioner()->RegisterPartition(i,93); + table_6->getProjection(0)->getPartitioner()->RegisterPartition(i,93); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_7->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_7->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } - for(unsigned i=0;igetProjectoin(0)->getPartitioner()->getNumberOfPartitions();i++){ + for(unsigned i=0;igetProjection(0)->getPartitioner()->getNumberOfPartitions();i++){ - table_8->getProjectoin(0)->getPartitioner()->RegisterPartition(i,1); + table_8->getProjection(0)->getPartitioner()->RegisterPartition(i,1); } // save catalog as a file diff --git a/catalog/Makefile.am b/catalog/Makefile.am index 156912654..16f8cf1fb 100644 --- a/catalog/Makefile.am +++ b/catalog/Makefile.am @@ -18,11 +18,7 @@ LDADD = ../storage/libstorage.a \ ../common/Schema/libschema.a \ ../loader/libloader.a \ ../common/file_handle/libfilehandle.a \ - ../common/libcommon.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.so \ - ${BOOST_HOME}/stage/lib/libboost_system.a \ - ${BOOST_HOME}/stage/lib/libboost_system.so + ../common/libcommon.a #DIR = ${shell /bin/pwd} #INCLUDES = -I${DIR}/ThirdParty diff --git a/catalog/Test/Makefile.am b/catalog/Test/Makefile.am index 6909a729e..afb027c06 100644 --- a/catalog/Test/Makefile.am +++ b/catalog/Test/Makefile.am @@ -16,11 +16,7 @@ LDADD = ../../logical_operator/liblogicalqueryplan.a \ ../stat/libstat.a \ ../libcatalog.a \ ../../common/libcommon.a \ - ../../utility/libutility.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.so \ - ${BOOST_HOME}/stage/lib/libboost_system.a \ - ${BOOST_HOME}/stage/lib/libboost_system.so + ../../utility/libutility.a noinst_LIBRARIES=libtest.a libtest_a_SOURCES = diff --git a/catalog/Test/statistic_manager_test.cpp b/catalog/Test/statistic_manager_test.cpp index f95f0310e..48fdad924 100755 --- a/catalog/Test/statistic_manager_test.cpp +++ b/catalog/Test/statistic_manager_test.cpp @@ -254,22 +254,22 @@ static int statistic_manager_test() { //////////////////ONE DAY//////////////////////////////////////////////// // cj_table // 4 partitions partitioned by order_no - for (unsigned i = 0; i < table_1->getProjectoin(0) + for (unsigned i = 0; i < table_1->getProjection(0) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(0) - ->getProjectoin(0) + ->getProjection(0) ->getPartitioner() ->RegisterPartition(i, 2); } - for (unsigned i = 0; i < table_1->getProjectoin(1) + for (unsigned i = 0; i < table_1->getProjection(1) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(0) - ->getProjectoin(1) + ->getProjection(1) ->getPartitioner() ->RegisterPartition(i, 6); } @@ -294,22 +294,22 @@ static int statistic_manager_test() { // } // sb_table - for (unsigned i = 0; i < table_2->getProjectoin(0) + for (unsigned i = 0; i < table_2->getProjection(0) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(1) - ->getProjectoin(0) + ->getProjection(0) ->getPartitioner() ->RegisterPartition(i, 2); } - for (unsigned i = 0; i < table_2->getProjectoin(1) + for (unsigned i = 0; i < table_2->getProjection(1) ->getPartitioner() ->getNumberOfPartitions(); i++) { catalog->getTable(1) - ->getProjectoin(1) + ->getProjection(1) ->getPartitioner() ->RegisterPartition(i, 6); } diff --git a/catalog/catalog.cpp b/catalog/catalog.cpp index a01eccc8c..e38583c76 100644 --- a/catalog/catalog.cpp +++ b/catalog/catalog.cpp @@ -263,11 +263,11 @@ RetCode Catalog::restoreCatalog() { } else if (!read_connector_->CanAccess()) { LOG(INFO) << "The catalog file and data file all are not existed" << endl; return rSuccess; - } else if (!IsDataFileExist()) { + } /* else if (!IsDataFileExist()) { LOG(WARNING) << "There are no data file while catalog file exists. " "The catalog file will be overwrite" << endl; return rSuccess; - } else { + }*/ else { EXEC_AND_ONLY_LOG_ERROR(ret, read_connector_->Open(), "failed to open catalog file: " << Config::catalog_file << " with Read mode"); @@ -354,24 +354,33 @@ void Catalog::GetAllTables(ostringstream& ostr) const { } } } -vector Catalog::GetAllTablesID()const -{ + +vector Catalog::getVisibleTablesIDs() const { vector table_id_list; - for (int id = 0; id < getTableCount(); ++id){ + for (int id = 0; id < getTableCount(); ++id) { auto it_tableid_to_table = tableid_to_table.find(id); if (tableid_to_table.end() != it_tableid_to_table) { string tbname = it_tableid_to_table->second->getTableName(); int len = tbname.length(); if (len >= 4 && tbname.substr(len - 4, len) == "_DEL" && - name_to_table.find(tbname.substr(0, len - 4)) != - name_to_table.cend()) { - // hide the deleted data table created by claims - }else{ + name_to_table.find(tbname.substr(0, len - 4)) != + name_to_table.cend()) { + // hide the deleted data table created by claims + } else { table_id_list.push_back(it_tableid_to_table->first); } } } return table_id_list; } + +vector Catalog::getAllTableIDs() const { + vector ids; + for (auto it = tableid_to_table.begin(); it != tableid_to_table.end(); it++) + ids.push_back(it->first); + + return ids; +} + } /* namespace catalog */ } /* namespace claims */ diff --git a/catalog/catalog.h b/catalog/catalog.h index f2db2974c..3208078e9 100644 --- a/catalog/catalog.h +++ b/catalog/catalog.h @@ -32,6 +32,7 @@ #define CATALOG_CATALOG_H_ #include #include +#include #include "../catalog/projection_binding.h" #include "../catalog/table.h" @@ -47,6 +48,7 @@ class SingleFileConnector; }; namespace catalog { +using std::vector; using loader::SingleFileConnector; class SingleFileConnector; @@ -84,17 +86,17 @@ class Catalog { TableDescriptor* getTable(const TableID&) const; TableDescriptor* getTable(const std::string& table_name) const; void GetAllTables(ostringstream& ostr) const; - vector GetAllTablesID()const; + vector getVisibleTablesIDs()const; ProjectionDescriptor* getProjection(const ProjectionID&) const; ProjectionBinding* getBindingModele() const; - + vector getAllTableIDs() const; /** * ATTENTION: this method do not return the number of existing table, * other than the next table'id * An example is: a table is dropped, but the return value don't change */ unsigned getTableCount() const { return table_id_allocator.table_id_curosr; } - + unsigned getNumberOfTable() const { return tableid_to_table.size();} RetCode saveCatalog(); // 2014-3-20---save as a file---by Yu RetCode restoreCatalog(); // 2014-3-20---restore from a file---by Yu void outPut(); diff --git a/catalog/partitioner.cpp b/catalog/partitioner.cpp index 86423dd2b..b8ba713d0 100644 --- a/catalog/partitioner.cpp +++ b/catalog/partitioner.cpp @@ -185,6 +185,32 @@ bool Partitioner::allPartitionBound() const { return true; } +void Partitioner::addPartitionCardinality(unsigned partition_index, + unsigned long value) { + partition_info_list[partition_index]->number_of_tuples_ += value; +} + +void Partitioner::addPartitionBlocks(unsigned partition_index, unsigned value) { + partition_info_list[partition_index]->number_of_blocks += value; +} + +void Partitioner::addPartitionChunks(unsigned partition_index, unsigned value) { + partition_info_list[partition_index]->number_of_blocks += value * 1024; +} + +void Partitioner::setPartitionCardinality(unsigned partition_index, + unsigned long value) { + partition_info_list[partition_index]->number_of_tuples_ = value; +} + +void Partitioner::setPartitionBlocks(unsigned partition_index, unsigned value) { + partition_info_list[partition_index]->number_of_blocks = value; +} + +void Partitioner::setPartitionChunks(unsigned partition_index, unsigned value) { + partition_info_list[partition_index]->number_of_blocks = value * 1024; +} + vector Partitioner::getPartitionIDList() { vector ret; ret.clear(); diff --git a/catalog/partitioner.h b/catalog/partitioner.h index 4f14cb962..7487b0dc1 100644 --- a/catalog/partitioner.h +++ b/catalog/partitioner.h @@ -279,7 +279,21 @@ class Partitioner { bool allPartitionBound() const; vector getPartitionIDList(); - vector getPartitionList(){ return partition_info_list; } + + vector getPartitionList() { return partition_info_list; } + + void addPartitionCardinality(unsigned partitoin_index, unsigned long value); + + void addPartitionBlocks(unsigned partitoin_index, unsigned value); + + void addPartitionChunks(unsigned partition_index, unsigned value); + + void setPartitionCardinality(unsigned partition_index, unsigned long value); + + void setPartitionBlocks(unsigned partition_index, unsigned value); + + void setPartitionChunks(unsigned partition_index, unsigned value); + private: Attribute *partition_key_; PartitionFunction *partition_function_; diff --git a/catalog/projection.cpp b/catalog/projection.cpp index b75f2ee21..95a3430f8 100644 --- a/catalog/projection.cpp +++ b/catalog/projection.cpp @@ -27,6 +27,8 @@ */ #include "../catalog/projection.h" + +#include #include #include @@ -77,6 +79,7 @@ bool ProjectionDescriptor::AllPartitionBound() const { } std::vector ProjectionDescriptor::getAttributeList() const { std::vector ret; + // DLOG(INFO) << "the length of column list is:" << column_list_.size(); for (unsigned i = 0; i < this->column_list_.size(); i++) { ret.push_back((Attribute)column_list_[i]); } diff --git a/catalog/projection_binding.cpp b/catalog/projection_binding.cpp index a037c9b4a..94f9b99fb 100644 --- a/catalog/projection_binding.cpp +++ b/catalog/projection_binding.cpp @@ -35,6 +35,12 @@ #include #include "../Environment.h" #include "../utility/maths.h" +#include "caf/io/all.hpp" + +#include "../Config.h" +#include "../loader/load_packet.h" +using caf::io::remote_actor; +using claims::loader::BindPartAtom; namespace claims { namespace catalog { @@ -142,8 +148,35 @@ bool ProjectionBinding::BindingEntireProjection( const unsigned number_of_chunks = part->getPartitionChunks(partition_off); BlockManagerMaster::getInstance()->SendBindingMessage( partition_id, number_of_chunks, desriable_storage_level, node_id); + /* update the information in Catalog*/ part->bindPartitionToNode(partition_off, node_id); + + + /* notify the master loader the binding info*/ + DLOG(INFO) << "going to send node info to (" << Config::master_loader_ip + << ":" << Config::master_loader_port << ")"; + int retry_max_time = 10; + int time = 0; + while (1) { + try { + caf::actor master_actor = remote_actor(Config::master_loader_ip, + Config::master_loader_port); + caf::scoped_actor self; + self->sync_send(master_actor, BindPartAtom::value, partition_id, + node_id).await([&](int r) { + LOG(INFO) << "sent bind part info and received response"; + }); + break; + } catch (exception& e) { + cout << "new remote actor " << Config::master_loader_ip << "," + << Config::master_loader_port << "failed for " << ++time + << " time. " << e.what() << endl; + usleep(100 * 1000); + if (time >= retry_max_time) return false; + } + } + } lock_.release(); diff --git a/catalog/table.cpp b/catalog/table.cpp index 63206e9ea..3e7552fa8 100755 --- a/catalog/table.cpp +++ b/catalog/table.cpp @@ -43,12 +43,10 @@ TableDescriptor::TableDescriptor() {} TableDescriptor::TableDescriptor(const string& name, const TableID table_id) : tableName(name), table_id_(table_id), row_number_(0) { - write_connector_ = new TableFileConnector( - Config::local_disk_mode ? FilePlatform::kDisk : FilePlatform::kHdfs, this, - common::kAppendFile); + InitConnector(); } -TableDescriptor::~TableDescriptor() {} +TableDescriptor::~TableDescriptor() { DELETE_PTR(write_connector_); } void TableDescriptor::addAttribute(Attribute attr) { LockGuard guard(update_lock_); @@ -224,5 +222,13 @@ Schema* TableDescriptor::getSchema() const { return new SchemaFix(columns); } +void TableDescriptor::InitConnector() { + if (NULL == write_connector_) { + write_connector_ = new TableFileConnector( + Config::local_disk_mode ? FilePlatform::kDisk : FilePlatform::kHdfs, + this, common::kAppendFile); + } +} + } /* namespace catalog */ } /* namespace claims */ diff --git a/catalog/table.h b/catalog/table.h index bf39e9250..8c0618a13 100755 --- a/catalog/table.h +++ b/catalog/table.h @@ -51,7 +51,7 @@ using claims::utility::LockGuard; namespace claims { namespace loader { -class DataInjector; +class DataIngestion; class TableFileConnector; }; @@ -59,7 +59,7 @@ namespace catalog { using claims::loader::TableFileConnector; class TableDescriptor { public: - friend class claims::loader::DataInjector; + friend class claims::loader::DataIngestion; friend class claims::loader::TableFileConnector; public: @@ -217,6 +217,8 @@ class TableDescriptor { TableFileConnector* write_connector_ = NULL; + void InitConnector(); + friend class boost::serialization::access; template void serialize(Archive& ar, const unsigned int version) { // NOLINT diff --git a/common/Block/Block.h b/common/Block/Block.h index a55a66638..f2e069eec 100755 --- a/common/Block/Block.h +++ b/common/Block/Block.h @@ -11,30 +11,29 @@ #include "dmalloc.h" #endif class Block { -public: - Block(unsigned BlockSize); - Block(const Block &block); - Block(const unsigned& size,const void* start); - virtual ~Block(); - void* getBlock()const; - void setBlock(void*); - unsigned getsize() const; - unsigned setsize(const unsigned& size) ; + public: + Block(unsigned BlockSize); + Block(const Block& block); + Block(const unsigned& size, const void* start); + virtual ~Block(); + void* getBlock() const; + void setBlock(void*); + unsigned getsize() const; + unsigned setsize(const unsigned& size); - bool isIsReference() const { - return isReference_; - } + bool isIsReference() const { return isReference_; } - void setIsReference(bool isReference); + void setIsReference(bool isReference); -protected: - unsigned BlockSize; - char* start; -private: - /* true, if it references to others, which means that the block does not need - * to free the memory reference in destructor. - */ - bool isReference_; + protected: + unsigned BlockSize; // don't include SchemeFix::tail_info + char* start; + + private: + /* true, if it references to others, which means that the block does not need + * to free the memory reference in destructor. + */ + bool isReference_; }; #endif /* BLOCK_H_ */ diff --git a/common/Block/BlockStream.cpp b/common/Block/BlockStream.cpp index 044f460a1..1b25f3287 100755 --- a/common/Block/BlockStream.cpp +++ b/common/Block/BlockStream.cpp @@ -62,9 +62,9 @@ BlockStreamBase* BlockStreamBase::createBlockWithDesirableSerilaizedSize( void* BlockStreamFix::getBlockDataAddress() { return start; } -// void BlockStreamFix::setBlockDataAddress(void* addr){ -// data_=(char*)addr; -//} +void BlockStreamFix::setBlockDataAddress(void* addr) { + start = reinterpret_cast(addr); +} bool BlockStreamFix::switchBlock(BlockStreamBase& block) { BlockStreamFix* blockfix = (BlockStreamFix*)█ diff --git a/common/Block/BlockStream.h b/common/Block/BlockStream.h index d6b5bdec5..cd8413ff5 100755 --- a/common/Block/BlockStream.h +++ b/common/Block/BlockStream.h @@ -160,7 +160,7 @@ class BlockStreamFix : public BlockStreamBase { return free_ + tuple_size_ > start + BlockSize - sizeof(tail_info); } void* getBlockDataAddress(); - // void setBlockDataAddress(void* addr); + void setBlockDataAddress(void* addr); bool switchBlock(BlockStreamBase& block); void copyBlock(void* addr, unsigned length); bool insert(void* dest, void* src, unsigned bytes); @@ -170,6 +170,7 @@ class BlockStreamFix : public BlockStreamBase { unsigned getSerializedBlockSize() const; unsigned getBlockCapacityInTuples() const; unsigned getTuplesInBlock() const; + inline unsigned getTupleSize() const {return tuple_size_;} /* construct the BlockStream from a storage level block, * which last four bytes indicate the number of tuples in the block.*/ void constructFromBlock(const Block& block); diff --git a/common/Makefile.am b/common/Makefile.am index 80da904dd..192d1cf75 100644 --- a/common/Makefile.am +++ b/common/Makefile.am @@ -21,7 +21,6 @@ endif # types/libtypes.a # ${BOOST_HOME}/stage/lib/libboost_serialization.a \ # ${BOOST_HOME}/stage/lib/libboost_serialization.so \ -# # ${GTEST_HOME}/libgtest.a noinst_LIBRARIES=libcommon.a diff --git a/common/Schema/Schema.h b/common/Schema/Schema.h index 55c3f8427..631296c53 100755 --- a/common/Schema/Schema.h +++ b/common/Schema/Schema.h @@ -7,11 +7,12 @@ #ifndef SCHEMA_H_ #define SCHEMA_H_ -#include #include #include #include #include +#include +#include #ifdef DMALLOC #include "dmalloc.h" #endif @@ -27,7 +28,7 @@ class Schema { enum schema_type { fixed, varaible }; Schema(const std::vector& columns); Schema(const Schema& r); - Schema(){}; + Schema() {} virtual ~Schema(); virtual unsigned getTupleMaxSize() const = 0; @@ -55,6 +56,13 @@ class Schema { virtual void addColumn(column_type ct, unsigned size){}; virtual void displayTuple(const void* tuple_start_address, const char* spliter = "|") const; + + virtual RetCode ToValue(std::string text_tuple, void* binary_tuple, + const string attr_separator) { + assert(false); + return claims::common::rFailure; + } + /** * @brief Method description: see more in its derived class */ @@ -63,14 +71,14 @@ class Schema { RawDataSource raw_data_source, vector& columns_validities) { assert(false); + return claims::common::rFailure; } - inline virtual void showAccum_off(){}; + inline virtual void showAccum_off() {} bool hasSameSchema(Schema* schema); std::vector columns; virtual std::string getColumnValue(const void* tuple_start_address, int i); - protected: private: friend class boost::serialization::access; template diff --git a/common/Schema/SchemaFix.cpp b/common/Schema/SchemaFix.cpp index eba9e8385..8288daad9 100755 --- a/common/Schema/SchemaFix.cpp +++ b/common/Schema/SchemaFix.cpp @@ -15,18 +15,11 @@ #include #include -#include "../../loader/data_injector.h" +#include "../../loader/data_ingestion.h" #include "../../utility/Timer.h" #include "../common/error_define.h" -using claims::loader::DataInjector; -using claims::common::rTooFewColumn; -using claims::common::rSuccess; -using claims::common::rIncorrectData; -using claims::common::rIncorrectData; -using claims::common::rInvalidNullData; -using claims::common::rTooLongData; -using claims::common::rTooManyColumn; -using claims::common::rInvalidInsertData; +using claims::loader::DataIngestion; +using namespace claims::common; // NOLINT // #define SCHEMA_FIX_DEBUG // #define SCHEMA_FIX_PERF @@ -101,12 +94,39 @@ int SchemaFix::getColumnOffset(unsigned index) const { return accum_offsets[index]; } +// WARNING: using carefully!!!!! +RetCode SchemaFix::ToValue(std::string text_tuple, void* binary_tuple, + const string attr_separator) { + string::size_type prev_pos = 0; + string::size_type pos = 0; + int attr_sep_length = attr_separator.length(); + + /** + * let's think : '|' is column separator, '\n' is line separator + * data format is always: xxx|xxx|xxx|......xxx|\n + */ + for (int i = 0; i < columns.size(); ++i) { + pos = text_tuple.find(attr_separator, prev_pos); + // correct + columns[i].operate->toValue( + binary_tuple + accum_offsets[i], + text_tuple.substr(prev_pos, pos - prev_pos).c_str()); + prev_pos = pos + attr_sep_length; + } + // PLOG_SF("check_and_to_value func time:" << temp << " us"); + return rSuccess; +} + /* * 检查源数据是否合法,如果来自kSQL, * 若出现error则直接返回, * 若只有warning,放入columns_validities, * 同时处理warning(字符串过长,截断;数字类型不在合法范围内设为默认值); * 如果来自kFile, 出现error将值设为默认值, 视为warning对待. + * + * TODO(ANYONE): check from the second column, because the first column is + * always row_id, which is generated by claims and is always valid. So + * AddRowId() should be called after this method---YuKai */ RetCode SchemaFix::CheckAndToValue(std::string text_tuple, void* binary_tuple, const string attr_separator, @@ -165,7 +185,9 @@ RetCode SchemaFix::CheckAndToValue(std::string text_tuple, void* binary_tuple, rInvalidInsertData == ret) { // error if (kSQL == raw_data_source) { // treated as error columns_validities.push_back(std::move(Validity(i, ret))); - ELOG(ret, "Data from SQL is for column whose index is " << i); + ELOG(ret, "Data:" << text_column + << " from SQL is for column whose index is " + << i); return ret; } else { // treated as warning and set default columns_validities.push_back(std::move(Validity(i, ret))); @@ -180,11 +202,11 @@ RetCode SchemaFix::CheckAndToValue(std::string text_tuple, void* binary_tuple, columns[i].operate->SetDefault(text_column); ret = rSuccess; } - // ATOMIC_ADD_SF(DataInjector::total_check_string_time_, + // ATOMIC_ADD_SF(DataIngestion::total_check_string_time_, // GetElapsedTimeInUs(check_string_time)); } } - // ATOMIC_ADD_SF(DataInjector::total_get_substr_time_, + // ATOMIC_ADD_SF(DataIngestion::total_get_substr_time_, // GetElapsedTimeInUs(get_substr_time)); // PLOG_SF("get_substr time:" << GetElapsedTimeInUs(get_substr_time)); @@ -198,7 +220,7 @@ RetCode SchemaFix::CheckAndToValue(std::string text_tuple, void* binary_tuple, << "\t Transfer: " << columns[i].operate->toString(binary_tuple + accum_offsets[i])); - // ATOMIC_ADD_SF(DataInjector::total_to_value_time_, + // ATOMIC_ADD_SF(DataIngestion::total_to_value_time_, // GetElapsedTimeInUs(to_value_time)); // PLOG_SF("just to_value time:" << GetElapsedTimeInUs(to_value_time)); // PLOG_SF("inner loop time:" << GetElapsedTimeInUs(get_substr_time)); @@ -206,7 +228,7 @@ RetCode SchemaFix::CheckAndToValue(std::string text_tuple, void* binary_tuple, // PLOG_SF("while loop time:" << GetElapsedTimeInUs(to_value_func_time)); - ATOMIC_ADD_SF(DataInjector::total_check_and_to_value_func_time_, + ATOMIC_ADD_SF(DataIngestion::total_check_and_to_value_func_time_, GetElapsedTimeInUs(to_value_func_time)); DLOG_SF("after all tovalue, prev_pos :" << (prev_pos == string::npos) << "prev_pos+1 :" diff --git a/common/Schema/SchemaFix.h b/common/Schema/SchemaFix.h index 0dda0ef4b..ae26f643c 100755 --- a/common/Schema/SchemaFix.h +++ b/common/Schema/SchemaFix.h @@ -54,6 +54,9 @@ class SchemaFix : public Schema { void addColumn(column_type ct, unsigned size); unsigned getColumnOffset(unsigned index); + RetCode ToValue(std::string text_tuple, void* binary_tuple, + const string attr_separator); + /** * @brief Method description: check the validity of raw data, maybe reset raw * data value to default or truncate raw data value depend on raw data diff --git a/common/Schema/Test/VariableSchema_test.cpp b/common/Schema/Test/VariableSchema_test.cpp index dd645e444..4dfa1b3c4 100644 --- a/common/Schema/Test/VariableSchema_test.cpp +++ b/common/Schema/Test/VariableSchema_test.cpp @@ -55,16 +55,16 @@ static int variable_schema_test() { catalog->add_table(table_1); for (unsigned i = 0; - i < table_1->getProjectoin(0)->getPartitioner()->getNumberOfPartitions(); + i < table_1->getProjection(0)->getPartitioner()->getNumberOfPartitions(); i++) { - catalog->getTable(0)->getProjectoin(0)->getPartitioner()->RegisterPartition( + catalog->getTable(0)->getProjection(0)->getPartitioner()->RegisterPartition( i, 1); } ProjectionBinding* pb = new ProjectionBinding(); cout << "in ======================================" << endl; pb->BindingEntireProjection( - catalog->getTable(0)->getProjectoin(0)->getPartitioner(), HDFS); + catalog->getTable(0)->getProjection(0)->getPartitioner(), HDFS); cout << "in ======================================" << endl; @@ -74,7 +74,7 @@ static int variable_schema_test() { column_list.push_back(column_type(t_double)); column_list.push_back(column_type(t_string)); PhysicalProjectionScan::State scan_state( - catalog->getTable(0)->getProjectoin(0)->getProjectionID(), + catalog->getTable(0)->getProjection(0)->getProjectionID(), new SchemaVar(column_list), 64 * 1024 - sizeof(unsigned)); PhysicalOperatorBase* scan = new PhysicalProjectionScan(scan_state); //------------------------------------------------------------------ diff --git a/common/Schema/TupleConvertor.cpp b/common/Schema/TupleConvertor.cpp index 9d3aa9ccb..77e4472ae 100755 --- a/common/Schema/TupleConvertor.cpp +++ b/common/Schema/TupleConvertor.cpp @@ -8,30 +8,34 @@ #include "TupleConvertor.h" TupleConvertor::TupleConvertor() { - // TODO Auto-generated constructor stub - + // TODO Auto-generated constructor stub } TupleConvertor::~TupleConvertor() { - // TODO Auto-generated destructor stub + // TODO Auto-generated destructor stub } -void TupleConvertor::sub_tuple(const Schema*& src_s,const Schema*& des_s,const void* const& tuple, void* desc, std::vector index){ - for(unsigned i=0;igetColumnAddess(index[i],tuple); - void* const desc_column_address=des_s->getColumnAddess(i,desc); - des_s->getcolumn(i).operate->assignment(source_column_address,desc_column_address); - } +void TupleConvertor::sub_tuple(const Schema*& src_s, const Schema*& des_s, + const void* const& tuple, void* desc, + std::vector index) { + for (unsigned i = 0; i < index.size(); i++) { + const void* const source_column_address = + src_s->getColumnAddess(index[i], tuple); + void* const desc_column_address = des_s->getColumnAddess(i, desc); + des_s->getcolumn(i) + .operate->assignment(source_column_address, desc_column_address); + } } -SubTuple::SubTuple(Schema* srouce, Schema* target, std::vector index) -:source_schema_(srouce),target_schema_(target),index_(index){ - -} +SubTuple::SubTuple(Schema* source, Schema* target, std::vector index) + : source_schema_(source), target_schema_(target), index_(index) {} -void SubTuple::getSubTuple(void*& tuple, void*& target){ - for(unsigned i=0;igetColumnAddess(index_[i],tuple); - void* const desc_column_address=target_schema_->getColumnAddess(i,target); - target_schema_->getcolumn(i).operate->assignment(source_column_address,desc_column_address); - } +void SubTuple::getSubTuple(void*& tuple, void*& target) { + for (unsigned i = 0; i < index_.size(); i++) { + const void* const source_column_address = + source_schema_->getColumnAddess(index_[i], tuple); + void* const desc_column_address = + target_schema_->getColumnAddess(i, target); + target_schema_->getcolumn(i) + .operate->assignment(source_column_address, desc_column_address); + } } diff --git a/common/Schema/TupleConvertor.h b/common/Schema/TupleConvertor.h index 0c314e3d8..a66132afc 100755 --- a/common/Schema/TupleConvertor.h +++ b/common/Schema/TupleConvertor.h @@ -9,35 +9,41 @@ #ifndef TUPLECONVENTOR_H_ #define TUPLECONVENTOR_H_ #include + #ifdef DMALLOC #include "dmalloc.h" #endif #include "Schema.h" class TupleConvertor { -public: - TupleConvertor(); - virtual ~TupleConvertor(); + public: + TupleConvertor(); + virtual ~TupleConvertor(); - /* - * extract sub-tuple from a tuple. The index for the columns that appear in the desc tuple are specified in - * parameter index in form of array. E.g., index={0,3,4} means that the remainning columns are the 1st, 3rd - * and 4th. - * src_s and des_c describe the schema for tuple and desc tuple. - * memory of desc tuple shoulbe be allocated before calling this method. - */ - void sub_tuple(const Schema*& src_s,const Schema*& des_c,const void* const& tuple, void* desc, std::vector index); -// void sub_tuple(const Schema* const src_s,const Schema* const des_s, void*& const tuple,void*& const desc); + /* + * extract sub-tuple from a tuple. The index for the columns that appear in + * the desc tuple are specified in + * parameter index in form of array. E.g., index={0,3,4} means that the + * remainning columns are the 1st, 3rd + * and 4th. + * src_s and des_c describe the schema for tuple and desc tuple. + * memory of desc tuple shoulbe be allocated before calling this method. + */ + void sub_tuple(const Schema*& src_s, const Schema*& des_c, + const void* const& tuple, void* desc, + std::vector index); + // void sub_tuple(const Schema* const src_s,const Schema* const des_s, + // void*& const tuple,void*& const desc); }; -class SubTuple{ -public: - SubTuple(Schema* srouce, Schema* target, std::vector index); - void getSubTuple(void*& tuple, void*& target); -private: - Schema* source_schema_; - Schema* target_schema_; - std::vector index_; +class SubTuple { + public: + SubTuple(Schema* source, Schema* target, std::vector index); + void getSubTuple(void*& tuple, void*& target); + private: + Schema* source_schema_; + Schema* target_schema_; + std::vector index_; }; #endif /* TUPLECONVENTOR_H_ */ diff --git a/common/error_define.h b/common/error_define.h index 046f78f24..f1e8821e1 100644 --- a/common/error_define.h +++ b/common/error_define.h @@ -59,6 +59,15 @@ typedef int RetCode; // means return code } \ } while (0) +#define EXEC_AND_DLOG(ret, f, info, err_info) \ + do { \ + if (rSuccess == (ret = f)) { \ + DLOG(INFO) << info << std::endl; \ + } else { \ + ELOG(ret, err_info) \ + } \ + } while (0) + #define EXEC_AND_LOG_RETURN(ret, f, info, err_info) \ do { \ if (rSuccess == (ret = f)) { \ @@ -69,6 +78,16 @@ typedef int RetCode; // means return code } \ } while (0) +#define EXEC_AND_DLOG_RETURN(ret, f, info, err_info) \ + do { \ + if (rSuccess == (ret = f)) { \ + DLOG(INFO) << info << std::endl; \ + } else { \ + ELOG(ret, err_info) \ + return ret; \ + } \ + } while (0) + #define EXEC_AND_PLOG(ret, f, info, err_info) \ do { \ if (rSuccess == (ret = f)) { \ @@ -203,6 +222,9 @@ const int rFileInUsing = -102; const int rResourceIsLocked = -103; +const int rSentMessageError = -104; +const int rReceiveMessageError = -105; + // schema associated const int rEmptyAttributeName = -501; const int rEmptyTableAlias = -502; @@ -252,6 +274,18 @@ const int rInvalidNullData = -2008; const int rTooFewColumn = -2009; const int rTooManyColumn = -2010; +const int rLinkTmTimeout = -2499; +const int rLinkTmFail = -2500; +const int rBeginIngestTxnFail = -2501; +const int rCommitIngestTxnFail = -2502; +const int rAbortIngestTxnFail = -2503; +const int rBeginQueryFail = -2504; +const int rBeginCheckpointFail = -2505; +const int rCommitCheckpointFail = -2506; + +const int rGetFileHandleFail = -2507; +const int rGetMemoryHandleFail = -2508; + /* errorno for codegen -3001 ~ -4000 */ const int rTestError = -3001; diff --git a/common/error_no.cpp b/common/error_no.cpp index 26a7d4d78..999a73096 100644 --- a/common/error_no.cpp +++ b/common/error_no.cpp @@ -159,6 +159,10 @@ ErrorInit::ErrorInit() { DefineErrorAndMessage(rFileInUsing, "Someone is still using this file"); DefineErrorAndMessage(rResourceIsLocked, "other hold the lock of resource"); + DefineErrorAndMessage(rSentMessageError, "failed to send network message"); + DefineErrorAndMessage(rReceiveMessageError, + "failed to receive network message"); + // schema assocated DefineErrorAndMessage(rEmptyAttributeName, "the given attribute associated with empty name"); @@ -212,9 +216,19 @@ ErrorInit::ErrorInit() { DefineErrorAndMessage(rTooFewColumn, "too few column data"); DefineErrorAndMessage(rTooManyColumn, "too many column data"); +// DefineErrorAndMessage(rLinkTmTimeout, "link to txn manager time out"); +// DefineErrorAndMessage(rLinkTmFail,"link to txn manager failed"); +// DefineErrorAndMessage(rBeginIngestTxnFail, "Begin ingest txn failed "); +// DefineErrorAndMessage(rCommitIngestTxnFail, "Commit ingest txn failed"); +// DefineErrorAndMessage(rAbortIngestTxnFail, "Abort ingest txn failed"); +// DefineErrorAndMessage(rBeginQueryFail, "Begin query failed"); +// DefineErrorAndMessage(rBeginCheckpointFail, "Begin checkpoint failed"); +// DefineErrorAndMessage(rCommitCheckpointFail, "Commit checkpoint failed"); + /* errorno for codegen -3001 ~ -4000 */ DefineErrorAndMessage(rTestError, "test it is error "); + /* errorno for logical_operator -4001~ -5000 */ DefineErrorAndMessage(rUninitializedJoinPolicy, "the dedicated join police is not initialized, e.g., " diff --git a/common/file_handle/hdfs_connector.h b/common/file_handle/hdfs_connector.h index fca1304d4..c85e3dfc5 100644 --- a/common/file_handle/hdfs_connector.h +++ b/common/file_handle/hdfs_connector.h @@ -50,8 +50,9 @@ class HdfsConnector { fs_ = hdfsConnect(Config::hdfs_master_ip.c_str(), Config::hdfs_master_port); if (NULL == fs_) { - LOG(ERROR) << "failed to connect to HDFS(ip:" << Config::hdfs_master_ip - << ", port:" << Config::hdfs_master_port << ")" << std::endl; + PLOG(ERROR) << "failed to connect to HDFS(ip:" << Config::hdfs_master_ip + << ", port:" << Config::hdfs_master_port << ")" + << std::endl; assert(false); } LOG(INFO) << "connected to HDFS(ip:" << Config::hdfs_master_ip diff --git a/common/ids.h b/common/ids.h index 374162d8f..fe1939d87 100755 --- a/common/ids.h +++ b/common/ids.h @@ -28,207 +28,220 @@ typedef unsigned ColumnOffset; typedef unsigned PartitionOffset; typedef int ChunkOffset; typedef unsigned long ExpanderID; -/*the following ids are based on the assumption that the TableOffset is globally unique.*/ +/*the following ids are based on the assumption that the TableOffset is globally + * unique.*/ struct NodeAddress { - NodeAddress(){}; - NodeAddress(std::string ip, std::string port) : - ip(ip), port(port) { - } - ; - bool operator ==(const NodeAddress & r) const { - return this->ip == r.ip && this->port == r.port; - } - std::string ip; - std::string port; + NodeAddress(){}; + NodeAddress(std::string ip, std::string port) : ip(ip), port(port){}; + bool operator==(const NodeAddress& r) const { + return this->ip == r.ip && this->port == r.port; + } + std::string ip; + std::string port; }; /* for boost::unordered_map*/ -static size_t hash_value(const NodeAddress& node_addr){ - size_t seed=0; - boost::hash_combine(seed,boost::hash_value(node_addr.ip)); - boost::hash_combine(seed,boost::hash_value(node_addr.port)); - return seed; +static size_t hash_value(const NodeAddress& node_addr) { + size_t seed = 0; + boost::hash_combine(seed, boost::hash_value(node_addr.ip)); + boost::hash_combine(seed, boost::hash_value(node_addr.port)); + return seed; } /** * AttributeID: an attribute in a table has an unique AttributeID*/ -struct AttributeID{ - AttributeID(TableID tid,AttributeOffset off):table_id(tid),offset(off){}; - AttributeID(){}; - TableID table_id; - AttributeOffset offset; - bool operator==(const AttributeID& r)const{ - return table_id==r.table_id&&offset==r.offset; - } +struct AttributeID { + AttributeID(TableID tid, AttributeOffset off) : table_id(tid), offset(off){}; + AttributeID(){}; + TableID table_id; + AttributeOffset offset; + bool operator==(const AttributeID& r) const { + return table_id == r.table_id && offset == r.offset; + } }; /* for boost::unordered_map*/ -static size_t hash_value(const AttributeID& key){ - size_t seed=0; - boost::hash_combine(seed,boost::hash_value(key.offset)); - boost::hash_combine(seed,boost::hash_value(key.table_id)); - return seed; +static size_t hash_value(const AttributeID& key) { + size_t seed = 0; + boost::hash_combine(seed, boost::hash_value(key.offset)); + boost::hash_combine(seed, boost::hash_value(key.table_id)); + return seed; } - /** * ProjectionID: a projection has an unique ProjectionID */ -struct ProjectionID{ - ProjectionID(){}; - ProjectionID(TableID tid,ProjectionOffset off):table_id(tid),projection_off(off){}; - ProjectionID(const ProjectionID& r):table_id(r.table_id),projection_off(r.projection_off){}; - TableID table_id; - ProjectionOffset projection_off; - bool operator==(const ProjectionID& r)const{ - return table_id==r.table_id&& projection_off==r.projection_off; - } - bool operator<(const ProjectionID& r)const{ - if (table_id < r.table_id) - return true; - else if (table_id == r.table_id) - return (projection_off < r.projection_off); - else - return false; - } - - /* for boost::serialization*/ - friend class boost::serialization::access; - template - void serialize(Archive & ar, const unsigned int version){ - ar & table_id & projection_off; - } - +struct ProjectionID { + ProjectionID(){}; + ProjectionID(TableID tid, ProjectionOffset off) + : table_id(tid), projection_off(off){}; + ProjectionID(const ProjectionID& r) + : table_id(r.table_id), projection_off(r.projection_off){}; + TableID table_id; + ProjectionOffset projection_off; + bool operator==(const ProjectionID& r) const { + return table_id == r.table_id && projection_off == r.projection_off; + } + bool operator<(const ProjectionID& r) const { + if (table_id < r.table_id) + return true; + else if (table_id == r.table_id) + return (projection_off < r.projection_off); + else + return false; + } + + /* for boost::serialization*/ + friend class boost::serialization::access; + template + void serialize(Archive& ar, const unsigned int version) { + ar& table_id& projection_off; + } }; /* for boost::unordered_map*/ -static size_t hash_value(const ProjectionID& key){ - size_t seed=0; - boost::hash_combine(seed,boost::hash_value(key.table_id)); - boost::hash_combine(seed,boost::hash_value(key.projection_off)); - return seed; +static size_t hash_value(const ProjectionID& key) { + size_t seed = 0; + boost::hash_combine(seed, boost::hash_value(key.table_id)); + boost::hash_combine(seed, boost::hash_value(key.projection_off)); + return seed; } - /** - * ColumnID: a Column corresponds to an attribute and is physically stored in one projection. + * ColumnID: a Column corresponds to an attribute and is physically stored in + * one projection. */ -struct ColumnID{ - ColumnID(){}; - ColumnID(ProjectionID pid,ColumnOffset off):projection_id(pid),column_off(off){}; - ProjectionID projection_id; - // the index of column in projection, not in table - ColumnOffset column_off; - bool operator==(const ColumnID &r)const{ - return projection_id==r.projection_id&&column_off==r.column_off; - } - - friend class boost::serialization::access; - template - void serialize(Archive &ar, const unsigned int version) - { -// ar & projection_id & column_off & partitioner & fileLocations & hdfsFilePath & blkMemoryLocations & Projection_name_; - ar & projection_id & column_off; - } - - +struct ColumnID { + ColumnID(){}; + ColumnID(ProjectionID pid, ColumnOffset off) + : projection_id(pid), column_off(off){}; + ProjectionID projection_id; + // the index of column in projection, not in table + ColumnOffset column_off; + bool operator==(const ColumnID& r) const { + return projection_id == r.projection_id && column_off == r.column_off; + } + + friend class boost::serialization::access; + template + void serialize(Archive& ar, const unsigned int version) { + // ar & projection_id & column_off & partitioner & fileLocations & + // hdfsFilePath & blkMemoryLocations & Projection_name_; + ar& projection_id& column_off; + } }; /* for boost::unordered_map*/ -static size_t hash_value(const ColumnID& key){ - size_t seed=0; - boost::hash_combine(seed,hash_value(key.projection_id)); - boost::hash_combine(seed,boost::hash_value(key.column_off)); - return seed; +static size_t hash_value(const ColumnID& key) { + size_t seed = 0; + boost::hash_combine(seed, hash_value(key.projection_id)); + boost::hash_combine(seed, boost::hash_value(key.column_off)); + return seed; } /** * PartitionID: a partition corresponds to one projection. */ -struct PartitionID{ - PartitionID(ProjectionID projection_id,PartitionOffset off):projection_id(projection_id),partition_off(off){}; - PartitionID(){}; - ProjectionID projection_id; - PartitionOffset partition_off; - bool operator==(const PartitionID& r)const{ - return projection_id==r.projection_id&&partition_off==r.partition_off; - } - bool operator<(const PartitionID& r)const{ - if (projection_id < r.projection_id) - return true; - else if (projection_id == r.projection_id) - return (partition_off < r.partition_off); - else - return false; - } - PartitionID(const PartitionID& r){ - projection_id=r.projection_id; - partition_off=r.partition_off; - } - std::string getName()const{ - std::ostringstream str; - str<<"T"< - void serialize(Archive &ar, const unsigned int version) - { - ar & partition_off & projection_id; - } +struct PartitionID { + PartitionID(ProjectionID projection_id, PartitionOffset off) + : projection_id(projection_id), partition_off(off){}; + PartitionID(){}; + ProjectionID projection_id; + PartitionOffset partition_off; + bool operator==(const PartitionID& r) const { + return projection_id == r.projection_id && partition_off == r.partition_off; + } + bool operator<(const PartitionID& r) const { + if (projection_id < r.projection_id) + return true; + else if (projection_id == r.projection_id) + return (partition_off < r.partition_off); + else + return false; + } + PartitionID(const PartitionID& r) { + projection_id = r.projection_id; + partition_off = r.partition_off; + } + std::string getName() const { + std::ostringstream str; + str << "T" << projection_id.table_id << "G" << projection_id.projection_off + << "P" << partition_off; + return str.str(); + } + std::string getPathAndName() const; + friend class boost::serialization::access; + template + void serialize(Archive& ar, const unsigned int version) { + ar& partition_off& projection_id; + } }; /* for boost::unordered_map*/ -static size_t hash_value(const PartitionID& key){ - size_t seed=0; - boost::hash_combine(seed,hash_value(key.projection_id)); - boost::hash_combine(seed,boost::hash_value(key.partition_off)); - return seed; +static size_t hash_value(const PartitionID& key) { + size_t seed = 0; + boost::hash_combine(seed, hash_value(key.projection_id)); + boost::hash_combine(seed, boost::hash_value(key.partition_off)); + return seed; } -struct ChunkID{ - ChunkID(){}; - ChunkID(PartitionID partition_id,ChunkOffset chunk_offset):partition_id(partition_id),chunk_off(chunk_offset){}; - ChunkID(const ChunkID& r){ - partition_id=r.partition_id; - chunk_off=r.chunk_off; - } - bool operator==(const ChunkID& r)const{ - return partition_id==r.partition_id&&chunk_off==r.chunk_off; - } - bool operator<(const ChunkID& r)const{ - if (partition_id < r.partition_id) - return true; - else if (partition_id == r.partition_id) - return (chunk_off < r.chunk_off); - else - return false; - } - PartitionID partition_id; - ChunkOffset chunk_off; +/** + * ToDo: a flag is_rt_ is add to ChunkID, MemStore need to aware this flag and + * stick the chunk (is_rt_ == true) in memory. + * + */ +struct ChunkID { + ChunkID() {} + ChunkID(PartitionID partition_id, ChunkOffset chunk_offset) + : partition_id(partition_id), chunk_off(chunk_offset) {} + ChunkID(PartitionID partition_id, ChunkOffset chunk_offset, bool is_rt) + : partition_id(partition_id), chunk_off(chunk_offset), is_rt_(is_rt) {} + ChunkID(const ChunkID& r) { + partition_id = r.partition_id; + chunk_off = r.chunk_off; + is_rt_ = r.is_rt_; + } + bool operator==(const ChunkID& r) const { + return partition_id == r.partition_id && chunk_off == r.chunk_off && + is_rt_ == r.is_rt_; + } + bool operator<(const ChunkID& r) const { + if (is_rt_ < r.is_rt_) + return true; + else if (partition_id < r.partition_id) + return true; + else if (partition_id == r.partition_id) + return (chunk_off < r.chunk_off); + else + return false; + } + PartitionID partition_id; + ChunkOffset chunk_off; + bool is_rt_ = false; }; /* for boost::unordered_map*/ -static size_t hash_value(const ChunkID& key){ - size_t seed=0; - boost::hash_combine(seed,hash_value(key.partition_id)); - boost::hash_combine(seed,boost::hash_value(key.chunk_off)); - return seed; +static size_t hash_value(const ChunkID& key) { + size_t seed = 0; + boost::hash_combine(seed, hash_value(key.partition_id)); + boost::hash_combine(seed, boost::hash_value(key.chunk_off)); + boost::hash_combine(seed, boost::hash_value(key.is_rt_)); + return seed; } -struct ExchangeID{ - ExchangeID():exchange_id(0),partition_offset(0){}; - ExchangeID(unsigned long long int exchange_id,unsigned partition_offset) - :exchange_id(exchange_id),partition_offset(partition_offset){}; - bool operator==(const ExchangeID& r)const{ - return exchange_id==r.exchange_id&&partition_offset==r.partition_offset; - } - - unsigned long long int exchange_id; - unsigned partition_offset; +struct ExchangeID { + ExchangeID() : exchange_id(0), partition_offset(0) {} + ExchangeID(unsigned long long int exchange_id, unsigned partition_offset) + : exchange_id(exchange_id), partition_offset(partition_offset) {} + bool operator==(const ExchangeID& r) const { + return exchange_id == r.exchange_id && + partition_offset == r.partition_offset; + } + + unsigned long long int exchange_id; + unsigned partition_offset; }; -static size_t hash_value(const ExchangeID& key){ - size_t seed=0; - boost::hash_combine(seed,boost::hash_value(key.exchange_id)); - boost::hash_combine(seed,boost::hash_value(key.partition_offset)); - return seed; +static size_t hash_value(const ExchangeID& key) { + size_t seed = 0; + boost::hash_combine(seed, boost::hash_value(key.exchange_id)); + boost::hash_combine(seed, boost::hash_value(key.partition_offset)); + return seed; } #endif /* IDS_H_ */ diff --git a/common/serialization/Makefile.am b/common/serialization/Makefile.am index edc382148..0da7f1102 100644 --- a/common/serialization/Makefile.am +++ b/common/serialization/Makefile.am @@ -21,7 +21,7 @@ LDADD = ../../physical_operator/libphysicalqueryplan.a \ ${JAVA_HOME}/jre/lib/amd64/server/libjvm.so\ ${BOOST_HOME}/stage/lib/libboost_serialization.a \ ${BOOST_HOME}/stage/lib/libboost_serialization.so - + noinst_LIBRARIES=libserialization.a libserialization_a_SOURCES = \ RegisterDerivedClass.cpp RegisterDerivedClass.h diff --git a/common/types/decimal.cpp b/common/types/decimal.cpp index c48e53fd3..707190416 100644 --- a/common/types/decimal.cpp +++ b/common/types/decimal.cpp @@ -46,126 +46,106 @@ namespace common { // 30 '0' 1000000000000000000000000000000 #define KMAXSCALEFACTOR "1000000000000000000000000000000" - const TTInt Decimal::kMaxScaleFactor = KMAXSCALEFACTOR; -Decimal::Decimal() - : decimal_sign_(DECIMAL_POS) { +Decimal::Decimal() : decimal_sign_(DECIMAL_POS) { memset(word, 0, sizeof(word)); } Decimal::Decimal(int precision, int scale, string valuestr) - : decimal_sign_(DECIMAL_POS) { - memset(word, 0, sizeof(word)); - StrtoDecimal(precision, scale, valuestr.c_str()); + : decimal_sign_(DECIMAL_POS) { + memset(word, 0, sizeof(word)); + StrtoDecimal(precision, scale, valuestr.c_str()); } -Decimal::Decimal(int precision, int scale, const char * valstr) - : decimal_sign_(DECIMAL_POS) { - memset(word, 0, sizeof(word)); - StrtoDecimal(precision, scale, valstr); +Decimal::Decimal(int precision, int scale, const char *valstr) + : decimal_sign_(DECIMAL_POS) { + memset(word, 0, sizeof(word)); + StrtoDecimal(precision, scale, valstr); } Decimal::~Decimal() { // TODO Auto-generated destructor stub } -bool Decimal::StrtoDecimal(int p, int s, const char *cp) -{ - bool have_dp = false; - int i = 0; - char decdigits[DECIMAL_MAXPRCISION+1]; - char num1[31]; - int dsign = DECIMAL_POS; - int dweight = -1; - const char *str = cp; - - memset(decdigits, '0', DECIMAL_MAXPRCISION+1); - num1[0] = '1'; - memset(num1+1, '0', 30); - - while (isspace(*cp)) - cp++; - //printf("source :%s\n",cp); - switch (*cp) - { - case '+': - cp++; - break; - case '-': - dsign = DECIMAL_NEG; - cp++; - break; - } - - while (*cp) - { - if (isdigit((unsigned char) *cp)) - { - decdigits[i++] = *cp++; - if (!have_dp) - dweight++; - } - else if (*cp == '.') - { - if (have_dp) - { - printf("invalid input syntax for type numeric: \"%s\"\n", str); - return false; - } - have_dp = true; - cp++; - } - else - break; - } - if (*cp == 'e' || *cp == 'E') - { - long exponent; - char *endptr; - cp++; - exponent = strtol(cp, &endptr, 10); - if (endptr == cp) - { - printf("invalid input syntax for type numeric: \"%s\"\n", str); - return false; - } - cp = endptr; - dweight += (int) exponent; - } - if (dweight > p - s ) - { - printf("invalid input syntax for type numeric: \"%s\"\n", str); - return false; - } - while (*cp) - { - if (isspace((unsigned char) *cp)) - { - cp++; - } - else - { - printf("invalid input syntax for type numeric: \"%s\"\n", str); - return false; - } - } - - decdigits[DECIMAL_MAXSCALE + dweight + 1] = 0; - char c = decdigits[s + dweight + 1]; - memset(decdigits + s + dweight + 1, '0', DECIMAL_MAXSCALE - s); - TTInt whole(decdigits); - - num1[30 - s + 1] = 0; - TTInt fra(num1); - - if (DECIMAL_NEG == dsign) - { - fra.SetSign(); - whole.SetSign(); - } - SetTTInt((c>='5'?whole+fra:whole)); - return true; +bool Decimal::StrtoDecimal(int p, int s, const char *cp) { + bool have_dp = false; + int i = 0; + char decdigits[DECIMAL_MAXPRCISION + 1]; + char num1[31]; + int dsign = DECIMAL_POS; + int dweight = -1; + const char *str = cp; + + memset(decdigits, '0', DECIMAL_MAXPRCISION + 1); + num1[0] = '1'; + memset(num1 + 1, '0', 30); + + while (isspace(*cp)) cp++; + // printf("source :%s\n",cp); + switch (*cp) { + case '+': + cp++; + break; + case '-': + dsign = DECIMAL_NEG; + cp++; + break; + } + + while (*cp) { + if (isdigit((unsigned char)*cp)) { + decdigits[i++] = *cp++; + if (!have_dp) dweight++; + } else if (*cp == '.') { + if (have_dp) { + printf("invalid input syntax for type numeric: \"%s\"\n", str); + return false; + } + have_dp = true; + cp++; + } else + break; + } + if (*cp == 'e' || *cp == 'E') { + long exponent; + char *endptr; + cp++; + exponent = strtol(cp, &endptr, 10); + if (endptr == cp) { + printf("invalid input syntax for type numeric: \"%s\"\n", str); + return false; + } + cp = endptr; + dweight += (int)exponent; + } + if (dweight > p - s) { + printf("invalid input syntax for type numeric: \"%s\"\n", str); + return false; + } + while (*cp) { + if (isspace((unsigned char)*cp)) { + cp++; + } else { + printf("invalid input syntax for type numeric: \"%s\"\n", str); + return false; + } + } + + decdigits[DECIMAL_MAXSCALE + dweight + 1] = 0; + char c = decdigits[s + dweight + 1]; + memset(decdigits + s + dweight + 1, '0', DECIMAL_MAXSCALE - s); + TTInt whole(decdigits); + + num1[30 - s + 1] = 0; + TTInt fra(num1); + + if (DECIMAL_NEG == dsign) { + fra.SetSign(); + whole.SetSign(); + } + SetTTInt((c >= '5' ? whole + fra : whole)); + return true; } string Decimal::toString(unsigned number_of_fractinal_digits) const { @@ -175,9 +155,9 @@ string Decimal::toString(unsigned number_of_fractinal_digits) const { rest.ToString(ress); int sign = 0; if (rest.IsSign()) sign = 1; - while ((Decimal::kMaxDecScale + sign - (int) ress.length()) >= 0) + while ((Decimal::kMaxDecScale + sign - (int)ress.length()) >= 0) ress.insert(sign, "0"); - if(number_of_fractinal_digits > 0) + if (number_of_fractinal_digits > 0) ress.insert(ress.length() - Decimal::kMaxDecScale, "."); ress.erase(ress.size() - Decimal::kMaxDecScale + number_of_fractinal_digits, Decimal::kMaxDecScale - number_of_fractinal_digits); @@ -186,29 +166,27 @@ string Decimal::toString(unsigned number_of_fractinal_digits) const { Decimal Decimal::CreateNullDecimal() { static Decimal NDecimal; - const_cast(NDecimal.decimal_sign_) = DECIMAL_NAN; + const_cast(NDecimal.decimal_sign_) = DECIMAL_NAN; return NDecimal; } -bool Decimal::isNull() const { - return decimal_sign_ == DECIMAL_NAN; -} +bool Decimal::isNull() const { return decimal_sign_ == DECIMAL_NAN; } -Decimal & Decimal::operator=(const Decimal &rhs) { +Decimal &Decimal::operator=(const Decimal &rhs) { if (this == &rhs) return *this; this->word[0] = rhs.GetTTInt(); - const_cast(this->decimal_sign_) = rhs.decimal_sign_; - //PrintValue(10); + const_cast(this->decimal_sign_) = rhs.decimal_sign_; + // PrintValue(10); return *this; } void Decimal::PrintValue(int ifra) { - printf("value:[%s][%s]\n", this->word[0].ToString().c_str(), toString(ifra).c_str()); + printf("value:[%s][%s]\n", this->word[0].ToString().c_str(), + toString(ifra).c_str()); } ///////////////////////////////////////////////////////////////////// Decimal Decimal::op_add(const Decimal rhs) const { - TTInt rett; rett = this->GetTTInt(); rett.Add(rhs.GetTTInt()); @@ -220,7 +198,6 @@ Decimal Decimal::op_add(const Decimal rhs) const { } Decimal Decimal::op_subtract(const Decimal rhs) const { - TTInt rett; rett = this->GetTTInt(); rett.Sub(rhs.GetTTInt()); @@ -232,7 +209,6 @@ Decimal Decimal::op_subtract(const Decimal rhs) const { } Decimal Decimal::op_multiply(const Decimal rhs) const { - TTLInt rett; rett = this->GetTTInt(); rett *= rhs.GetTTInt(); @@ -245,7 +221,6 @@ Decimal Decimal::op_multiply(const Decimal rhs) const { } Decimal Decimal::op_divide(const Decimal rhs) const { - TTLInt rett; rett = this->GetTTInt(); rett *= Decimal::kMaxScaleFactor; @@ -253,10 +228,9 @@ Decimal Decimal::op_divide(const Decimal rhs) const { Decimal ret; ret.SetTTInt(rett); - + return ret; } - } // namespace common } // namespace claims diff --git a/conf/config b/conf/config index b3873707e..a2ebc0e28 100755 --- a/conf/config +++ b/conf/config @@ -1,5 +1,5 @@ #本机IP地址 -ip = "219.228.147.12"; +ip = "127.0.0.1"; #端口范围(调试用) PortManager: @@ -11,7 +11,7 @@ PortManager: #master的IP地址和端口 coordinator: { - ip="219.228.147.12" + ip="127.0.0.1" port="12000" } @@ -28,21 +28,27 @@ client_listener_port = 10000 #data="/home/imdb/data/POC/sample/" #data="/home/minqi/git/Data/data/tpc-h/1-partition/sf-1/" #data="/home/minqi/git/Data/data/tpc-h/18-partition/sf-1/" + +data="/home/imdb/config/tpc-h/1-partition/sf-1/" +#data="/home/claims/data/tpc-h/sf1/1partition/" + #data="/home/imdb/data/SF-1/" #data="/home/imdb/data/SF-1/" #data="/home/imdb/data/stock/" #data="/home/imdb/data/stock/" #data="/home/zzh/data/1partition/" #data="/claimsdata/" -data="/home/zzh/data/sf-1-p4/" +#data="/home/zzh/data/sf-1-p4/" #data="/home/fish/data/test/" #data="/home/imdb/data/POC/" #data="/home/imdb/data/POC/" -#hdfs主节点 - -hdfs_master_ip="219.228.147.162" + +#hdfs主节点 +#hdfs_master_ip="58.198.176.92" +hdfs_master_ip="219.228.147.33" + #hdfs主节点端口 hdfs_master_port=9000 @@ -59,7 +65,40 @@ enable_expander_adaptivity=0 pipelined_exchange=1 -local_disk_mode=0 +local_disk_mode=1 scan_batch=100 +is_master_loader=1 + +master_loader_ip="127.0.0.1" + +master_loader_port=9002 + +master_loader_thread_num=8 + +slave_loader_thread_num=6 + +amq_url="58.198.176.92:61616" + +amq_topic="t1234" + +#事务服务器 +txn_server=1 + +txn_server_cores=4 + +txn_server_ip="127.0.0.1" + +txn_server_port=9100 + +#事务日志 +txn_log=0 + +txn_log_path="txn-log" + + + + + + diff --git a/configure.ac b/configure.ac index 266f1411d..451c4f014 100644 --- a/configure.ac +++ b/configure.ac @@ -2,9 +2,36 @@ AC_INIT([Claims], [0.3], [imdb@ecnu]) AM_INIT_AUTOMAKE([-Wall foreign subdir-objects]) AM_PROG_AR AC_PROG_LIBTOOL -CPPFLAGS="-w -O2 -DTHERON_XS -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS" AM_CONDITIONAL(OPT_TCMALLOC, true) -CXXFLAGS=${CXXFLAGS="-g -std=c++11"} +#AM_CONDITIONAL(OPT_DEBUG, true) + +CPPFLAGS=" -w -O2 -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS " + +CXXFLAGS=${CXXFLAGS=" -std=c++11 "} + +# enable debug or not --- add by YuKai +AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug], [enable DEBUG mode(default=yes)]), + [], + [enable_debug=yes]) +AS_IF([test "x$enable_debug" = "xyes"],[ CPPFLAGS+=" -g -DTHERON_XS " + AM_CONDITIONAL(OPT_DEBUG, true) + #CXXFLAGS+=" ${THERON_HOME}/Lib/libtherond.a " + ], + [test "x$enable_debug" = "xno"], [ CPPFLAGS+=" -DNDEBUG " + AM_CONDITIONAL(OPT_DEBUG, false) + #CXXFLAGS+=" ${THERON_HOME}/Lib/libtheron.a " + ] + ) + + +#if OPT_DEBUG; then +# CPPFLAGS-=" -DNDEBUG" +# CPPFLAGS+="-g -DTHERON_XS -DDEBUG" +#else +# CPPFLAGS-="-g -DTHERON_XS -DDEBUG" +# CPPFLAGS+=" -DNDEBUG" +#fi + AC_PROG_CXX AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ @@ -13,8 +40,6 @@ AC_CONFIG_FILES([ catalog/Test/Makefile catalog/stat/Makefile Client/Makefile - Client/Test/Makefile - Client/json/Makefile common/Makefile common/Block/Makefile common/Expression/Makefile @@ -48,6 +73,7 @@ AC_CONFIG_FILES([ Test/Makefile Test/common/Makefile Test/utility/Makefile + txn_manager/Makefile utility/Makefile codegen/Makefile stmt_handler/Makefile diff --git a/loader/AMQ_consumer.cpp b/loader/AMQ_consumer.cpp new file mode 100644 index 000000000..1878b804e --- /dev/null +++ b/loader/AMQ_consumer.cpp @@ -0,0 +1,165 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/AMQ_consumer.cpp + * + * Created on: May 1, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#include "./AMQ_consumer.h" + +#include +#include +#include +#include +#include + +#include "./master_loader.h" +#include "../common/memory_handle.h" +using activemq::core::ActiveMQConnection; +using activemq::core::ActiveMQConnectionFactory; +using cms::TextMessage; +using std::cout; +using std::endl; +using std::string; + +namespace claims { +namespace loader { + +void claims::loader::AMQConsumer::run(MasterLoader* mloader) { + mloader_ = mloader; + try { + // Create a ConnectionFactory + ActiveMQConnectionFactory* connectionFactory = + new ActiveMQConnectionFactory(brokerURI_); + LOG(INFO) << "Create a ConnectionFactory"; + // Create a Connection + connection_ = connectionFactory->createConnection(); + delete connectionFactory; + LOG(INFO) << "Create a Connection"; + + ActiveMQConnection* amqConnection = + dynamic_cast(connection_); + if (amqConnection != NULL) { + amqConnection->addTransportListener(this); + } + LOG(INFO) << "Create a ActiveMQConnection"; + + connection_->start(); + + connection_->setExceptionListener(this); + LOG(INFO) << "ActiveMQConnection is started"; + + // Create a Session + if (client_ack_) { + session_ = connection_->createSession(Session::CLIENT_ACKNOWLEDGE); + } else { + session_ = connection_->createSession(Session::AUTO_ACKNOWLEDGE); + } + LOG(INFO) << "Create a Session"; + + // Create the destination (Topic or Queue) + if (use_topic_) { + destination_ = session_->createTopic(destURI_); + } else { + destination_ = session_->createQueue(destURI_); + } + LOG(INFO) << "Create a destination"; + + // Create a MessageConsumer from the Session to the Topic or Queue + consumer = session_->createConsumer(destination_); + consumer->setMessageListener(this); + LOG(INFO) << "Create a MessageConsumer"; + LOG(INFO) << " ready to receive ingest message from ActiveMQ"; + std::cout << "AMQ client listening...." << std::endl; + } catch (CMSException& e) { + e.printStackTrace(); + } +} + +void claims::loader::AMQConsumer::onMessage(const Message* message) { + try { + const TextMessage* textMessage = dynamic_cast(message); + string text = ""; + mloader_->AddCount(); + if (textMessage != NULL) { + text = textMessage->getText(); + // message->acknowledge(); + // cout << "" << endl << text << endl; + bool client_ack = client_ack_; + mloader_->Ingest(text, [message, client_ack]() -> int { + if (client_ack) { + message->acknowledge(); + } + return claims::common::rSuccess; + }); + } else { + text = "NOT A TEXTMESSAGE!"; + std::cerr << "get error message from AMQ " << std::endl; + LOG(ERROR) << "get error message from AMQ "; + } + // enter for load. + // printf("Message #%d Received: %s\n", count, text.c_str()); + } catch (CMSException& e) { + e.printStackTrace(); + } +} + +void claims::loader::AMQConsumer::cleanup() { + //************************************************* + // Always close destination, consumers and producers before + // you destroy their sessions and connection. + //************************************************* + + // Destroy resources. + try { + DELETE_PTR(destination_); + } catch (CMSException& e) { + } + + try { + DELETE_PTR(consumer); + } catch (CMSException& e) { + } + + // Close open resources. + try { + if (session_ != NULL) session_->close(); + if (connection_ != NULL) connection_->close(); + } catch (CMSException& e) { + } + + // Now Destroy them + try { + DELETE_PTR(session_); + } catch (CMSException& e) { + } + + try { + DELETE_PTR(connection_); + } catch (CMSException& e) { + } +} + +} /* namespace loader */ +} /* namespace claims */ diff --git a/loader/AMQ_consumer.h b/loader/AMQ_consumer.h new file mode 100644 index 000000000..964e2cced --- /dev/null +++ b/loader/AMQ_consumer.h @@ -0,0 +1,121 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/AMQ_consumer.h + * + * Created on: May 1, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef LOADER_AMQ_CONSUMER_H_ +#define LOADER_AMQ_CONSUMER_H_ +#include +#include +#include +#include +#include +#include +#include +#include + +#include "../common/rename.h" +using activemq::transport::DefaultTransportListener; +using cms::CMSException; +using cms::Connection; +using cms::Destination; +using cms::ExceptionListener; +using cms::Message; +using cms::MessageConsumer; +using cms::MessageListener; +using cms::Session; + +namespace claims { +namespace loader { + +class MasterLoader; + +class AMQConsumer : public ExceptionListener, + public MessageListener, + public DefaultTransportListener { + public: + AMQConsumer(const std::string& brokerURI, const std::string& destURI, + bool use_topic = false, bool client_ack = false) + : connection_(NULL), + session_(NULL), + destination_(NULL), + consumer(NULL), + use_topic_(use_topic), + brokerURI_(brokerURI), + destURI_(destURI), + client_ack_(client_ack) {} + + virtual ~AMQConsumer() { this->cleanup(); } + + void close() { this->cleanup(); } + + void run(MasterLoader* mloader); + + virtual void onMessage(const Message* message); + + // If something bad happens you see it here as this class is also been + // registered as an ExceptionListener with the connection. + virtual void onException(const CMSException& ex AMQCPP_UNUSED) { + printf("CMS Exception occurred. Shutting down client.\n"); + exit(1); + } + + virtual void onException(const decaf::lang::Exception& ex) { + printf("Transport Exception occurred: %s \n", ex.getMessage().c_str()); + } + + virtual void transportInterrupted() { + std::cout << "The Connection's Transport has been Interrupted." + << std::endl; + } + + virtual void transportResumed() { + std::cout << "The Connection's Transport has been Restored." << std::endl; + } + + NO_COPY_AND_ASSIGN(AMQConsumer); + + private: + void cleanup(); + + public: + private: + Connection* connection_; + Session* session_; + Destination* destination_; + MessageConsumer* consumer; + bool use_topic_; + std::string brokerURI_; + std::string destURI_; + bool client_ack_; + + MasterLoader* mloader_; +}; + +} /* namespace loader */ +} /* namespace claims */ + +#endif // LOADER_AMQ_CONSUMER_H_ diff --git a/loader/Customer.cpp b/loader/Customer.cpp new file mode 100644 index 000000000..7b22cd280 --- /dev/null +++ b/loader/Customer.cpp @@ -0,0 +1,314 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /ActiveMQ_c/Customer.cpp + * + * Created on: 2016年4月7日 + * Author: Han + * Email: + * + * Description: + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using std::string; +using namespace std; + +using namespace activemq; // NOLINT +using namespace activemq::core; // NOLINT +using namespace activemq::transport; // NOLINT +using namespace decaf::lang; // NOLINT +using namespace decaf::util; // NOLINT +using namespace decaf::util::concurrent; // NOLINT +using namespace cms; // NOLINT + +//////////////////////////////////////////////////////////////////////////////// +class Consumer : public ExceptionListener, + public MessageListener, + public DefaultTransportListener { + private: + Connection* connection_; + Session* session_; + Destination* destination_; + MessageConsumer* consumer; + bool use_topic_; + std::string brokerURI_; + std::string destURI_; + bool client_ack_; + + private: + Consumer(const Consumer&); + Consumer& operator=(const Consumer&); + + public: + Consumer(const std::string& brokerURI, const std::string& destURI, + bool use_topic = false, bool client_ack = false) + : connection_(NULL), + session_(NULL), + destination_(NULL), + consumer(NULL), + use_topic_(use_topic), + brokerURI_(brokerURI), + destURI_(destURI), + client_ack_(client_ack) {} + + virtual ~Consumer() { this->cleanup(); } + + void close() { this->cleanup(); } + + void runConsumer() { + try { + // Create a ConnectionFactory + ActiveMQConnectionFactory* connectionFactory = + new ActiveMQConnectionFactory(brokerURI_); + + // Create a Connection + connection_ = connectionFactory->createConnection(); + delete connectionFactory; + + ActiveMQConnection* amqConnection = + dynamic_cast(connection_); + if (amqConnection != NULL) { + amqConnection->addTransportListener(this); + } + + connection_->start(); + + connection_->setExceptionListener(this); + + // Create a Session + if (client_ack_) { + session_ = connection_->createSession(Session::CLIENT_ACKNOWLEDGE); + } else { + session_ = connection_->createSession(Session::AUTO_ACKNOWLEDGE); + } + + // Create the destination (Topic or Queue) + if (use_topic_) { + destination_ = session_->createTopic(destURI_); + } else { + destination_ = session_->createQueue(destURI_); + } + + // Create a MessageConsumer from the Session to the Topic or Queue + consumer = session_->createConsumer(destination_); + consumer->setMessageListener(this); + + } catch (CMSException& e) { + e.printStackTrace(); + } + } + + // Called from the consumer since this class is a registered MessageListener. + virtual void onMessage(const Message* message) { + static int count = 0; + static timeval start1; + try { + const TextMessage* textMessage = + dynamic_cast(message); + string text = ""; + + if (textMessage != NULL) { + text = textMessage->getText(); + } else { + text = "NOT A TEXTMESSAGE!"; + } + + if (client_ack_) { + message->acknowledge(); + // cout << "consume a message" << endl; + } + // enter for load. + // printf("Message #%d Received: %s\n", count, text.c_str()); + } catch (CMSException& e) { + e.printStackTrace(); + } + } + + // If something bad happens you see it here as this class is also been + // registered as an ExceptionListener with the connection. + virtual void onException(const CMSException& ex AMQCPP_UNUSED) { + printf("CMS Exception occurred. Shutting down client.\n"); + exit(1); + } + + virtual void onException(const decaf::lang::Exception& ex) { + printf("Transport Exception occurred: %s \n", ex.getMessage().c_str()); + } + + virtual void transportInterrupted() { + std::cout << "The Connection's Transport has been Interrupted." + << std::endl; + } + + virtual void transportResumed() { + std::cout << "The Connection's Transport has been Restored." << std::endl; + } + + private: + void cleanup() { + //************************************************* + // Always close destination, consumers and producers before + // you destroy their sessions and connection. + //************************************************* + + // Destroy resources. + try { + if (destination_ != NULL) delete destination_; + } catch (CMSException& e) { + } + destination_ = NULL; + + try { + if (consumer != NULL) delete consumer; + } catch (CMSException& e) { + } + consumer = NULL; + + // Close open resources. + try { + if (session_ != NULL) session_->close(); + if (connection_ != NULL) connection_->close(); + } catch (CMSException& e) { + } + + // Now Destroy them + try { + if (session_ != NULL) delete session_; + } catch (CMSException& e) { + } + session_ = NULL; + + try { + if (connection_ != NULL) delete connection_; + } catch (CMSException& e) { + } + connection_ = NULL; + } +}; + +//////////////////////////////////////////////////////////////////////////////// +void ClientInitialize() { + std::cout << "=====================================================\n"; + std::cout << "Starting the example:" << std::endl; + std::cout << "-----------------------------------------------------\n"; + + // Set the URI to point to the IPAddress of your broker. + // add any optional params to the url to enable things like + // tightMarshalling or tcp logging etc. See the CMS web site for + // a full list of configuration options. + // + // http://activemq.apache.org/cms/ + // + // Wire Format Options: + // ===================== + // Use either stomp or openwire, the default ports are different for each + // + // Examples: + // tcp://127.0.0.1:61616 default to openwire + // tcp://127.0.0.1:61616?wireFormat=openwire same as above + // tcp://127.0.0.1:61613?wireFormat=stomp use stomp instead + // + std::string brokerURI = + "failover:(tcp://10.11.1.192:61616" + "?wireFormat=openwire" + "&connection.useAsyncSend=true" + // "&transport.commandTracingEnabled=true" + // "&transport.tcpTracingEnabled=true" + // "&wireFormat.tightEncodingEnabled=true" + ")"; + + //============================================================ + // This is the Destination Name and URI options. Use this to + // customize where the consumer listens, to have the consumer + // use a topic or queue set the 'useTopics' flag. + //============================================================ + std::string destURI = + "t123" + "?consumer.prefetchSize = 1 "; //?consumer.prefetchSize=1"; + + //============================================================ + // set to true to use topics instead of queues + // Note in the code above that this causes createTopic or + // createQueue to be used in the consumer. + //============================================================ + bool use_topics = false; + + //============================================================ + // set to true if you want the consumer to use client ack mode + // instead of the default auto ack mode. + //============================================================ + bool client_ack = false; + + // Create the consumer + Consumer consumer(brokerURI, destURI, use_topics, client_ack); + + // Start it up and it will listen forever. + // std::thread t1(&SimpleAsyncConsumer::runConsumer, consumer); + // t1.join(); + consumer.runConsumer(); + + // Wait to exit. + while (std::cin.get() != 'q') { + } + // All CMS resources should be closed before the library is shutdown. + consumer.close(); + + std::cout << "-----------------------------------------------------\n"; + std::cout << "Finished with the example." << std::endl; + std::cout << "=====================================================\n"; +} +int main() { + activemq::library::ActiveMQCPP::initializeLibrary(); + int thread_count = 12; + vector threads; + for (int i = 0; i < thread_count; i++) { + threads.push_back(std::thread(ClientInitialize)); + } + for (auto& t : threads) { + t.join(); + } + activemq::library::ActiveMQCPP::shutdownLibrary(); + return EXIT_SUCCESS; +} diff --git a/loader/Makefile.am b/loader/Makefile.am index 5943c3522..e2eae354a 100644 --- a/loader/Makefile.am +++ b/loader/Makefile.am @@ -4,33 +4,38 @@ AM_CPPFLAGS= -fPIC -fpermissive \ -I${BOOST_HOME}/boost/serialization \ -I${HADOOP_HOME}/include\ -I${JAVA_HOME}/include\ --I${JAVA_HOME}/include/linux +-I${JAVA_HOME}/include/linux \ +-I${THERON_HOME}/Include \ +-I${CAF_HOME}/libcaf_io \ +-I${CAF_HOME}/libcaf_core \ +-I/usr/local/include/activemq-cpp-3.9.3 \ +-I/usr/local/apr/include/apr-1 -AM_LDFLAGS=-lc -lm -lrt -lxs -lboost_serialization +AM_LDFLAGS=-lc -lm -lrt -lcaf_core -lcaf_io -lxs -lboost_serialization if OPT_TCMALLOC AM_CPPFLAGS+=-fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free AM_LDFLAGS+=-ltcmalloc endif -LDADD = ../catalog/libcatalog.a \ - ../common/libcommon.a \ - ../common/Block/libblock.a \ - ../common/file_handle/libfilehandle.a \ - ../common/Schema/libschema.a \ - ${HADOOP_HOME}/lib/native/libhdfs.a\ - ${JAVA_HOME}/jre/lib/amd64/server/libjvm.so\ - ${BOOST_HOME}/stage/lib/libboost_serialization.a \ - ${BOOST_HOME}/stage/lib/libboost_serialization.so +#LDADD = ../catalog/libcatalog.a \ +# ../common/libcommon.a \ +# ../common/Block/libblock.a \ +# ../common/file_handle/libfilehandle.a \ +# ../common/Schema/libschema.a noinst_LIBRARIES=libloader.a libloader_a_SOURCES = \ - data_injector.cpp data_injector.h \ - single_file_connector.h single_file_connector.cpp \ - single_thread_single_file_connector.h single_thread_single_file_connector.cpp \ - table_file_connector.cpp table_file_connector.h \ - validity.h validity.cpp - + data_ingestion.cpp data_ingestion.h \ + file_connector.h \ + master_loader.cpp master_loader.h \ + single_file_connector.cpp single_file_connector.h \ + single_thread_single_file_connector.cpp single_thread_single_file_connector.h \ + slave_loader.cpp slave_loader.h \ + table_file_connector.cpp table_file_connector.h \ + validity.cpp validity.h \ + load_packet.h load_packet.cpp \ + AMQ_consumer.h AMQ_consumer.cpp SUBDIRS = test DIST_SUBDIRS = test diff --git a/loader/SimpleProducer b/loader/SimpleProducer new file mode 100755 index 000000000..3242c613c Binary files /dev/null and b/loader/SimpleProducer differ diff --git a/loader/SimpleProducer.cpp b/loader/SimpleProducer.cpp new file mode 100644 index 000000000..fae82582f --- /dev/null +++ b/loader/SimpleProducer.cpp @@ -0,0 +1,358 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /ActiveMQ_c/SimpleProducer.cpp + * + * Created on: 2016年4月9日 + * Author: Han + * Email: + * + * Description: + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +using namespace activemq; +using namespace activemq::core; +using namespace decaf; +using namespace decaf::lang; +using namespace decaf::util; +using namespace decaf::util::concurrent; +using namespace cms; +using namespace std; + +//////////////////////////////////////////////////////////////////////////////// +class Producer : public Runnable { + private: + Connection* connection_; + Session* session_; + Destination* destination_; + MessageProducer* producer_; + bool use_topic_; + bool client_ack_; + unsigned int num_messages_; + std::string brokerURI_; + std::string destURI_; + std::string file_path_; + std::string table_name_; + + private: + Producer(const Producer&); + Producer& operator=(const Producer&); + + public: + Producer(const std::string& brokerURI, unsigned int num_messages, + const std::string& destURI, const std::string& file_path, + const std::string& table_name, bool use_topic = false, + bool client_ack = false) + : connection_(NULL), + session_(NULL), + destination_(NULL), + producer_(NULL), + use_topic_(use_topic), + client_ack_(client_ack), + num_messages_(num_messages), + brokerURI_(brokerURI), + destURI_(destURI), + file_path_(file_path), + table_name_(table_name) {} + + virtual ~Producer() { cleanup(); } + + string GetText(ifstream& file1, const string& row_dsp) { + int count = 0; + string c = ""; + size_t cur_p = 0; + if (file1.is_open()) { + char* str1 = (char*)malloc(1000); + if (1 == row_dsp.length()) { + do { + file1.getline(str1, 1000, (char)row_dsp[0]); + if (file1.eof()) break; + // cout << str1 << endl; + long int length = strlen(str1); + // cout << "the length is " << length << endl; + c += str1; + c += row_dsp; + count++; + } while (count < 150); + } + free(str1); + } + return c; + } + void SendMessage(string filename) { + cout << "SendMessage thread is created" << endl; + /* + ifstream file1; + file1.open(filename.c_str()); + for (unsigned int ix = 0; ix < num_messages_; ++ix) { + if (file1.eof()) break; + string title = table_name_ + ",|,\n,"; + string body = GetText(file1, "\n"); + string text = title + body; + // cout << text << endl; + TextMessage* message = session_->createTextMessage(text); + message->setIntProperty("Integer", ix); + producer_->send(message); + // std::cout << "sent a message" << std::endl; + delete message; + } + file1.close(); + + std::cout << "sent all message" << std::endl; + */ + + int loop_count, row_count, index; + cout << "Input the row_id start:"; + cin >> index; + auto gen_rows = [&index](int count) { + string rows = ""; + for (auto i = 0; i < count; i++) + rows += std::to_string(index) + "|" + std::to_string(i) + "\n"; + index++; + return rows; + }; + string mode; + while (true) { + cout << "Input the loop-count row-count:"; + cin >> loop_count >> row_count; + ofstream outfile("genlog.txt"); + for (auto i = 0; i < loop_count; i++) { + string title = "test,|,\n,"; + string body = gen_rows(row_count); + TextMessage* message = session_->createTextMessage(title + body); + // message->setIntProperty("Integer", index); + producer_->send(message); + outfile << body; + delete message; + } + outfile.close(); + } + } + void close() { this->cleanup(); } + + virtual void run() { + try { + // Create a ConnectionFactory + auto_ptr connectionFactory( + new ActiveMQConnectionFactory(brokerURI_)); + cout << "Create a ConnectionFactory" << endl; + // Create a Connection + try { + connection_ = connectionFactory->createConnection(); + connection_->start(); + } catch (CMSException& e) { + e.printStackTrace(); + throw e; + } + cout << "Create a Connection" << endl; + + // Create a Session + if (client_ack_) { + session_ = connection_->createSession(Session::CLIENT_ACKNOWLEDGE); + } else { + session_ = connection_->createSession(Session::AUTO_ACKNOWLEDGE); + } + cout << "Create a Session" << endl; + + // Create the destination (Topic or Queue) + if (use_topic_) { + destination_ = session_->createTopic(destURI_); + } else { + destination_ = session_->createQueue(destURI_); + } + cout << "Create the destination (Topic or Queue)" << endl; + + // Create a MessageProducer from the Session to the Topic or Queue + producer_ = session_->createProducer(destination_); + producer_->setDeliveryMode(DeliveryMode::NON_PERSISTENT); + cout << "Create a MessageProducer" << endl; + + timeval start; + gettimeofday(&start, NULL); + cout << "going to create threads" << endl; + vector threads; + // int thread_count = 8; + int thread_count = 1; + for (int i = 1; i <= thread_count; i++) { + // string tmp = filename + (char)(i + 48); + cout << file_path_ << endl; + threads.push_back( + std::thread(&Producer::SendMessage, this, file_path_)); + } + for (auto& t : threads) { + t.join(); + } + + timeval end; + gettimeofday(&end, NULL); + cout << "send message time :" + << (end.tv_usec - start.tv_usec) / 1000.0 + + (end.tv_sec - start.tv_sec) * 1000.0; + + } catch (CMSException& e) { + e.printStackTrace(); + } + } + + private: + void cleanup() { + // Destroy resources. + try { + if (destination_ != NULL) delete destination_; + } catch (CMSException& e) { + e.printStackTrace(); + } + destination_ = NULL; + + try { + if (producer_ != NULL) delete producer_; + } catch (CMSException& e) { + e.printStackTrace(); + } + producer_ = NULL; + + // Close open resources. + try { + if (session_ != NULL) session_->close(); + if (connection_ != NULL) connection_->close(); + } catch (CMSException& e) { + e.printStackTrace(); + } + + try { + if (session_ != NULL) delete session_; + } catch (CMSException& e) { + e.printStackTrace(); + } + session_ = NULL; + + try { + if (connection_ != NULL) delete connection_; + } catch (CMSException& e) { + e.printStackTrace(); + } + connection_ = NULL; + } +}; + +//////////////////////////////////////////////////////////////////////////////// +int main(int argc, char* argv[]) { + // getopt();/ + if (argc < 3) perror("error"); + + std::string file_path = argv[1]; // first parameter + + std::string table_name = argv[2]; // table name + + activemq::library::ActiveMQCPP::initializeLibrary(); + + std::cout << "=====================================================\n"; + std::cout << "Starting the example:" << std::endl; + std::cout << "-----------------------------------------------------\n"; + + // Set the URI to point to the IPAddress of your broker. + // add any optional params to the url to enable things like + // tightMarshalling or tcp logging etc. See the CMS web site for + // a full list of configuration options. + // + // http://activemq.apache.org/cms/ + // + // Wire Format Options: + // ===================== + // Use either stomp or openwire, the default ports are different for each + // + // Examples: + // tcp://127.0.0.1:61616 default to openwire + // tcp://127.0.0.1:61616?wireFormat=openwire same as above + // tcp://127.0.0.1:61613?wireFormat=stomp use stomp instead + // + std::string brokerURI = + "failover://(tcp://58.198.176.92:61616" //"failover://(tcp://58.198.176.92:61616" + "?wireFormat=openwire" + "&connection.useAsyncSend=true" + // "&transport.commandTracingEnabled=true" + // "&transport.tcpTracingEnabled=true" + // "&wireFormat.tightEncodingEnabled=true" + ")"; + + //============================================================ + // Total number of messages for this producer to send. + //============================================================ + unsigned int num_messages = 200000; + + //============================================================ + // This is the Destination Name and URI options. Use this to + // customize where the Producer produces, to have the producer + // use a topic or queue set the 'useTopics' flag. + //============================================================ + std::string destURI = "t123"; + + //============================================================ + // set to true to use topics instead of queues + // Note in the code above that this causes createTopic or + // createQueue to be used in the producer. + //============================================================ + bool use_topics = false; + + bool client_ack = false; + + cout << "new producer" << endl; + // Create the producer_ and run it. + Producer producer(brokerURI, num_messages, destURI, file_path, table_name, + use_topics, client_ack); + + cout << "start run producer" << endl; + // Publish the given number of Messages + producer.run(); + + // Before exiting we ensure that all CMS resources are closed. + producer.close(); + + std::cout << "-----------------------------------------------------\n"; + std::cout << "Finished with the example." << std::endl; + std::cout << "=====================================================\n"; + + activemq::library::ActiveMQCPP::shutdownLibrary(); + return EXIT_SUCCESS; +} diff --git a/loader/data_injector.cpp b/loader/data_ingestion.cpp similarity index 83% rename from loader/data_injector.cpp rename to loader/data_ingestion.cpp index 1e6151acc..b714aabc9 100644 --- a/loader/data_injector.cpp +++ b/loader/data_ingestion.cpp @@ -16,7 +16,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * /Claims/loader/data_injector.cpp + * /Claims/loader/data_injestion.cpp * * Created on: Oct 22, 2015 * Author: yukai @@ -26,8 +26,7 @@ * */ -#include "./data_injector.h" - +#include "./data_ingestion.h" #include #include #include @@ -101,16 +100,16 @@ using namespace claims::common; // NOLINT #define DATA_DO_LOAD /* switch to open debug log ouput */ -// #define DATA_INJECTOR_DEBUG -// #define DATA_INJECTOR_PREF +// #define DATA_INGESTION_DEBUG +// #define DATA_INGESTION_PREF #ifdef CLAIMS_DEBUG_LOG -#ifdef DATA_INJECTOR_DEBUG +#ifdef DATA_INGESTION_DEBUG #define DLOG_DI(info) DLOG(INFO) << info << std::endl; #else #define DLOG_DI(info) #endif -#ifdef DATA_INJECTOR_PREF +#ifdef DATA_INGESTION_PREF #define PLOG_DI(info) DLOG(INFO) << info << endl; #else #define PLOG_DI(info) @@ -119,7 +118,7 @@ using namespace claims::common; // NOLINT #define DLOG_DI(info) #endif -#ifdef DATA_INJECTOR_PREF +#ifdef DATA_INGESTION_PREF #define ATOMIC_ADD(var, value) __sync_add_and_fetch(&var, value); #define GET_TIME_DI(var) GETCURRENTTIME(var); #else @@ -130,31 +129,31 @@ using namespace claims::common; // NOLINT namespace claims { namespace loader { -uint64_t DataInjector::total_get_substr_time_ = 0; -uint64_t DataInjector::total_check_string_time_ = 0; -uint64_t DataInjector::total_to_value_time_ = 0; -uint64_t DataInjector::total_check_and_to_value_func_time_ = 0; -uint64_t DataInjector::total_check_and_to_value_time_ = 0; -uint64_t DataInjector::total_insert_time_ = 0; -uint64_t DataInjector::total_add_time_ = 0; -uint64_t DataInjector::total_lock_tuple_buffer_time_ = 0; -uint64_t DataInjector::total_lock_pj_buffer_time_ = 0; -uint64_t DataInjector::total_get_task_time_ = 0; - -uint64_t DataInjector::total_read_sem_time_ = 0; -uint64_t DataInjector::total_unread_sem_time_ = 0; - -uint64_t DataInjector::total_read_sem_fail_count_ = 0; -uint64_t DataInjector::total_unread_sem_fail_count_ = 0; -uint64_t DataInjector::total_append_warning_time_ = 0; - -DataInjector::DataInjector(TableDescriptor* table, const string col_separator, - const string row_separator) +uint64_t DataIngestion::total_get_substr_time_ = 0; +uint64_t DataIngestion::total_check_string_time_ = 0; +uint64_t DataIngestion::total_to_value_time_ = 0; +uint64_t DataIngestion::total_check_and_to_value_func_time_ = 0; +uint64_t DataIngestion::total_check_and_to_value_time_ = 0; +uint64_t DataIngestion::total_insert_time_ = 0; +uint64_t DataIngestion::total_add_time_ = 0; +uint64_t DataIngestion::total_lock_tuple_buffer_time_ = 0; +uint64_t DataIngestion::total_lock_pj_buffer_time_ = 0; +uint64_t DataIngestion::total_get_task_time_ = 0; + +uint64_t DataIngestion::total_read_sem_time_ = 0; +uint64_t DataIngestion::total_unread_sem_time_ = 0; + +uint64_t DataIngestion::total_read_sem_fail_count_ = 0; +uint64_t DataIngestion::total_unread_sem_fail_count_ = 0; +uint64_t DataIngestion::total_append_warning_time_ = 0; + +DataIngestion::DataIngestion(TableDescriptor* table, const string col_separator, + const string& row_separator) : table_(table), col_separator_(col_separator), row_separator_(row_separator), - row_id_in_table_(table_->row_number_), - connector_(table_->get_connector()) { + row_id_in_table_(table->row_number_), + connector_(table->get_connector()) { sub_tuple_generator_.clear(); table_schema_ = table_->getSchema(); for (int i = 0; i < table_->getNumberOfProjection(); i++) { @@ -188,7 +187,7 @@ DataInjector::DataInjector(TableDescriptor* table, const string col_separator, prj_index.push_back(prj_attrs[j].index); } SubTuple* st = new SubTuple( - table_->getSchema(), table_->getProjectoin(i)->getSchema(), prj_index); + table_schema_, table_->getProjectoin(i)->getSchema(), prj_index); sub_tuple_generator_.push_back(st); } @@ -199,7 +198,7 @@ DataInjector::DataInjector(TableDescriptor* table, const string col_separator, // #endif } -DataInjector::~DataInjector() { +DataIngestion::~DataIngestion() { DELETE_PTR(table_schema_); // DELETE_PTR(connector_); DELETE_PTR(sblock_); @@ -217,7 +216,7 @@ DataInjector::~DataInjector() { file_list_.clear(); } -RetCode DataInjector::PrepareInitInfo(FileOpenFlag open_flag) { +RetCode DataIngestion::PrepareInitInfo(FileOpenFlag open_flag) { int ret = rSuccess; for (int i = 0; i < table_->getNumberOfProjection(); i++) { vector temp_v; @@ -253,10 +252,10 @@ RetCode DataInjector::PrepareInitInfo(FileOpenFlag open_flag) { return ret; } -RetCode DataInjector::LoadFromFileSingleThread(vector input_file_names, - FileOpenFlag open_flag, - ExecutedResult* result, - double sample_rate) { +RetCode DataIngestion::LoadFromFileSingleThread(vector input_file_names, + FileOpenFlag open_flag, + ExecutedResult* result, + double sample_rate) { int ret = rSuccess; int file_count = 0; uint64_t row_id_in_file = 0; @@ -321,8 +320,8 @@ RetCode DataInjector::LoadFromFileSingleThread(vector input_file_names, } // only handle data warnings, because of no data error for (auto it : columns_validities) { - string validity_info = - GenerateDataValidityInfo(it, table_, row_id_in_file, file_name); + string validity_info = Validity::GenerateDataValidityInfo( + it, table_, row_id_in_file, file_name); DLOG_DI("append warning info:" << validity_info); result->AppendWarning(validity_info); } @@ -367,8 +366,8 @@ RetCode DataInjector::LoadFromFileSingleThread(vector input_file_names, return ret; } -RetCode DataInjector::SetTableState(FileOpenFlag open_flag, - ExecutedResult* result) { +RetCode DataIngestion::SetTableState(FileOpenFlag open_flag, + ExecutedResult* result) { int ret = rSuccess; if (FileOpenFlag::kCreateFile == open_flag) { /* @@ -403,8 +402,8 @@ RetCode DataInjector::SetTableState(FileOpenFlag open_flag, return ret; } -RetCode DataInjector::CheckFiles(vector input_file_names, - ExecutedResult* result) { +RetCode DataIngestion::CheckFiles(vector input_file_names, + ExecutedResult* result) { int ret = rSuccess; for (auto file_name : input_file_names) { ifstream input_file(file_name.c_str()); @@ -419,7 +418,7 @@ RetCode DataInjector::CheckFiles(vector input_file_names, return ret; } -RetCode DataInjector::PrepareEverythingForLoading( +RetCode DataIngestion::PrepareEverythingForLoading( vector input_file_names, FileOpenFlag open_flag, ExecutedResult* result) { int ret = rSuccess; @@ -455,7 +454,7 @@ RetCode DataInjector::PrepareEverythingForLoading( return ret; } -RetCode DataInjector::FinishJobAfterLoading(FileOpenFlag open_flag) { +RetCode DataIngestion::FinishJobAfterLoading(FileOpenFlag open_flag) { int ret = rSuccess; #ifdef DATA_DO_LOAD @@ -474,10 +473,10 @@ RetCode DataInjector::FinishJobAfterLoading(FileOpenFlag open_flag) { return ret; } -RetCode DataInjector::LoadFromFileMultiThread(vector input_file_names, - FileOpenFlag open_flag, - ExecutedResult* result, - double sample_rate) { +RetCode DataIngestion::LoadFromFileMultiThread(vector input_file_names, + FileOpenFlag open_flag, + ExecutedResult* result, + double sample_rate) { int ret = rSuccess; int file_count = 0; uint64_t row_id_in_file = 0; @@ -601,9 +600,10 @@ RetCode DataInjector::LoadFromFileMultiThread(vector input_file_names, * Phase 2: after handing all raw data file, flush all block that are not full * into HDFS/disk */ -RetCode DataInjector::LoadFromFile(vector input_file_names, - FileOpenFlag open_flag, - ExecutedResult* result, double sample_rate) { +RetCode DataIngestion::LoadFromFile(vector input_file_names, + FileOpenFlag open_flag, + ExecutedResult* result, + double sample_rate) { total_get_substr_time_ = 0; total_check_string_time_ = 0; total_to_value_time_ = 0; @@ -631,7 +631,7 @@ RetCode DataInjector::LoadFromFile(vector input_file_names, #endif } -RetCode DataInjector::PrepareLocalPJBuffer( +RetCode DataIngestion::PrepareLocalPJBuffer( vector>& pj_buffer) { int ret = rSuccess; for (int i = 0; i < table_->getNumberOfProjection(); i++) { @@ -649,7 +649,7 @@ RetCode DataInjector::PrepareLocalPJBuffer( return ret; } -RetCode DataInjector::DestroyLocalPJBuffer( +RetCode DataIngestion::DestroyLocalPJBuffer( vector>& pj_buffer) { int ret = rSuccess; for (auto it : pj_buffer) { @@ -662,19 +662,21 @@ RetCode DataInjector::DestroyLocalPJBuffer( return ret; } -void* DataInjector::HandleTuple(void* ptr) { - DataInjector* injector = static_cast(ptr); +void* DataIngestion::HandleTuple(void* ptr) { + DataIngestion* injestion = static_cast(ptr); string tuple_to_handle = ""; string file_name = ""; + uint64_t got_tuple_count = 0; + uint64_t handled_tuple_count = 0; uint64_t row_id_in_file = 0; - DataInjector::LoadTask task; + DataIngestion::LoadTask task; RetCode ret = rSuccess; - int self_thread_index = __sync_fetch_and_add(&injector->thread_index_, 1); + int self_thread_index = __sync_fetch_and_add(&injestion->thread_index_, 1); LOG(INFO) << "my thread_index is " << self_thread_index << endl; LOG(INFO) << "before handling tuple, thread " << self_thread_index << " tuple count sem value is :" - << injector->tuple_count_sem_in_lists_[self_thread_index].get_value() + << injestion->tuple_count_sem_in_lists_[self_thread_index].get_value() << endl; /* * store the validity of every column data, @@ -682,98 +684,102 @@ void* DataInjector::HandleTuple(void* ptr) { * is used for too many columns and too few columns */ vector columns_validities; - void* tuple_buffer = Malloc(injector->table_schema_->getTupleMaxSize()); + void* tuple_buffer = Malloc(injestion->table_schema_->getTupleMaxSize()); if (NULL == tuple_buffer) { ret = rNoMemory; - injector->multi_thread_status_ = ret; - injector->finished_thread_sem_.post(); + injestion->multi_thread_status_ = ret; + injestion->finished_thread_sem_.post(); return NULL; } Block* block_to_write = new Block(BLOCK_SIZE); vector> local_pj_buffer; - injector->PrepareLocalPJBuffer(local_pj_buffer); + injestion->PrepareLocalPJBuffer(local_pj_buffer); while (true) { - if (injector->multi_thread_status_ != rSuccess) break; + if (injestion->multi_thread_status_ != rSuccess) break; GET_TIME_DI(start_get_task_time); - if (injector->all_tuple_read_ == 1) { + if (injestion->all_tuple_read_ == 1) { GET_TIME_DI(start_read_sem); - if (!injector->tuple_count_sem_in_lists_[self_thread_index] + if (!injestion->tuple_count_sem_in_lists_[self_thread_index] .try_wait()) { ///// lock/sem - ATOMIC_ADD(injector->total_read_sem_fail_count_, 1); - ATOMIC_ADD(injector->total_read_sem_time_, + ATOMIC_ADD(injestion->total_read_sem_fail_count_, 1); + ATOMIC_ADD(injestion->total_read_sem_time_, GetElapsedTimeInUs(start_read_sem)); DLOG_DI("all tuple in pool is handled "); + DLOG(INFO) << " thread " << self_thread_index << " got " + << got_tuple_count << " tuples and handled " + << handled_tuple_count << " tuples"; EXEC_AND_LOG( - ret, injector->FlushNotFullBlock(block_to_write, local_pj_buffer), + ret, injestion->FlushNotFullBlock(block_to_write, local_pj_buffer), "flush all last block that are not full", "failed to flush all last block."); if (ret != rSuccess) // it is not need to use lock - injector->multi_thread_status_ = ret; + injestion->multi_thread_status_ = ret; DELETE_PTR(tuple_buffer); - injector->DestroyLocalPJBuffer(local_pj_buffer); - injector->finished_thread_sem_.post(); + injestion->DestroyLocalPJBuffer(local_pj_buffer); + injestion->finished_thread_sem_.post(); return NULL; // success. all tuple is handled } DLOG_DI("all tuple is read ,tuple count sem is:" - << injector->tuple_count_sem_in_lists_[self_thread_index] + << injestion->tuple_count_sem_in_lists_[self_thread_index] .get_value()); // get tuple from list without lock, as // producer thread is over, there are only consumer threads - task = std::move(injector->task_lists_[self_thread_index].front()); - injector->task_lists_[self_thread_index].pop_front(); + task = std::move(injestion->task_lists_[self_thread_index].front()); + injestion->task_lists_[self_thread_index].pop_front(); } else { DLOG_DI("tuple count sem is:" - << injector->tuple_count_sem_in_lists_[self_thread_index] + << injestion->tuple_count_sem_in_lists_[self_thread_index] .get_value()); // waiting for new tuple read from file GET_TIME_DI(start_unread_sem); - if (!injector + if (!injestion ->tuple_count_sem_in_lists_[self_thread_index] ///// lock/sem .try_wait()) { ///// lock/sem - ATOMIC_ADD(injector->total_unread_sem_fail_count_, 1); + ATOMIC_ADD(injestion->total_unread_sem_fail_count_, 1); continue; } - ATOMIC_ADD(injector->total_unread_sem_time_, + ATOMIC_ADD(injestion->total_unread_sem_time_, GetElapsedTimeInUs(start_unread_sem)); // get tuple from pool with lock GET_TIME_DI(start_tuple_buffer_lock_time); LockGuard guard( - injector->task_list_access_lock_[self_thread_index]); ///// lock/sem + injestion->task_list_access_lock_[self_thread_index]); ///// lock/sem ATOMIC_ADD( - injector->total_lock_tuple_buffer_time_, ///// lock/sem + injestion->total_lock_tuple_buffer_time_, ///// lock/sem GetElapsedTimeInUs(start_tuple_buffer_lock_time)); ///// lock/sem task = std::move( - injector->task_lists_[self_thread_index].front()); ///// lock/sem - injector->task_lists_[self_thread_index].pop_front(); ///// lock/sem + injestion->task_lists_[self_thread_index].front()); ///// lock/sem + injestion->task_lists_[self_thread_index].pop_front(); ///// lock/sem } + ++got_tuple_count; tuple_to_handle = task.tuple_; file_name = task.file_name_; row_id_in_file = task.row_id_in_file_; DLOG_DI("thread " << self_thread_index << " get task whose row_id_in_file is " << row_id_in_file); - ATOMIC_ADD(injector->total_get_task_time_, + ATOMIC_ADD(injestion->total_get_task_time_, GetElapsedTimeInUs(start_get_task_time)); - if (0 == row_id_in_file % 50000) injector->AnnounceIAmLoading(); + if (0 == row_id_in_file % 50000) injestion->AnnounceIAmLoading(); GET_TIME_DI(add_time); - EXEC_AND_ONLY_LOG_ERROR(ret, injector->AddRowIdColumn(tuple_to_handle), + EXEC_AND_ONLY_LOG_ERROR(ret, injestion->AddRowIdColumn(tuple_to_handle), "failed to add row_id column for tuple."); if (ret != rSuccess) { // it is not need to use lock - injector->multi_thread_status_ = ret; + injestion->multi_thread_status_ = ret; break; } - ATOMIC_ADD(injector->total_add_time_, GetElapsedTimeInUs(add_time)); + ATOMIC_ADD(injestion->total_add_time_, GetElapsedTimeInUs(add_time)); DLOG_DI("after adding row id, tuple is:" << tuple_to_handle); GET_TIME_DI(start_check_time); columns_validities.clear(); - memset(tuple_buffer, 0, injector->table_schema_->getTupleMaxSize()); - if (rSuccess != (ret = injector->CheckAndToValue( + memset(tuple_buffer, 0, injestion->table_schema_->getTupleMaxSize()); + if (rSuccess != (ret = injestion->CheckAndToValue( tuple_to_handle, tuple_buffer, RawDataSource::kFile, columns_validities))) { /** @@ -782,42 +788,44 @@ void* DataInjector::HandleTuple(void* ptr) { */ ELOG(ret, "Data is in file name: " << file_name << " Line: " << row_id_in_file); - injector->multi_thread_status_ = ret; + injestion->multi_thread_status_ = ret; break; } // only handle data warnings, because of no data error - if (!injector->result_->HasEnoughWarning()) { + if (!injestion->result_->HasEnoughWarning()) { for (auto it : columns_validities) { - string validity_info = injector->GenerateDataValidityInfo( - it, injector->table_, row_id_in_file, file_name); + string validity_info = Validity::GenerateDataValidityInfo( + it, injestion->table_, row_id_in_file, file_name); DLOG_DI("append warning info:" << validity_info); GET_TIME_DI(start_append_warning_time); - injector->result_->AtomicAppendWarning(validity_info); ///// lock/sem - ATOMIC_ADD(injector->total_append_warning_time_, + injestion->result_->AtomicAppendWarning(validity_info); ///// lock/sem + ATOMIC_ADD(injestion->total_append_warning_time_, GetElapsedTimeInUs(start_append_warning_time)); } } - ATOMIC_ADD(injector->total_check_and_to_value_time_, + ATOMIC_ADD(injestion->total_check_and_to_value_time_, GetElapsedTimeInUs(start_check_time)); GET_TIME_DI(start_insert_time); EXEC_AND_ONLY_LOG_ERROR( - ret, injector->InsertSingleTuple(tuple_buffer, block_to_write, - local_pj_buffer), ///// lock/sem + ret, injestion->InsertSingleTuple(tuple_buffer, block_to_write, + local_pj_buffer), ///// lock/sem "failed to insert tuple in " << file_name << " at line " << row_id_in_file << "."); if (ret != rSuccess) { // it is not need to use lock - injector->multi_thread_status_ = ret; + injestion->multi_thread_status_ = ret; break; } - ATOMIC_ADD(injector->total_insert_time_, + + ++handled_tuple_count; + ATOMIC_ADD(injestion->total_insert_time_, GetElapsedTimeInUs(start_insert_time)); } DELETE_PTR(block_to_write); DELETE_PTR(tuple_buffer); - injector->DestroyLocalPJBuffer(local_pj_buffer); - injector->finished_thread_sem_.post(); + injestion->DestroyLocalPJBuffer(local_pj_buffer); + injestion->finished_thread_sem_.post(); } /** @@ -825,8 +833,8 @@ void* DataInjector::HandleTuple(void* ptr) { * if all OK, then insert into file and update catalog; * else return error to client without inserting any data */ -RetCode DataInjector::InsertFromString(const string tuples, - ExecutedResult* result) { +RetCode DataIngestion::InsertFromString(const string tuples, + ExecutedResult* result) { int ret = rSuccess; LOG(INFO) << "tuples is: " << tuples << endl; @@ -860,33 +868,40 @@ RetCode DataInjector::InsertFromString(const string tuples, vector columns_validities; void* tuple_buffer = Malloc(table_schema_->getTupleMaxSize()); - if (tuple_buffer == NULL) return rNoMemory; + if (tuple_buffer == NULL) { + for (auto it : correct_tuple_buffer) DELETE_PTR(it); + correct_tuple_buffer.clear(); + return rNoMemory; + } ostringstream oss; if (rSuccess != (ret = CheckAndToValue(tuple_record, tuple_buffer, RawDataSource::kSQL, columns_validities))) { // contain data error, which is stored in the end of columns_validities - for (auto it : correct_tuple_buffer) DELETE_PTR(it); - correct_tuple_buffer.clear(); - // handle error which stored in the end Validity err = columns_validities.back(); columns_validities.pop_back(); - string validity_info = GenerateDataValidityInfo(err, table_, line, ""); + string validity_info = + Validity::GenerateDataValidityInfo(err, table_, line, ""); LOG(ERROR) << validity_info; result->SetError(validity_info); } // handle all warnings for (auto it : columns_validities) { - string validity_info = GenerateDataValidityInfo(it, table_, line, ""); + string validity_info = + Validity::GenerateDataValidityInfo(it, table_, line, ""); DLOG_DI("append warning info:" << validity_info); result->AppendWarning(validity_info); } // if check failed, return ret - if (rSuccess != ret) return ret; + if (rSuccess != ret) { + for (auto it : correct_tuple_buffer) DELETE_PTR(it); + correct_tuple_buffer.clear(); + return ret; + } correct_tuple_buffer.push_back(tuple_buffer); ++line; @@ -916,7 +931,7 @@ RetCode DataInjector::InsertFromString(const string tuples, } // flush the last block which is not full of 64*1024Byte -RetCode DataInjector::FlushNotFullBlock( +RetCode DataIngestion::FlushNotFullBlock( Block* block_to_write, vector>& pj_buffer) { TableDescriptor* table = table_; int ret = rSuccess; @@ -944,7 +959,7 @@ RetCode DataInjector::FlushNotFullBlock( return ret; } -RetCode DataInjector::UpdateCatalog(FileOpenFlag open_flag) { +RetCode DataIngestion::UpdateCatalog(FileOpenFlag open_flag) { int ret = rSuccess; // register the partition information to catalog for (int i = 0; i < table_->getNumberOfProjection(); i++) { @@ -968,7 +983,7 @@ RetCode DataInjector::UpdateCatalog(FileOpenFlag open_flag) { return ret; } -inline RetCode DataInjector::AddRowIdColumn(string& tuple_string) { +inline RetCode DataIngestion::AddRowIdColumn(string& tuple_string) { uint64_t row_id_value = __sync_fetch_and_add(&row_id_in_table_, 1L); // make sure tuple string in a uniform format(always has a column // separator before row separator) with format of what is get from INSERT @@ -977,7 +992,7 @@ inline RetCode DataInjector::AddRowIdColumn(string& tuple_string) { return rSuccess; } -RetCode DataInjector::InsertTupleIntoProjection( +RetCode DataIngestion::InsertTupleIntoProjection( int proj_index, void* tuple_buffer, Block* block_to_write, vector>& local_pj_buffer) { int ret = rSuccess; @@ -1045,7 +1060,7 @@ RetCode DataInjector::InsertTupleIntoProjection( * partition key * if the block is full, write to real data file in HDFS/disk. */ -RetCode DataInjector::InsertSingleTuple( +RetCode DataIngestion::InsertSingleTuple( void* tuple_buffer, Block* block_to_write, vector>& local_pj_buffer) { int ret = rSuccess; @@ -1056,7 +1071,7 @@ RetCode DataInjector::InsertSingleTuple( return ret; } -inline RetCode DataInjector::CheckAndToValue( +inline RetCode DataIngestion::CheckAndToValue( string tuple_string, void* tuple_buffer, RawDataSource raw_data_source, vector& columns_validities) { // RetCode success = @@ -1065,8 +1080,8 @@ inline RetCode DataInjector::CheckAndToValue( columns_validities); } -istream& DataInjector::GetTupleTerminatedBy(ifstream& ifs, string& res, - const string& terminator) { +istream& DataIngestion::GetTupleTerminatedBy(istream& ifs, string& res, + const string& terminator) { res.clear(); if (1 == terminator.length()) { return getline(ifs, res, static_cast(terminator[0])); @@ -1093,7 +1108,7 @@ istream& DataInjector::GetTupleTerminatedBy(ifstream& ifs, string& res, return ifs; } -void DataInjector::AnnounceIAmLoading() { +void DataIngestion::AnnounceIAmLoading() { static char* load_output_info[7] = { "Loading \r", "Loading.\r", "Loading..\r", "Loading...\r", "Loading....\r", "Loading.....\r", "Loading......\r"}; @@ -1114,15 +1129,17 @@ const char* validity_info[9][2] = { {}, {}}; */ -string DataInjector::GenerateDataValidityInfo(const Validity& vali, - TableDescriptor* table, int line, - const string& file) { + +/* +string DataIngestion::GenerateDataValidityInfo(const Validity& vali, + TableDescriptor* table, int line, + const string& file) { ostringstream oss; oss.clear(); switch (vali.check_res_) { case rTooLargeData: { oss << "Data larger than range value for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1130,7 +1147,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rTooSmallData: { oss << "Data smaller than range value for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1138,7 +1155,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rInterruptedData: { oss << "Data truncated from non-digit for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1146,7 +1163,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rTooLongData: { oss << "Data truncated for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1154,7 +1171,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rIncorrectData: { oss << "Incorrect format value for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1162,7 +1179,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rInvalidNullData: { oss << "Null Data value is invalid for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1183,7 +1200,7 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } case rInvalidInsertData: { oss << "Data value is invalid for column '" - << table_->getAttribute(vali.column_index_).attrName + << table->getAttribute(vali.column_index_).attrName << "' at line: " << line; if ("" != file) oss << " in file: " << file; oss << "\n"; @@ -1196,6 +1213,6 @@ string DataInjector::GenerateDataValidityInfo(const Validity& vali, } return oss.str(); } - +*/ } /* namespace loader */ } /* namespace claims */ diff --git a/loader/data_injector.h b/loader/data_ingestion.h similarity index 92% rename from loader/data_injector.h rename to loader/data_ingestion.h index c9fea08df..a191d6ede 100644 --- a/loader/data_injector.h +++ b/loader/data_ingestion.h @@ -16,18 +16,18 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * /Claims/loader/data_injector.h + * /Claims/loader/data_injestion.h * * Created on: Oct 22, 2015 * Author: yukai * Email: yukai2014@gmail.com * - * Description: class for injecting data from files or string + * Description: class for ingesting data from files or string * */ -#ifndef LOADER_DATA_INJECTOR_H_ -#define LOADER_DATA_INJECTOR_H_ +#ifndef LOADER_DATA_INGESTION_H_ +#define LOADER_DATA_INGESTION_H_ #include #include #include @@ -52,7 +52,7 @@ class ExecutedResult; namespace claims { namespace loader { class TableFileConnector; -class DataInjector { +class DataIngestion { public: struct LoadTask { std::string tuple_; @@ -64,7 +64,7 @@ class DataInjector { }; public: - // DataInjector() {} + // DataIngestion() {} /** * @brief Method description: get necessary info from table and init * connector_ @@ -72,10 +72,10 @@ class DataInjector { * @param col_separator: column separator * @param row_separator: row separator */ - DataInjector(TableDescriptor* table, const string col_separator = "|", - const string row_separator = "\n"); + DataIngestion(TableDescriptor* table, const string col_separator = "|", + const string& row_separator = "\n"); - virtual ~DataInjector(); + virtual ~DataIngestion(); /** * @brief Method description: load/append data from multiple files into table @@ -157,8 +157,9 @@ class DataInjector { string data_source, uint64_t row_id_in_raw_data, ExecutedResult* result); - string GenerateDataValidityInfo(const Validity& vali, TableDescriptor* table, - int line, const string& file); + // string GenerateDataValidityInfo(const Validity& vali, TableDescriptor* + // table, + // int line, const string& file); void AnnounceIAmLoading(); static void* HandleTuple(void* ptr); @@ -175,11 +176,11 @@ class DataInjector { RetCode DestroyLocalPJBuffer(vector>& pj_buffer); public: - static istream& GetTupleTerminatedBy(ifstream& ifs, string& res, + static istream& GetTupleTerminatedBy(istream& ifs, string& res, const string& terminator); private: - TableDescriptor* table_; + const TableDescriptor* table_; TableFileConnector& connector_; Schema* table_schema_; @@ -239,4 +240,4 @@ class DataInjector { } /* namespace loader */ } /* namespace claims */ -#endif // LOADER_DATA_INJECTOR_H_ +#endif // LOADER_DATA_INGESTION_H_ diff --git a/loader/load_packet.cpp b/loader/load_packet.cpp new file mode 100644 index 000000000..a1c90f7fa --- /dev/null +++ b/loader/load_packet.cpp @@ -0,0 +1,80 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/load_packet.cpp + * + * Created on: Apr 17, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#include "./load_packet.h" + +#include +#include "../common/memory_handle.h" + +using namespace claims::common; // NOLINT + +namespace claims { +namespace loader { + +LoadPacket::~LoadPacket() { DELETE_PTR(packet_buffer_); } + +RetCode LoadPacket::Serialize() { + packet_length_ = kHeadLength + data_length_; + packet_buffer_ = Malloc(packet_length_); + if (NULL == packet_length_) { + ELOG(rNoMemory, "no memory for packet buffer"); + return rNoMemory; + } + + *reinterpret_cast(packet_buffer_) = txn_id_; + *reinterpret_cast(packet_buffer_ + 1 * sizeof(uint64_t)) = + global_part_id_; + *reinterpret_cast(packet_buffer_ + 2 * sizeof(uint64_t)) = pos_; + *reinterpret_cast(packet_buffer_ + 3 * sizeof(uint64_t)) = offset_; + *reinterpret_cast(packet_buffer_ + 4 * sizeof(uint64_t)) = + data_length_; + DLOG(INFO) << "Serialize packet: " << txn_id_ << " " << global_part_id_ << " " + << pos_ << " " << offset_ << " " << data_length_; + + memcpy(packet_buffer_ + kHeadLength, data_buffer_, data_length_); + return rSuccess; +} + +RetCode LoadPacket::Deserialize(const void* const head_buffer, + const void* const data_buffer) { + txn_id_ = *reinterpret_cast(head_buffer); + global_part_id_ = + *reinterpret_cast(head_buffer + sizeof(uint64_t)); + pos_ = *reinterpret_cast(head_buffer + 2 * sizeof(uint64_t)); + offset_ = + *reinterpret_cast(head_buffer + 3 * sizeof(uint64_t)); + data_length_ = + *reinterpret_cast(head_buffer + 4 * sizeof(uint64_t)); + DLOG(INFO) << "Deserialize packet: " << txn_id_ << " " << global_part_id_ + << " " << pos_ << " " << offset_ << " " << data_length_; + data_buffer_ = data_buffer; + return rSuccess; +} + +} /* namespace loader */ +} /* namespace claims */ diff --git a/loader/load_packet.h b/loader/load_packet.h new file mode 100644 index 000000000..23fcd253d --- /dev/null +++ b/loader/load_packet.h @@ -0,0 +1,100 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/load_packet.h + * + * Created on: Apr 17, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef LOADER_LOAD_PACKET_H_ +#define LOADER_LOAD_PACKET_H_ +#include "../common/error_define.h" +#include "../txn_manager/txn.hpp" + +namespace claims { +namespace loader { + +using IpPortAtom = caf::atom_constant; +using LoadPacketAtom = caf::atom_constant; +using LoadAckAtom = caf::atom_constant; +using RegNodeAtom = caf::atom_constant; +using BindPartAtom = caf::atom_constant; +using OkAtom = caf::atom_constant; +using AddBlockAtom = caf::atom_constant; + +/************** LoadPacket format *****************/ +/** field type length **********/ +/****************************************************/ +/** transaction_id uint64_t 8 **/ +/** global_part_id uint64_t 8 **/ +/** position uint64_t 8 **/ +/** offset uint64_t 8 **/ +/** date_length uint64_t 8 **/ +/** data void* data_length **/ +/****************************************************/ +struct LoadPacket { + public: + LoadPacket() {} + LoadPacket(int socket_fd, const uint64_t txn_id, const uint64_t g_part_id, + uint64_t pos, uint64_t offset, uint64_t data_length, + void* data_buffer) + : txn_id_(txn_id), + global_part_id_(g_part_id), + pos_(pos), + offset_(offset), + data_buffer_(data_buffer), + data_length_(data_length), + socket_fd_(socket_fd) {} + ~LoadPacket(); + RetCode Serialize(); + + RetCode Deserialize(const void* const head_buffer, + const void* const data_buffer); + + public: + static const int kHeadLength = 5 * sizeof(uint64_t); + const void* getDataBuffer() { return data_buffer_; } + void setDataBuffer(void* data_buffer) { data_buffer_ = data_buffer; } + + public: + uint64_t txn_id_; + uint64_t global_part_id_; + uint64_t pos_; + uint64_t offset_; + uint64_t data_length_; + void* data_buffer_; + + int socket_fd_ = -1; + uint64_t packet_length_ = 0; + void* packet_buffer_ = NULL; +}; + +inline bool operator==(const LoadPacket& a, const LoadPacket& b) { + return a.txn_id_ == b.txn_id_ && a.global_part_id_ == b.global_part_id_ && + a.pos_ == b.pos_; +} + +} /* namespace loader */ +} /* namespace claims */ + +#endif // LOADER_LOAD_PACKET_H_ diff --git a/loader/loader_message.h b/loader/loader_message.h new file mode 100644 index 000000000..420625e23 --- /dev/null +++ b/loader/loader_message.h @@ -0,0 +1,35 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/loader_message.h + * + * Created on: Apr 9, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef LOADER_LOADER_MESSAGE_H_ +#define LOADER_LOADER_MESSAGE_H_ + +#include "caf/all.hpp" +#include "caf/io/all.hpp" + +#endif // LOADER_LOADER_MESSAGE_H_ diff --git a/loader/master_loader.cpp b/loader/master_loader.cpp new file mode 100644 index 000000000..3fd5eab93 --- /dev/null +++ b/loader/master_loader.cpp @@ -0,0 +1,980 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/master_loader.cpp + * + * Created on: Apr 7, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#include "./master_loader.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "caf/all.hpp" +#include "caf/io/all.hpp" + +#include "./AMQ_consumer.h" +#include "./load_packet.h" +#include "./loader_message.h" +#include "./validity.h" +#include "../catalog/catalog.h" +#include "../catalog/partitioner.h" +#include "../catalog/table.h" +#include "../common/data_type.h" +#include "../common/error_define.h" +#include "../common/ids.h" +#include "../common/memory_handle.h" +#include "../common/Schema/TupleConvertor.h" +#include "../Config.h" +#include "../Environment.h" +#include "../loader/data_ingestion.h" +#include "../Resource/NodeTracker.h" +#include "../txn_manager/txn.hpp" +#include "../txn_manager/txn_client.hpp" +#include "../txn_manager/txn_log.hpp" +#include "../utility/cpu_scheduler.h" +#include "../utility/resource_guard.h" +#include "../utility/Timer.h" +using caf::aout; +using caf::behavior; +using caf::event_based_actor; +using caf::io::publish; +using caf::io::remote_actor; +using caf::spawn; +using std::endl; +using claims::catalog::Catalog; +using claims::catalog::Partitioner; +using claims::catalog::TableDescriptor; +using claims::common::Malloc; +using claims::common::rSuccess; +using claims::common::rFailure; +using namespace claims::txn; // NOLINT + +// #define SEND_THREAD + +// #define NON_BLOCK_SOCKET + +#define MASTER_LOADER_PREF +// #define MASTER_LOADER_DEBUG + +#ifdef MASTER_LOADER_DEBUG +#define PERFLOG(info) LOG(INFO) << info << endl; +#else +#define PERFLOG(info) +#endif + +#ifdef MASTER_LOADER_PREF +#define ATOMIC_ADD(var, value) __sync_add_and_fetch(&var, value); +#define GET_TIME_ML(var) GETCURRENTTIME(var); +#else +#define ATOMIC_ADD(var, value) +#define GET_TIME_ML(var) +#endif + +uint64_t MasterLoader::debug_finished_txn_count = 0; +uint64_t MasterLoader::debug_consumed_message_count = 0; +timeval MasterLoader::start_time; +uint64_t MasterLoader::txn_average_delay_ = 0; +static int MasterLoader::buffer_full_time = 0; +atomic message_count; +static const int txn_count_for_debug = 10000; + +namespace claims { +namespace loader { + +ofstream MasterLoader::logfile; + +void MasterLoader::AddCount() { + message_count.fetch_add(1); + // cout << "new message" << endl; +} + +behavior MasterLoader::Monitor(event_based_actor* self) { + static uint64_t last_count = 0; + self->delayed_send(self, seconds(5), "monitor"); + return {[self](const string& str) { + auto tmp = message_count.load(); + if (tmp != last_count) { + last_count = tmp; + cout << "master_loader receive count==>" << last_count << endl; + } + self->delayed_send(self, seconds(5), "monitor"); + }}; +} + +void MasterLoader::IngestionRequest::Show() { + DLOG(INFO) << "table name:" << table_name_ + << ", column separator:" << col_sep_ + << ", row separator:" << row_sep_ + << ", tuples size is:" << tuples_.size(); +} + +MasterLoader::MasterLoader() + : master_loader_ip_(Config::master_loader_ip), + master_loader_port_(Config::master_loader_port), + send_thread_num_(Config::master_loader_thread_num / 2 + 1) { +#ifdef SEND_THREAD + packet_queues_ = new queue[send_thread_num_]; + packet_queue_lock_ = new SpineLock[send_thread_num_]; + packet_queue_to_send_count_ = new semaphore[send_thread_num_]; +#endif +} + +MasterLoader::~MasterLoader() { +#ifdef SEND_THREAD + for (int i = 0; i < send_thread_num_; ++i) { + while (!packet_queues_[i].empty()) { + DELETE_PTR(packet_queues_[i].front()); + packet_queues_[i].pop(); + } + } +#endif + DELETE_ARRAY(packet_queues_); + DELETE_ARRAY(packet_queue_lock_); + DELETE_ARRAY(packet_queue_to_send_count_); +} + +static behavior MasterLoader::ReceiveSlaveReg(event_based_actor* self, + MasterLoader* mloader) { + return { + [=](IpPortAtom, std::string ip, int port) -> int { // NOLINT + LOG(INFO) << "receive slave network address(" << ip << ":" << port + << ")" << endl; + int new_slave_fd = -1; + if (rSuccess != + mloader->GetSocketFdConnectedWithSlave(ip, port, &new_slave_fd)) { + LOG(ERROR) << "failed to get connected fd with slave"; + } else { + LOG(INFO) << "succeed to get connected fd " << new_slave_fd + << "with slave"; + } + assert(new_slave_fd > 3); + + DLOG(INFO) << "going to push socket into map"; + mloader->slave_addr_to_socket_[NodeAddress(ip, "")] = new_slave_fd; + mloader->socket_fd_to_lock_[new_slave_fd] = Lock(); + DLOG(INFO) << "start to send test message to slave"; + + cout << "slave_node <=> socket_fd" << endl; + for (auto node = mloader->slave_addr_to_socket_.begin(); + node != mloader->slave_addr_to_socket_.end(); node++) + cout << "ip:" << node->first.ip << ", socket fd:" << node->second + << endl; + /* + /// test whether socket works well + ostringstream oss; + oss << "hello, i'm master, whose address is " + << mloader->master_loader_ip << ":" + << to_string(mloader->master_loader_port) << ". \0"; + + int message_length = oss.str().length(); + DLOG(INFO) << "message length is " << message_length; + + if (-1 == + write(new_slave_fd, + reinterpret_cast(&message_length), 4)) { + PLOG(ERROR) << "failed to send message length to slave(" + << + ip + << ":" + << port << ")"; + } else { + DLOG(INFO) << "message length is sent"; + } + if (-1 == write(new_slave_fd, oss.str().c_str(), + message_length)) { + PLOG(ERROR) << "failed to send message to slave(" << ip << + ":" + << port + << ")"; + } else { + DLOG(INFO) << "message buffer is sent"; + } + */ + return 1; + }, + [=](LoadAckAtom, uint64_t txn_id, bool is_commited) { // NOLINT + + /* + TODO(ANYONE): there should be a thread checking whether + transaction overtime periodically and abort these transaction + and delete from map. + Consider that: if this function access the item in map just deleted + by above thread, unexpected thing happens. + */ + + DLOG(INFO) << "received a commit result " << is_commited + << " of txn with id:" << txn_id; + + // cout << "(" << syscall(__NR_gettid) << ")received a commit + // result " + // << is_commited << "of txn with id:" << txn_id << endl; + try { + mloader->commit_info_spin_lock_.acquire(); + CommitInfo& commit_info = mloader->txn_commint_info_.at(txn_id); + mloader->commit_info_spin_lock_.release(); + + if (is_commited) { + __sync_add_and_fetch(&commit_info.commited_part_num_, 1); + } else { + __sync_add_and_fetch(&commit_info.abort_part_num_, 1); + } + if (commit_info.IsFinished()) { + if (0 == commit_info.abort_part_num_) { + DLOG(INFO) << "going to commit txn with id:" << txn_id << endl; + TxnClient::CommitIngest(txn_id); + DLOG(INFO) << "committed txn with id:" << txn_id + << " to txn manager"; + } else { + DLOG(INFO) << "going to abort txn with id:" << txn_id << endl; + TxnClient::AbortIngest(txn_id); + DLOG(INFO) << "aborted txn with id:" << txn_id + << " to txn manager"; + } + + LOG(INFO) << "finished txn with id:" << txn_id; + mloader->commit_info_spin_lock_.acquire(); + mloader->txn_commint_info_.erase(txn_id); + mloader->commit_info_spin_lock_.release(); + + // FOR DEBUG +#ifdef MASTER_LOADER_PREF + if (++debug_finished_txn_count == txn_count_for_debug) { + cout << "\n" << txn_count_for_debug << " txn used " + << GetElapsedTimeInUs(start_time) << " us" << endl; + cout << "average delay of " << txn_count_for_debug + << "txn (from applied txn to finished txn) is:" + << txn_average_delay_ * 1.0 / txn_count_for_debug << " us" + << endl; + // cout << "buffer full times:" << buffer_full_time + // << endl; + } else if (debug_finished_txn_count < txn_count_for_debug) { + txn_average_delay_ += + GetCurrentUs() - mloader->txn_start_time_.at(txn_id); + } +#endif + } + } catch (const std::out_of_range& e) { + LOG(ERROR) << "no find " << txn_id << " in map"; + cout << "no find " << txn_id << " in map"; + assert(false); + } + }, + [=](RegNodeAtom, NodeAddress addr, NodeID node_id) -> int { // NOLINT + LOG(INFO) << "get node register info : (" << addr.ip << ":" << addr.port + << ") --> " << node_id; + NodeTracker::GetInstance()->InsertRegisteredNode(node_id, addr); + // return caf::make_message(OkAtom::value); + return 1; + }, + [=](BindPartAtom, PartitionID part_id, // NOLINT + NodeID node_id) -> int { + LOG(INFO) << "get part bind info (T" << part_id.projection_id.table_id + << "P" << part_id.projection_id.projection_off << "G" + << part_id.partition_off << ") --> " << node_id; + Catalog::getInstance() + ->getTable(part_id.projection_id.table_id) + ->getProjectoin(part_id.projection_id.projection_off) + ->getPartitioner() + ->bindPartitionToNode(part_id.partition_off, node_id); + return 1; + }, + caf::others >> [] { LOG(ERROR) << "nothing matched!!!"; }}; +} + +RetCode MasterLoader::ConnectWithSlaves() { + int ret = rSuccess; + try { + auto monitor_actor = spawn(MasterLoader::Monitor); + auto listening_actor = spawn(&MasterLoader::ReceiveSlaveReg, this); + publish(listening_actor, master_loader_port_, nullptr, true); + DLOG(INFO) << "published in " << master_loader_ip_ << ":" + << master_loader_port_; + cout << "published in " << master_loader_ip_ << ":" << master_loader_port_; + } catch (exception& e) { + LOG(ERROR) << "publish master loader actor failed" << e.what(); + return rFailure; + } + return ret; +} + +RetCode MasterLoader::Ingest(const string& message, + function ack_function) { + static uint64_t get_request_time = 0; + static uint64_t get_tuple_time = 0; + static uint64_t merge_tuple_time = 0; + static uint64_t time_before_txn = 0; +// assert(false); +#ifdef MASTER_LOADER_PREF + uint64_t temp_message_count = + __sync_add_and_fetch(&debug_consumed_message_count, 1); + if (1 == temp_message_count) { + gettimeofday(&start_time, NULL); + } + if (txn_count_for_debug == temp_message_count) { + cout << txn_count_for_debug << " txn get request used " << get_request_time + << " us" << endl; + cout << txn_count_for_debug << " txn get tuples used " << get_tuple_time + << " us" << endl; + cout << txn_count_for_debug << " txn merge tuples used " << merge_tuple_time + << " us" << endl; + cout << txn_count_for_debug << " txn before txn used " << time_before_txn + << " us" << endl; + } +#endif + DLOG(INFO) << "consumed message :" << debug_consumed_message_count; + + RetCode ret = rSuccess; + // string message = GetMessage(); + // DLOG(INFO) << "get message:\n" << message; + + /// get message from MQ + GET_TIME_ML(req_start); + IngestionRequest req; + EXEC_AND_DLOG(ret, GetRequestFromMessage(message, &req), "got request!", + "failed to get request"); + // ATOMIC_ADD(get_request_time, GetElapsedTimeInUs(req_start)); + + /// parse message and get all tuples of all partitions, then + /// check the validity of all tuple in message + // GET_TIME_ML(get_tuple_start); + TableDescriptor* table = + Environment::getInstance()->getCatalog()->getTable(req.table_name_); + assert(table != NULL && "table is not exist!"); + + vector>> tuple_buffers_per_part( + table->getNumberOfProjection()); + for (int i = 0; i < table->getNumberOfProjection(); ++i) + tuple_buffers_per_part[i].resize( + table->getProjectoin(i)->getPartitioner()->getNumberOfPartitions()); + +#ifdef CHECK_VALIDITY + vector columns_validities; + EXEC_AND_DLOG(ret, GetPartitionTuples(req, table, tuple_buffers_per_part, + columns_validities), + "got all tuples of every partition", + "failed to get all tuples of every partition"); + if (ret != rSuccess && ret != claims::common::rNoMemory) { + // TODO(YUKAI): error handle, like sending error message to client + LOG(ERROR) << "the tuple is not valid"; + ack_function(); + return rFailure; + } +#else + EXEC_AND_DLOG(ret, GetPartitionTuples(req, table, tuple_buffers_per_part), + "got all tuples of every partition", + "failed to get all tuples of every partition"); +#endif + // ATOMIC_ADD(get_tuple_time, GetElapsedTimeInUs(get_tuple_start)); + + /// merge all tuple buffers of partition into one partition buffer + // GET_TIME_ML(merge_start); + vector> partition_buffers( + table->getNumberOfProjection()); + EXEC_AND_DLOG(ret, MergePartitionTupleIntoOneBuffer( + table, tuple_buffers_per_part, partition_buffers), + "merged all tuple of same partition into one buffer", + "failed to merge tuples buffers into one buffer"); + // ATOMIC_ADD(merge_tuple_time, GetElapsedTimeInUs(merge_start)); + ATOMIC_ADD(time_before_txn, GetElapsedTimeInUs(req_start)); + + /// start transaction from here + claims::txn::Ingest ingest; + EXEC_AND_LOG(ret, ApplyTransaction(table, partition_buffers, ingest), + "applied transaction: " << ingest.ts_, + "failed to apply transaction"); + + commit_info_spin_lock_.acquire(); + txn_commint_info_.insert(std::pair( + ingest.ts_, CommitInfo(ingest.strip_list_.size()))); + + txn_start_time_.insert(pair(ingest.ts_, GetCurrentUs())); + commit_info_spin_lock_.release(); + DLOG(INFO) << "insert txn " << ingest.ts_ << " into map "; + + /// write data log + EXEC_AND_DLOG(ret, WriteLog(table, partition_buffers, ingest), "written log", + "failed to write log"); + + /// reply ACK to MQ + EXEC_AND_DLOG(ret, ack_function(), "replied to MQ", "failed to reply to MQ"); + + // cout << ingest.ToString() << endl; + /* auto data_size = 0L; + for (auto& part : partition_buffers) { + for (auto& buffer : part) data_size += buffer.length_; + } + cout << "send_data_size:" << data_size << endl;*/ + /// distribute partition load task + EXEC_AND_DLOG(ret, + SendPartitionTupleToSlave(table, partition_buffers, ingest), + "sent every partition data to send queue", + "failed to send every partition data to queue"); + + for (auto& part_list : partition_buffers) + for (auto& part : part_list) delete part.buffer_; + assert(rSuccess == ret); + + return ret; +} + +RetCode MasterLoader::GetSocketFdConnectedWithSlave(string ip, int port, + int* connected_fd) { + int fd = socket(AF_INET, SOCK_STREAM, 0); + + // port = 23667; + + struct sockaddr_in slave_addr; + slave_addr.sin_family = AF_INET; + slave_addr.sin_port = htons(port); + slave_addr.sin_addr.s_addr = inet_addr(ip.c_str()); + + if (-1 == connect(fd, (struct sockaddr*)(&slave_addr), sizeof(sockaddr_in))) { + PLOG(ERROR) << "failed to connect socket(" << ip << ":" << port << ")"; + return rFailure; + } +#ifdef NON_BLOCK_SOCKET + int flag = fcntl(fd, F_GETFL); + if (-1 == flag) PLOG(ERROR) << "failed to get fd flag"; + if (-1 == fcntl(fd, F_SETFL, flag | O_NONBLOCK)) + PLOG(ERROR) << "failed to set fd non-blocking"; +#endif + *connected_fd = fd; + return rSuccess; +} + +// get every tuples and add row id for it +RetCode MasterLoader::GetRequestFromMessage(const string& message, + IngestionRequest* req) { + // TODO(ANYONE): get the real row_id of table + static uint64_t row_id = 10000000; + RetCode ret = rSuccess; + size_t pos = message.find(',', 0); + req->table_name_ = message.substr(0, pos); + pos++; + size_t next_pos = message.find(',', pos); + req->col_sep_ = message.substr(pos, next_pos - pos); + + pos = next_pos + 1; + next_pos = message.find(',', pos); + req->row_sep_ = message.substr(pos, next_pos - pos); + /* + logfile << "table:" << req->table_name_ << ",col sep:" << req->col_sep_ + << ",row sep" << req->row_sep_ << endl; + */ + + pos = next_pos + 1; + + { + string tuple; + string data_string = message.substr(pos); + istringstream iss(data_string); + while (DataIngestion::GetTupleTerminatedBy(iss, tuple, req->row_sep_)) { + uint64_t allocated_row_id = __sync_add_and_fetch(&row_id, 1); + req->tuples_.push_back(to_string(allocated_row_id) + req->col_sep_ + + tuple); + } + } + /* { + int row_seq_length = req->row_sep_.length(); + while (string::npos != (next_pos = message.find(req->row_sep_, pos))) { + uint64_t allocated_row_id = __sync_add_and_fetch(&row_id, 1); + req->tuples_.push_back(to_string(allocated_row_id) + req->col_sep_ + + message.substr(pos, next_pos - pos)); + pos = next_pos + row_seq_length; + } + }*/ + // req->Show(); + return ret; +} + +// map every tuple into associate part +#ifdef CHECK_VALIDITY +RetCode MasterLoader::GetPartitionTuples( + const IngestionRequest& req, const TableDescriptor* table, + vector>>& tuple_buffer_per_part, + vector& columns_validities) { +#else +RetCode MasterLoader::GetPartitionTuples( + const IngestionRequest& req, const TableDescriptor* table, + vector>>& tuple_buffer_per_part) { +#endif + + static uint64_t total_get_tuple_time = 0; + static uint64_t total_to_value_time = 0; + + RetCode ret = rSuccess; + Schema* table_schema = table->getSchema(); + MemoryGuard table_schema_guard(table_schema); + vector correct_tuple_buffer; + // STLMemoryGuard> guard(correct_tuple_buffer); // attention! + // must set RetCode 'ret' before returning error code!!!! + ThreeLayerSTLGuardWithRetCode>>> + return_tuple_buffer_guard(tuple_buffer_per_part, ret); // attention! + + // check all tuples to be inserted + int line = 0; + int table_tuple_length = table_schema->getTupleMaxSize(); + for (auto tuple_string : req.tuples_) { + // DLOG(INFO) << "to be inserted tuple:" << tuple_string; + void* tuple_buffer = Malloc(table_tuple_length); + if (tuple_buffer == NULL) return claims::common::rNoMemory; + MemoryGuardWithRetCode guard(tuple_buffer, ret); +#ifdef CHECK_VALIDITY + if (rSuccess != (ret = table_schema->CheckAndToValue( + tuple_string, tuple_buffer, req.col_sep_, + RawDataSource::kSQL, columns_validities))) { + // handle error which stored in the end + Validity err = columns_validities.back(); + columns_validities.pop_back(); + string validity_info = + Validity::GenerateDataValidityInfo(err, table, line, ""); + LOG(ERROR) << validity_info; + } + // handle all warnings + for (auto it : columns_validities) { + string validity_info = + Validity::GenerateDataValidityInfo(it, table, line, ""); + LOG(WARNING) << "append warning info:" << validity_info; + } + if (rSuccess != ret) { + // clean work is done by guard + return ret; + } + ++line; +#else + EXEC_AND_RETURN_ERROR( + ret, table_schema->ToValue(tuple_string, tuple_buffer, req.col_sep_), + "tuple is invalid." << tuple_string); +#endif + correct_tuple_buffer.push_back(tuple_buffer); + + /* for (auto i = 1; i < table_schema->getncolumns(); i++) { + logfile << table_schema->getColumnValue(tuple_buffer, i) << "|"; + } + logfile << endl;*/ + } + // logfile.flush(); + PERFLOG("all tuples are tovalued"); + + // map every tuple in different partition + for (int i = 0; i < table->getNumberOfProjection(); i++) { + ProjectionDescriptor* prj = table->getProjectoin(i); + Schema* prj_schema = prj->getSchema(); + MemoryGuard guard(prj_schema); + vector prj_attrs = prj->getAttributeList(); + vector prj_index; + for (int j = 0; j < prj_attrs.size(); j++) { + prj_index.push_back(prj_attrs[j].index); + } + SubTuple sub_tuple(table_schema, prj_schema, prj_index); + + const int partition_key_local_index = + prj->getAttributeIndex(prj->getPartitioner()->getPartitionKey()); + unsigned tuple_max_length = prj_schema->getTupleMaxSize(); + + for (auto tuple_buffer : correct_tuple_buffer) { + // extract the sub tuple according to the projection schema + void* target = Malloc(tuple_max_length); // newmalloc + if (target == NULL) { + assert(false); + return (ret = claims::common::rNoMemory); + } + sub_tuple.getSubTuple(tuple_buffer, target); + + // determine the partition to write the tuple "target" + void* partition_key_addr = + prj_schema->getColumnAddess(partition_key_local_index, target); + int part = prj_schema->getcolumn(partition_key_local_index) + .operate->getPartitionValue( + partition_key_addr, + prj->getPartitioner()->getPartitionFunction()); + + tuple_buffer_per_part[i][part].push_back(target); + } + } + for (auto& tuple : correct_tuple_buffer) delete tuple; + return ret; +} + +RetCode MasterLoader::MergePartitionTupleIntoOneBuffer( + const TableDescriptor* table, + vector>>& tuple_buffer_per_part, + vector>& partition_buffers) { + RetCode ret = rSuccess; + assert(tuple_buffer_per_part.size() == table->getNumberOfProjection() && + "projection number is not match!!"); + for (int i = 0; i < tuple_buffer_per_part.size(); ++i) { + assert(tuple_buffer_per_part[i].size() == + table->getProjectoin(i) + ->getPartitioner() + ->getNumberOfPartitions() && + "partition number is not match"); + Schema* schema = table->getProjectoin(i)->getSchema(); + MemoryGuard schema_guard(schema); + int tuple_len = schema->getTupleMaxSize(); + for (int j = 0; j < tuple_buffer_per_part[i].size(); ++j) { + int tuple_count = tuple_buffer_per_part[i][j].size(); + /* + * even if it is empty it has to be pushed into buffer, the index in + * buffer indicates the index of partition + */ + // if (0 == tuple_count) continue; + + int buffer_len = tuple_count * tuple_len; + DLOG(INFO) << "the tuple length of prj:" << i << ",part:" << j + << ",table:" << table->getTableName() << " is:" << tuple_len; + DLOG(INFO) << "tuple size is:" << tuple_count; + + void* new_buffer = Malloc(buffer_len); + if (NULL == new_buffer) return ret = claims::common::rNoMemory; + + for (int k = 0; k < tuple_count; ++k) { + memcpy(new_buffer + k * tuple_len, tuple_buffer_per_part[i][j][k], + tuple_len); + // release old memory stored tuple buffer + DELETE_PTR(tuple_buffer_per_part[i][j][k]); + } + // push new partition buffer + partition_buffers[i].push_back(PartitionBuffer(new_buffer, buffer_len)); + tuple_buffer_per_part[i][j].clear(); + } + tuple_buffer_per_part[i].clear(); + } + tuple_buffer_per_part.clear(); + return ret; +} + +RetCode MasterLoader::ApplyTransaction( + const TableDescriptor* table, + const vector>& partition_buffers, + claims::txn::Ingest& ingest) { + RetCode ret = rSuccess; + uint64_t table_id = table->get_table_id(); + + FixTupleIngestReq req; + + for (int i = 0; i < table->getNumberOfProjection(); ++i) { + ProjectionDescriptor* prj = table->getProjectoin(i); + Schema* schema = prj->getSchema(); + MemoryGuard schema_guard(schema); + uint64_t tuple_length = schema->getTupleMaxSize(); + for (int j = 0; j < prj->getPartitioner()->getNumberOfPartitions(); ++j) { + if (partition_buffers[i][j].length_ == 0) continue; + req.InsertStrip(GetGlobalPartId(table_id, i, j), tuple_length, + partition_buffers[i][j].length_ / tuple_length); + // DLOG(INFO) << "the length of partition buffer[" << i << "," << j + // << "] is:" << partition_buffers[i][j].length_ << std::endl; + } + } + + TxnClient::BeginIngest(req, ingest); + // cout << req.ToString() << " " << ingest.ToString() << endl; + return ret; +} + +RetCode MasterLoader::WriteLog( + const TableDescriptor* table, + const vector>& partition_buffers, + const claims::txn::Ingest& ingest) { + RetCode ret = rSuccess; + uint64_t table_id = table->get_table_id(); + + for (int prj_id = 0; prj_id < partition_buffers.size(); ++prj_id) { + for (int part_id = 0; part_id < partition_buffers[prj_id].size(); + ++part_id) { + if (0 == partition_buffers[prj_id][part_id].length_) continue; + uint64_t global_part_id = GetGlobalPartId(table_id, prj_id, part_id); + + EXEC_AND_DLOG( + ret, LogClient::Data(global_part_id, + ingest.strip_list_.at(global_part_id).first, + ingest.strip_list_.at(global_part_id).second, + partition_buffers[prj_id][part_id].buffer_, + partition_buffers[prj_id][part_id].length_), + "written data log for partition:" << global_part_id, + "failed to write data log for partition:" << global_part_id); + } + } + EXEC_AND_DLOG(ret, LogClient::Refresh(), "flushed data log into disk", + "failed to flush data log"); + return ret; +} + +RetCode MasterLoader::ReplyToMQ(const IngestionRequest& req) { + // TODO(YUKAI) + return rSuccess; +} + +RetCode MasterLoader::SendPartitionTupleToSlave( + const TableDescriptor* table, + const vector>& partition_buffers, + const claims::txn::Ingest& ingest) { + RetCode ret = rSuccess; + uint64_t table_id = table->get_table_id(); + for (int prj_id = 0; prj_id < partition_buffers.size(); ++prj_id) { + for (int part_id = 0; part_id < partition_buffers[prj_id].size(); + ++part_id) { + if (0 == partition_buffers[prj_id][part_id].length_) continue; + uint64_t global_part_id = GetGlobalPartId(table_id, prj_id, part_id); + + int socket_fd = -1; + EXEC_AND_DLOG_RETURN(ret, SelectSocket(table, prj_id, part_id, socket_fd), + "selected the socket", + "failed to select the socket"); + assert(socket_fd > 3); + +#ifdef SEND_THREAD + LoadPacket* packet = + new LoadPacket(socket_fd, ingest.ts_, global_part_id, + ingest.strip_list_.at(global_part_id).first, + ingest.strip_list_.at(global_part_id).second, + partition_buffers[prj_id][part_id].length_, + partition_buffers[prj_id][part_id].buffer_); + + EXEC_AND_DLOG_RETURN(ret, packet->Serialize(), + "serialized packet into buffer", + "failed to serialize packet"); + + int queue_index = socket_fd % send_thread_num_; + assert(queue_index < send_thread_num_); + { + LockGuard guard(packet_queue_lock_[queue_index]); + packet_queues_[queue_index].push(packet); + } + packet_queue_to_send_count_[queue_index].post(); +#else + LoadPacket packet(socket_fd, ingest.ts_, global_part_id, + ingest.strip_list_.at(global_part_id).first, + ingest.strip_list_.at(global_part_id).second, + partition_buffers[prj_id][part_id].length_, + partition_buffers[prj_id][part_id].buffer_); + + EXEC_AND_DLOG_RETURN(ret, packet.Serialize(), + "serialized packet into buffer", + "failed to serialize packet"); + EXEC_AND_DLOG( + ret, + SendPacket(socket_fd, packet.packet_buffer_, packet.packet_length_), + "sent packet of " << packet.txn_id_, "failed to send packet"); +#endif + } + } + return ret; +} + +RetCode MasterLoader::SelectSocket(const TableDescriptor* table, + const uint64_t prj_id, + const uint64_t part_id, int& socket_fd) { + RetCode ret = rSuccess; + NodeID node_id_in_rmm = + table->getProjectoin(prj_id)->getPartitioner()->getPartitionLocation( + part_id); + DLOG(INFO) << "node id is " << node_id_in_rmm; + NodeAddress addr; + EXEC_AND_DLOG_RETURN( + ret, NodeTracker::GetInstance()->GetNodeAddr(node_id_in_rmm, addr), + "got node address", "failed to get node address"); + DLOG(INFO) << "node address is " << addr.ip << ":" << addr.port; + addr.port = ""; // the port is used for OLAP, not for loading + socket_fd = slave_addr_to_socket_[addr]; + + /* cout << "node id:" << node_id_in_rmm << ",node address:" << addr.ip << ":" + << addr.port << ",socket fd:" << socket_fd << endl;*/ + return ret; +} + +RetCode MasterLoader::SendPacket(const int socket_fd, + const void* const packet_buffer, + const uint64_t packet_length) { + static int sent_packetcount = 0; + static uint64_t send_total_time = 0; + size_t total_write_num = 0; + + /// just lock this socket file descriptor + LockGuard guard(socket_fd_to_lock_[socket_fd]); + // GET_TIME_ML(send_start); + while (total_write_num < packet_length) { + ssize_t write_num = write( + socket_fd, static_cast(packet_buffer) + total_write_num, + packet_length - total_write_num); + if (-1 == write_num) { + if (EAGAIN == errno) { + cout << "buffer is full, retry..." << buffer_full_time << endl; + ATOMIC_ADD(buffer_full_time, 1); + usleep(500); + continue; + } + std::cerr << "failed to send buffer to slave(" << socket_fd + << "): " << std::endl; + PLOG(ERROR) << "failed to send buffer to slave(" << socket_fd << "): "; + return claims::common::rSentMessageError; + } + total_write_num += write_num; + } +// cout << "send data bytes:" << total_write_num << endl; +#ifdef MASTER_LOADER_PREF +// if (__sync_add_and_fetch(&sent_packetcount, 1) == txn_count_for_debug * 4) { +// cout << "send " << sent_packetcount << " packets used " << send_total_time +// << ", average time is:" << send_total_time / sent_packetcount << +// endl; +// } else { +// ATOMIC_ADD(send_total_time, GetElapsedTimeInUs(send_start)); +// } +#endif + return rSuccess; +} + +void* MasterLoader::SendPacketWork(void* arg) { + MasterLoader* loader = static_cast(arg); + int index = __sync_fetch_and_add(&(loader->thread_index_), 1); + LOG(INFO) << " I got id :" << index; + assert(index < loader->send_thread_num_); + while (1) { + loader->packet_queue_to_send_count_[index].wait(); + LoadPacket* packet = nullptr; + { + LockGuard guard(loader->packet_queue_lock_[index]); + packet = loader->packet_queues_[index].front(); + loader->packet_queues_[index].pop(); + } + + RetCode ret = rSuccess; + EXEC_AND_DLOG( + ret, loader->SendPacket(packet->socket_fd_, packet->packet_buffer_, + packet->packet_length_), + "sent packet of " << packet->txn_id_, "failed to send packet"); + DELETE_PTR(packet); + } +} + +void* MasterLoader::Work(void* arg) { + WorkerPara* para = static_cast(arg); + AMQConsumer consumer(para->brokerURI_, para->destURI_, para->use_topic_, + para->client_ack_); + consumer.run(para->master_loader_); + while (1) sleep(10); + return NULL; +} + +void* MasterLoader::StartMasterLoader(void* arg) { + remove("master_loader_log.txt"); + logfile.open("master_loader_log.txt"); + Config::getInstance(); + LOG(INFO) << "start master loader..."; + + int ret = rSuccess; + MasterLoader* master_loader = Environment::getInstance()->get_master_loader(); + EXEC_AND_ONLY_LOG_ERROR(ret, master_loader->ConnectWithSlaves(), + "failed to connect all slaves"); + + activemq::library::ActiveMQCPP::initializeLibrary(); + // Use either stomp or openwire, the default ports are different for each + // + // Examples: + // tcp://127.0.0.1:61616 default to openwire + // tcp://127.0.0.1:61616?wireFormat=openwire same as above + // tcp://127.0.0.1:61613?wireFormat=stomp use stomp instead + // + /* std::string brokerURI = + "failover:(tcp://" + "58.198.176.92:61616?wireFormat=openwire&connection.useAsyncSend=true" + + // "&transport.commandTracingEnabled=true" + // "&transport.tcpTracingEnabled=true" + // "&wireFormat.tightEncodingEnabled=true" + ")";*/ + std::string brokerURI = "failover:(tcp://" + Config::amq_url + + "?wireFormat=openwire&connection.useAsyncSend=true" + + // "&transport.commandTracingEnabled=true" + // "&transport.tcpTracingEnabled=true" + // "&wireFormat.tightEncodingEnabled=true" + ")"; + //============================================================ + // This is the Destination Name and URI options. Use this to + // customize where the consumer listens, to have the consumer + // use a topic or queue set the 'useTopics' flag. + //============================================================ + std::string destURI = + Config::amq_topic + + "?consumer.prefetchSize = 1 "; // ?consumer.prefetchSize=1"; + + //============================================================ + // set to true to use topics instead of queues + // Note in the code above that this causes createTopic or + // createQueue to be used in the consumer. + //============================================================ + bool use_topics = false; + + //============================================================ + // set to true if you want the consumer to use client ack mode + // instead of the default auto ack mode. + //============================================================ + bool client_ack = true; + + cout << "\n input a number to continue" << std::endl; + int temp; + cin >> temp; + cout << "Well , start flag is received" << std::endl; + +#ifdef SEND_THREAD + for (int i = 0; i < master_loader->send_thread_num_; ++i) { + Environment::getInstance()->getThreadPool()->AddTask( + MasterLoader::SendPacketWork, master_loader); + } +#endif + + // AMQConsumer consumer(brokerURI, destURI, use_topics, client_ack); + // consumer.run(master_loader); + WorkerPara para(master_loader, brokerURI, destURI, use_topics, client_ack); + for (int i = 0; i < Config::master_loader_thread_num - 1; ++i) { + // Environment::getInstance()->getThreadPool()->AddTaskInCpu( + // MasterLoader::Work, ¶, (i + 1) % GetNumberOfCpus()); + Environment::getInstance()->getThreadPool()->AddTask(MasterLoader::Work, + ¶); + } + // i am also a worker + Work(¶); + + while (1) sleep(10); + + // while (true) EXEC_AND_ONLY_LOG_ERROR(ret, master_loader->Ingest(), + // "failed to ingest data"); + + return NULL; +} + +} /* namespace loader */ +} /* namespace claims */ diff --git a/loader/master_loader.h b/loader/master_loader.h new file mode 100644 index 000000000..83a75a640 --- /dev/null +++ b/loader/master_loader.h @@ -0,0 +1,237 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/master_loader.h + * + * Created on: Apr 7, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef LOADER_MASTER_LOADER_H_ +#define LOADER_MASTER_LOADER_H_ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "caf/all.hpp" +#include +#include +#include + +#include "./validity.h" +#include "../common/error_define.h" +#include "../common/ids.h" +#include "../txn_manager/txn.hpp" +#include "../utility/lock.h" + +using std::function; +using std::set; +using std::unordered_map; +using std::unordered_set; +using std::ofstream; +namespace claims { +namespace catalog { +class TableDescriptor; +} + +namespace loader { + +using std::map; +using std::string; +using std::vector; +using caf::behavior; +using caf::event_based_actor; +using claims::catalog::TableDescriptor; + +class LoadPacket; + +// #define CHECK_VALIDITY + +class MasterLoader { + // public: + // enum DataIngestSource { kActiveMQ }; + + public: + struct IngestionRequest { + string table_name_; + string col_sep_; + string row_sep_; + vector tuples_; + void Show(); + }; + struct WorkerPara { + WorkerPara(MasterLoader* mloader, const std::string& brokerURI, + const std::string& destURI, bool use_topic = false, + bool client_ack = false) + : use_topic_(use_topic), + brokerURI_(brokerURI), + destURI_(destURI), + client_ack_(client_ack), + master_loader_(mloader) {} + const std::string& brokerURI_; + const std::string& destURI_; + bool use_topic_ = false; + bool client_ack_ = false; + MasterLoader* master_loader_; + }; + + struct CommitInfo { + explicit CommitInfo(uint64_t total_part_num) + : total_part_num_(total_part_num), + commited_part_num_(0), + abort_part_num_(0), + wait_period_(0) {} + + inline bool IsFinished() { + return commited_part_num_ + abort_part_num_ >= total_part_num_; + } + + uint64_t total_part_num_; + uint64_t commited_part_num_; + uint64_t abort_part_num_; + // initial value is 0, add by 1 every time check thread traverses + // if wait period exceeds the specified value, this transaction fails + uint64_t wait_period_; + }; + + struct PartitionBuffer { + PartitionBuffer(void* buf, uint64_t len) : buffer_(buf), length_(len) {} + void* buffer_; + uint64_t length_; + }; + + public: + MasterLoader(); + ~MasterLoader(); + + static behavior Monitor(event_based_actor* self); + void AddCount(); + RetCode ConnectWithSlaves(); + + RetCode Ingest(const string& message, function ack_function); + + private: + string GetMessage(); + + RetCode GetRequestFromMessage(const string& message, IngestionRequest* req); + + RetCode CheckAndToValue(const IngestionRequest& req, void* tuple_buffer, + vector& column_validities); + +#ifdef CHECK_VALIDITY + RetCode GetPartitionTuples( + const IngestionRequest& req, const TableDescriptor* table, + vector>>& tuple_buffer_per_part, + vector& columns_validities); +#else + RetCode GetPartitionTuples( + const IngestionRequest& req, const TableDescriptor* table, + vector>>& tuple_buffer_per_part); +#endif + /** + * copy and merge all tuples buffer of the same partition into one buffer, + * and release all memory in tuple_buffer_per_part + */ + RetCode MergePartitionTupleIntoOneBuffer( + const TableDescriptor* table, + vector>>& tuple_buffer_per_part, + vector>& partition_buffers); + + RetCode ApplyTransaction( + const TableDescriptor* table, + const vector>& partition_buffers, + claims::txn::Ingest& ingest); + + RetCode WriteLog(const TableDescriptor* table, + const vector>& partition_buffers, + const claims::txn::Ingest& ingest); + + RetCode ReplyToMQ(const IngestionRequest& req); + + RetCode SendPartitionTupleToSlave( + const TableDescriptor* table, + const vector>& partition_buffers, + const claims::txn::Ingest& ingest); + + RetCode SelectSocket(const TableDescriptor* table, const uint64_t prj_id, + const uint64_t part_id, int& socket_fd); + + RetCode GetSlaveNetAddr(); + RetCode SetSocketWithSlaves(); + RetCode GetSocketFdConnectedWithSlave(string ip, int port, int* connected_fd); + bool CheckValidity(); + void DistributeSubIngestion(); + + static behavior ReceiveSlaveReg(event_based_actor* self, + MasterLoader* mloader); + RetCode SendPacket(const int socket_fd, const void* const packet_buffer, + const uint64_t packet_length); + + public: + static void* Work(void* para); + + static void* SendPacketWork(void* arg); + + static void* StartMasterLoader(void* arg); + + private: + string master_loader_ip_; + int master_loader_port_; + // vector slave_addrs_; + // vector slave_sockets_; + + boost::unordered_map slave_addr_to_socket_; + + // store id of transactions which are not finished + unordered_map txn_commint_info_; + SpineLock commit_info_spin_lock_; + + int send_thread_num_; + std::queue* packet_queues_; + SpineLock* packet_queue_lock_; + semaphore* packet_queue_to_send_count_; + int thread_index_ = 0; + + unordered_map socket_fd_to_lock_; + + private: + // for debug + static uint64_t debug_finished_txn_count; + static uint64_t debug_consumed_message_count; + static timeval start_time; + static int buffer_full_time; + + unordered_map txn_start_time_; + static uint64_t txn_average_delay_; + + static ofstream logfile; +}; + +} /* namespace loader */ +} /* namespace claims */ + +#endif // LOADER_MASTER_LOADER_H_ diff --git a/loader/producer b/loader/producer new file mode 100755 index 000000000..a78c31ffc Binary files /dev/null and b/loader/producer differ diff --git a/loader/single_file_connector.cpp b/loader/single_file_connector.cpp index cb3702769..672cb3e79 100644 --- a/loader/single_file_connector.cpp +++ b/loader/single_file_connector.cpp @@ -47,7 +47,7 @@ #define DLOG_FC(info) #endif -#ifdef DATA_INJECTOR_PREF +#ifdef DATA_INGESTION_PREF #define ATOMIC_ADD(var, value) __sync_add_and_fetch(&var, value); #define GET_TIME_DI(var) GETCURRENTTIME(var); #else diff --git a/loader/slave_loader.cpp b/loader/slave_loader.cpp new file mode 100644 index 000000000..ac1e748c3 --- /dev/null +++ b/loader/slave_loader.cpp @@ -0,0 +1,640 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/slave_loader.cpp + * + * Created on: Apr 8, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#include "./slave_loader.h" + +#include +#include +#include +#include +#include +#include +#include //NOLINT +#include //NOLINT +#include "caf/all.hpp" +#include "caf/io/all.hpp" + +#include "./load_packet.h" +#include "../Config.h" +#include "../Environment.h" +#include "../common/error_define.h" +#include "../common/ids.h" +#include "../common/memory_handle.h" +#include "../storage/BlockManager.h" +#include "../storage/ChunkStorage.h" +#include "../storage/PartitionStorage.h" +#include "../txn_manager/txn.hpp" +#include "../utility/resource_guard.h" + +#include "../node_manager/base_node.h" + +using caf::behavior; +using caf::event_based_actor; +using caf::io::remote_actor; +using caf::spawn; +using claims::common::Malloc; +using claims::common::rSuccess; +using claims::common::rFailure; +using claims::txn::GetPartitionIdFromGlobalPartId; +using claims::txn::GetProjectionIdFromGlobalPartId; +using claims::txn::GetTableIdFromGlobalPartId; +using claims::MasterNode; +using std::chrono::milliseconds; +using std::chrono::seconds; + +#define WORK_THREADS +// #define ONE_WORK_THREAD + +// #define NO_ACTUAL_WORK + +// #define SLAVE_LOADER_PREF + +// #define MASTER_LOADER_PREF + +#ifdef MASTER_LOADER_PREF +#define PERFLOG(info) LOG(INFO) << info << endl; +#else +#define PERFLOG +#endif + +#ifdef SLAVE_LOADER_PREF +#define ATOMIC_ADD(var, value) __sync_add_and_fetch(&var, value); +#define GET_TIME_SL(var) GETCURRENTTIME(var); +#else +#define ATOMIC_ADD(var, value) +#define GET_TIME_SL(var) +#endif + +caf::actor SlaveLoader::handle; +caf::actor* SlaveLoader::handles_; +caf::actor SlaveLoader::persistor; + +static const int txn_count_for_debug = 5000; +static const char* txn_count_string = "5000"; + +namespace claims { +namespace loader { + +ofstream SlaveLoader::logfile; + +SlaveLoader::SlaveLoader() {} +SlaveLoader::~SlaveLoader() {} + +RetCode SlaveLoader::ConnectWithMaster() { + int ret = rSuccess; + int retry_time = 10; + for (int i = 0; Clean(), i < retry_time; ++i) { // if failed, call Clean() + EXEC_AND_LOG(ret, EstablishListeningSocket(), + "established listening socket", + "failed to establish listening socket in " << i << " times"); + if (rSuccess == ret) break; + } + if (rSuccess != ret) { + Clean(); + return ret; + } + + for (int i = 1; i <= retry_time; ++i) { + EXEC_AND_LOG(ret, SendSelfAddrToMaster(), "sent self ip/port to master", + "failed to send self ip/port to master in " << i << " times"); + if (rSuccess == ret) break; + sleep(1); + } + if (rSuccess != ret) { + Clean(); + return ret; + } + + for (int i = 0; i < retry_time; ++i) { + EXEC_AND_LOG(ret, GetConnectedSocket(), "got connected socket with master", + "failed to get connected socket with master in " << i + << " times"); + if (rSuccess == ret) break; + } + if (rSuccess != ret) Clean(); + return ret; +} + +RetCode SlaveLoader::EstablishListeningSocket() { + int ret = rSuccess; + listening_fd_ = socket(AF_INET, SOCK_STREAM, 0); + if (-1 == listening_fd_) { + PLOG(ERROR) << "failed to create socket"; + } + + struct sockaddr_in sock_addr; + sock_addr.sin_family = AF_INET; + sock_addr.sin_port = 0; + sock_addr.sin_addr.s_addr = + inet_addr(Environment::getInstance()->getIp().c_str()); + + if (-1 == + bind(listening_fd_, (struct sockaddr*)(&sock_addr), sizeof(sock_addr))) { + PLOG(ERROR) << "failed to bind socket"; + return rFailure; + } + + OutputFdIpPort(listening_fd_); + + if (-1 == listen(listening_fd_, 5)) { + PLOG(ERROR) << "failed to listen socket"; + return rFailure; + } + + OutputFdIpPort(listening_fd_); + + struct sockaddr_in temp_addr; + socklen_t addr_len = sizeof(sockaddr_in); + if (-1 == + getsockname(listening_fd_, (struct sockaddr*)(&temp_addr), &addr_len)) { + PLOG(ERROR) << "failed to get socket name "; + return rFailure; + } + + self_port = ntohs(temp_addr.sin_port); + self_ip = inet_ntoa(temp_addr.sin_addr); + + LOG(INFO) << "slave socket IP:" << self_ip << ", port:" << self_port; + return ret; +} + +RetCode SlaveLoader::SendSelfAddrToMaster() { + // auto send_actor = spawn([&](event_based_actor* self) { + // auto master_actor = + // remote_actor(Config::master_loader_ip, + // Config::master_loader_port); + // self->sync_send(master_actor, IpPortAtom::value, self_ip, self_port); + // }); + LOG(INFO) << "going to send self (" << self_ip << ":" << self_port << ")" + << "to (" << Config::master_loader_ip << ":" + << Config::master_loader_port << ")"; + try { + static auto master_actor = + remote_actor(Config::master_loader_ip, Config::master_loader_port); + caf::scoped_actor self; + self->sync_send(master_actor, IpPortAtom::value, self_ip, self_port) + .await([&](int r) { // NOLINT + LOG(INFO) << "sent ip&port and received response"; + }); + } catch (exception& e) { + LOG(ERROR) << "can't send self ip&port to master loader. " << e.what(); + return rFailure; + } + return rSuccess; +} + +RetCode SlaveLoader::GetConnectedSocket() { + assert(listening_fd_ > 3); + OutputFdIpPort(listening_fd_); + LOG(INFO) << "fd is accepting..."; + + struct sockaddr_in master_addr; + socklen_t len = sizeof(sockaddr_in); + int master_fd = accept(listening_fd_, (struct sockaddr*)(&master_addr), &len); + if (-1 == master_fd) { + PLOG(ERROR) << "failed to accept socket"; + return rFailure; + } + master_fd_ = master_fd; + return rSuccess; +} +void SlaveLoader::OutputFdIpPort(int fd) { + struct sockaddr_in temp_addr; + socklen_t addr_len = sizeof(sockaddr_in); + if (-1 == getsockname(fd, (struct sockaddr*)(&temp_addr), &addr_len)) { + PLOG(ERROR) << "failed to get socket name "; + } + LOG(INFO) << "fd ----> (" << inet_ntoa(temp_addr.sin_addr) << ":" + << ntohs(temp_addr.sin_port) << ")"; +} + +RetCode SlaveLoader::ReceiveAndWorkLoop() { + assert(master_fd_ > 3); + static uint64_t total_handle_time = 0; + static int handle_count = 0; + char head_buffer[LoadPacket::kHeadLength]; + int real_read_num; + LOG(INFO) << "slave is receiving ..."; + while (1) { + RetCode ret = rSuccess; + + /// get load packet + if (-1 == (real_read_num = recv(master_fd_, head_buffer, + LoadPacket::kHeadLength, MSG_WAITALL))) { + PLOG(ERROR) << "failed to receive message length from master"; + return rFailure; + } else if (0 == real_read_num) { + PLOG(ERROR) << "master loader socket has been closed"; + return rFailure; + } else if (real_read_num < LoadPacket::kHeadLength) { + LOG(ERROR) << "received message error! only read " << real_read_num + << " bytes"; + continue; + } + GET_TIME_SL(start_handle); + PERFLOG("received packet head"); + uint64_t data_length = + *reinterpret_cast(head_buffer + LoadPacket::kHeadLength - + sizeof(uint64_t)); + uint64_t real_packet_length = data_length + LoadPacket::kHeadLength; + DLOG(INFO) << "real packet length is :" << real_packet_length + << ". date length is " << data_length; + assert(data_length >= 4 && data_length <= 10000000); + char* data_buffer = Malloc(data_length); + if (NULL == data_buffer) { + ELOG((ret = claims::common::rNoMemory), + "no memory to hold data of message from master"); + return ret; + } + + if (-1 == recv(master_fd_, data_buffer, data_length, MSG_WAITALL)) { + PLOG(ERROR) << "failed to receive message from master"; + return claims::common::rReceiveMessageError; + } + // LOG(INFO) << "data of message from master is:" << buffer; + + /// deserialization of packet + PERFLOG("got all packet buffer"); +#ifdef WORK_THREADS + LoadPacket* packet = new LoadPacket(); + EXEC_AND_DLOG(ret, packet->Deserialize(head_buffer, data_buffer), + "deserialized packet", "failed to deserialize packet"); + + static int handle_index = 0; + caf::scoped_actor self; + self->send(handles_[handle_index], LoadPacketAtom::value, packet); + if (++handle_index == Config::slave_loader_thread_num) handle_index = 0; + +#else +#ifdef ONE_WORK_THREAD + LoadPacket* packet = new LoadPacket(); + EXEC_AND_DLOG(ret, packet->Deserialize(head_buffer, data_buffer), + "deserialized packet", "failed to deserialize packet"); + // std::async(std::launch::async, WorkInAsync, packet); // too slow + caf::scoped_actor self; + self->send(handle, LoadPacketAtom::value, packet); +#else + LoadPacket packet; +#ifndef NO_ACTUAL_WORK + EXEC_AND_DLOG(ret, packet.Deserialize(head_buffer, data_buffer), + "deserialized packet", "failed to deserialize packet"); + + EXEC_AND_DLOG(ret, StoreDataInMemory(packet), "stored data", + "failed to store"); +#else + packet.txn_id_ = *reinterpret_cast(head_buffer); +#endif + /// return result to master loader + EXEC_AND_LOG(ret, SendAckToMasterLoader(packet.txn_id_, rSuccess == ret), + "sent commit result of " << packet.txn_id_ + << " to master loader", + "failed to send commit res to master loader"); +#endif +#endif + +#ifdef SLAVE_LOADER_PREF + ATOMIC_ADD(total_handle_time, GetElapsedTimeInUs(start_handle)); + if (txn_count_for_debug == ++handle_count) { + cout << "handle " << handle_count + << " messages used:" << total_handle_time << endl; + } +#endif + if (rSuccess != ret) return ret; + } +} + +RetCode SlaveLoader::StoreDataInMemory(const LoadPacket& packet) { + RetCode ret = rSuccess; + const uint64_t table_id = GetTableIdFromGlobalPartId(packet.global_part_id_); + const uint64_t prj_id = + GetProjectionIdFromGlobalPartId(packet.global_part_id_); + const uint64_t part_id = + GetPartitionIdFromGlobalPartId(packet.global_part_id_); + + PartitionStorage* part_storage = + BlockManager::getInstance()->GetPartitionHandle( + PartitionID(ProjectionID(table_id, prj_id), part_id)); + assert(part_storage != NULL); + + /// set HDFS because the memory is not applied actually + /// it will be set to MEMORY in function + uint64_t last_chunk_id = (packet.pos_ + packet.offset_) / CHUNK_SIZE; + // assert(last_chunk_id <= + // (1024UL * 1024 * 1024 * 1024 * 1024) / (64 * 1024 * 1024) && + // " memory for chunk should not larger than 1PB"); + DLOG(INFO) << "position+offset is:" << packet.pos_ + packet.offset_ + << " CHUNK SIZE is:" << CHUNK_SIZE + << " last chunk id is:" << last_chunk_id; + EXEC_AND_DLOG_RETURN( + ret, part_storage->AddRtChunkWithMemoryApply(last_chunk_id + 1, MEMORY), + "added chunk to " << last_chunk_id + 1, "failed to add chunk"); + // cout << "******1*****" << endl; + // copy data into applied memory + Schema* schema = Catalog::getInstance() + ->getTable(table_id) + ->getProjectoin(prj_id) + ->getSchema(); + MemoryGuard schema_guard(schema); + const uint64_t tuple_size = schema->getTupleMaxSize(); + + uint64_t cur_chunk_id = packet.pos_ / CHUNK_SIZE; + uint64_t cur_block_id = (packet.pos_ % CHUNK_SIZE) / BLOCK_SIZE; + uint64_t pos_in_block = packet.pos_ % BLOCK_SIZE; + uint64_t total_written_length = 0; + uint64_t data_length = packet.data_length_; + HdfsInMemoryChunk chunk_info; + + /* for (auto p = 0; p < data_length; p += tuple_size) { + for (auto col = 1; col < schema->getncolumns(); col++) { + logfile << schema->getColumnValue(packet.data_buffer_ + p, col) + "|"; + } + logfile << endl; + }*/ + + while (total_written_length < data_length) { + /// get start position of current chunk + if (BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( + ChunkID(PartitionID(ProjectionID(table_id, prj_id), part_id), + cur_chunk_id, true), + chunk_info)) { + // In this version, the last chunk info don't updated their member: length + // after inserting data, + // so the data inserted into last chunk is invisible. + // This leads to no new data is show in the beginning of loading. + // The new applied chunk has updated its length to CHUNK_SIZE, + // so they performs well + DLOG(INFO) << "start address of chunk:" << cur_chunk_id << " is " + << chunk_info.hook << ", end addr is " + << chunk_info.hook + CHUNK_SIZE; + InMemoryChunkWriterIterator writer(chunk_info.hook, CHUNK_SIZE, + cur_block_id, BLOCK_SIZE, pos_in_block, + tuple_size, schema); + // cout << "store data length:" << data_length << endl; + do { // write to every block + /* logfile << cur_chunk_id << "->" << writer.GetBlockId() << "->" + << writer.GetBlockPos() << ",";*/ + uint64_t written_length = + writer.Write(packet.data_buffer_ + total_written_length, + data_length - total_written_length); + /* logfile << writer.GetBlockPos() + written_length << "," + << written_length / schema->getTupleMaxSize() << endl;*/ + total_written_length += written_length; + DLOG(INFO) << "written " << written_length + << " bytes into chunk:" << cur_chunk_id + << ". Now total written " << total_written_length << " bytes" + << endl; + if (total_written_length == data_length) { + // all tuple is written into memory + return rSuccess; + } else if (total_written_length > data_length) { + assert(false); + } + } while (writer.NextBlock()); + ++cur_chunk_id; // get next chunk to write + DLOG(INFO) << "Now chunk id is " << cur_chunk_id + << ", total number of chunk is" + << part_storage->GetRTChunkNum(); + if (cur_chunk_id < part_storage->GetRTChunkNum()) { + assert(cur_chunk_id < part_storage->GetRTChunkNum() && cur_chunk_id); + } + cur_block_id = 0; // the block id of next chunk is 0 + pos_in_block = 0; + } else { + LOG(INFO) << "chunk id is " << cur_chunk_id << endl; + cout << "get chunk:" << cur_chunk_id << " failed" << endl; + assert(false && "no chunk with this chunk id"); + } + } + delete schema; + return ret; +} + +RetCode SlaveLoader::SendAckToMasterLoader(const uint64_t& txn_id, + bool is_commited) { + static uint64_t total_send_time = 0; + static uint64_t count = 0; + GET_TIME_SL(send_start); + try { + static auto master_actor = + remote_actor(Config::master_loader_ip, Config::master_loader_port); + static caf::scoped_actor self; + self->send(master_actor, LoadAckAtom::value, txn_id, is_commited); +#ifdef SLAVE_LOADER_PREF + ATOMIC_ADD(total_send_time, GetElapsedTimeInUs(send_start)); + if (txn_count_for_debug == ++count) { + cout << "send " << count << " ACK used:" << total_send_time + << " us. average time is:" << total_send_time / count << endl; + } +#endif + return rSuccess; + } catch (exception& e) { + LOG(ERROR) << "failed to send commit result of " << txn_id + << " to master loader ." << e.what(); + return rFailure; + } +} + +// this method has the best performance +behavior SlaveLoader::WorkInCAF(event_based_actor* self) { + remove("slave_loader_log.txt"); + logfile.open("slave_loader_log.txt"); + return {[=](LoadPacketAtom, LoadPacket* packet) { // NOLINT + RetCode ret = rSuccess; + + EXEC_AND_DLOG(ret, StoreDataInMemory(*packet), "stored data", + "failed to store"); + /// return result to master loader + EXEC_AND_LOG(ret, SendAckToMasterLoader(packet->txn_id_, rSuccess == ret), + "sent commit result of " << packet->txn_id_ + << " to master loader", + "failed to send commit res to master loader"); + DELETE_PTR(packet->data_buffer_); + DELETE_PTR(packet); + }}; +} + +behavior SlaveLoader::PersistInCAF(event_based_actor* self) { + self->delayed_send(self, + seconds(30 + Environment::getInstance()->getNodeID() * 2), + CheckpointAtom::value); + return {[self](CheckpointAtom) { + QueryReq query_req; + query_req.include_abort_ = true; + Query query; + auto part_list = + Environment::getInstance()->get_block_manager()->GetAllPartition(); + for (auto& part : part_list) + query_req.part_list_.push_back(GetGlobalPartId(part)); + TxnClient::BeginQuery(query_req, query); + for (auto& part : part_list) { + UInt64 g_part_id = GetGlobalPartId(part); + if (query.snapshot_[g_part_id].size() > 0) { + auto part_handler = + Environment::getInstance()->get_block_manager()->GetPartitionHandle( + part); + auto new_rt_cp = query.snapshot_[g_part_id].rbegin()->first + + query.snapshot_[g_part_id].rbegin()->second; + /*for debug new_rt_cp = query.snapshot_[g_part_id].begin()->first + + query.snapshot_[g_part_id].begin()->second;*/ + /* for debug vector ch_list = { + {query.snapshot_[g_part_id].begin()->first, + query.snapshot_[g_part_id].begin()->second}}; */ + auto old_rt_cp = query.snapshot_[g_part_id].begin()->first; + // merge from historical to real time + auto old_his_cp = query.his_cp_list_[g_part_id]; + auto new_his_cp = part_handler->MergeToHis( + old_his_cp, /*ch_list */ query.snapshot_[g_part_id]); + cout << "merge his:<" << old_his_cp / BLOCK_SIZE << "," + << old_his_cp % BLOCK_SIZE << "> => <" << new_his_cp / BLOCK_SIZE + << "," << new_his_cp % BLOCK_SIZE << ">" << endl; + cout << "merge rt:<" << old_rt_cp / BLOCK_SIZE << "," + << old_rt_cp % BLOCK_SIZE << "> => <" << new_rt_cp / BLOCK_SIZE + << "," << new_rt_cp % BLOCK_SIZE << ">" << endl; + // cout << "new_his_cp:" << new_his_cp << endl; + if (new_his_cp == old_his_cp) { + cout << "don't need to create checkpoint" << endl; + continue; + } + RetCode ret = rSuccess; + if (ret == rSuccess) + ret = part_handler->Persist(old_his_cp, new_his_cp); + else + continue; + if (ret == rSuccess) + ret = TxnClient::CommitCheckpoint(query.ts_, g_part_id, new_his_cp, + new_rt_cp); + else + continue; + if (ret == rSuccess) { + auto slave_node = Environment::getInstance()->get_slave_node(); + ret = slave_node->AddBlocks(g_part_id, + (new_his_cp - old_his_cp) / BLOCK_SIZE); + /* auto cata = Catalog::getInstance(); + auto proj = cata->getProjection(part.projection_id); + proj->getPartitioner()->addPartitionBlocks( + part.partition_off, (new_his_cp - old_his_cp) / + BLOCK_SIZE); + auto schema = proj->getSchema(); + MemoryGuard schema_guard(schema); + auto tuple_size = schema->getTupleMaxSize(); + proj->getPartitioner()->addPartitionCardinality( + part.partition_off, (new_rt_cp - old_rt_cp) / + tuple_size); + ret = cata->saveCatalog();*/ + } + if (ret == rSuccess) + cout << "Persist success" << endl; + else + cout << "Persist fail" << endl; + } + } + self->delayed_send(self, seconds(30), CheckpointAtom::value); + }}; +} + +// It's very slow +void SlaveLoader::WorkInAsync(LoadPacket* packet) { + RetCode ret = rSuccess; + EXEC_AND_DLOG(ret, StoreDataInMemory(*packet), "stored data", + "failed to store"); + + /// return result to master loader + EXEC_AND_LOG(ret, SendAckToMasterLoader(packet->txn_id_, rSuccess == ret), + "sent commit result of " << packet->txn_id_ + << " to master loader", + "failed to send commit res to master loader"); + DELETE_PTR(packet); +} + +// it is so slow to deliver message using queue +void* SlaveLoader::HandleWork(void* arg) { + SlaveLoader* slave_loader = static_cast(arg); + while (1) { + RetCode ret = rSuccess; + slave_loader->packet_count_.wait(); + LoadPacket* packet = nullptr; + { + LockGuard guard(slave_loader->queue_lock_); + packet = slave_loader->packet_queue_.front(); + slave_loader->packet_queue_.pop(); + } + + EXEC_AND_DLOG(ret, SlaveLoader::StoreDataInMemory(*packet), "stored data", + "failed to store"); + + /// return result to master loader + EXEC_AND_LOG( + ret, + SlaveLoader::SendAckToMasterLoader(packet->txn_id_, rSuccess == ret), + "sent commit result of " << packet->txn_id_ << " to master loader", + "failed to send commit res to master loader"); + DELETE_PTR(packet); + } +} + +void* SlaveLoader::StartSlaveLoader(void* arg) { + Config::getInstance(); + LOG(INFO) << "start slave loader..."; + sleep(2); + + SlaveLoader* slave_loader = Environment::getInstance()->get_slave_loader(); + int ret = rSuccess; + EXEC_AND_DLOG(ret, slave_loader->ConnectWithMaster(), + "succeed to connect with master", + "failed to connect with master "); + + assert(rSuccess == ret && "can't connect with master"); + + cout << "connected with master loader" << endl; +// TODO(YK): error handle + +#ifdef ONE_WORK_THREAD + SlaveLoader::handle = caf::spawn(SlaveLoader::WorkInCAF); +#endif + +#ifdef WORK_THREADS + // for (int i = 0; i < 1; ++i) { + // Environment::getInstance()->getThreadPool()->AddTask( + // SlaveLoader::HandleWork, slave_loader); + // } + + handles_ = new caf::actor[Config::slave_loader_thread_num]; + + for (int i = 0; i < Config::slave_loader_thread_num; ++i) { + SlaveLoader::handles_[i] = caf::spawn(SlaveLoader::WorkInCAF); + } +#endif + persistor = caf::spawn(SlaveLoader::PersistInCAF); + + slave_loader->ReceiveAndWorkLoop(); + assert(false); + return NULL; +} + +} /* namespace loader */ +} /* namespace claims */ diff --git a/loader/slave_loader.h b/loader/slave_loader.h new file mode 100644 index 000000000..4816b5416 --- /dev/null +++ b/loader/slave_loader.h @@ -0,0 +1,124 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/loader/slave_loader.h + * + * Created on: Apr 8, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef LOADER_SLAVE_LOADER_H_ +#define LOADER_SLAVE_LOADER_H_ +#include +#include +#include +#include +#include +#include +#include +#include +#include "../catalog/catalog.h" +#include "../storage/BlockManager.h" +#include "../txn_manager/txn.hpp" +#include "../txn_manager/txn_client.hpp" +#include "caf/all.hpp" + +namespace claims { +namespace loader { + +using std::unordered_map; + +using caf::behavior; +using caf::event_based_actor; +using std::string; +using std::fstream; +using claims::catalog::Catalog; +using claims::txn::CheckpointAtom; +using claims::txn::UInt64; +using claims::txn::Query; +using claims::txn::QueryReq; +using claims::txn::GetGlobalPartId; +using claims::txn::TxnClient; +class LoadPacket; + +class SlaveLoader { + public: + SlaveLoader(); + virtual ~SlaveLoader(); + + public: + static void* StartSlaveLoader(void* arg); + + public: + RetCode ConnectWithMaster(); + RetCode ReceiveAndWorkLoop(); + void Clean() { + if (-1 != listening_fd_) FileClose(listening_fd_); + listening_fd_ = -1; + + if (-1 != master_fd_) FileClose(master_fd_); + master_fd_ = -1; + } + + private: + RetCode EstablishListeningSocket(); + RetCode SendSelfAddrToMaster(); + RetCode GetConnectedSocket(); + + void OutputFdIpPort(int fd); + + static RetCode StoreDataInMemory(const LoadPacket& packet); + static RetCode SendAckToMasterLoader(const uint64_t& txn_id, + bool is_commited); + + static behavior WorkInCAF(event_based_actor* self); + static behavior PersistInCAF(event_based_actor* self); + static void WorkInAsync(LoadPacket* packet); + static void* HandleWork(void* arg); + + private: + int master_socket_fd_; + string self_ip; + int self_port; + + int listening_fd_ = -1; + int master_fd_ = -1; + + private: + static caf::actor handle; + static caf::actor* handles_; + static caf::actor persistor; + + private: + queue packet_queue_; + SpineLock queue_lock_; + semaphore packet_count_; + Lock partition_storage_lock_; + + public: + static ofstream logfile; +}; + +} /* namespace loader */ +} /* namespace claims */ + +#endif // LOADER_SLAVE_LOADER_H_ diff --git a/loader/table_file_connector.cpp b/loader/table_file_connector.cpp index acf824176..ba329f273 100644 --- a/loader/table_file_connector.cpp +++ b/loader/table_file_connector.cpp @@ -77,8 +77,8 @@ TableFileConnector::TableFileConnector(FilePlatform platform, file_handles_.push_back(projection_files); write_locks_.push_back(projection_locks); } - LOG(INFO) << "open all " << file_handles_.size() << " file successfully" - << std::endl; + LOG(INFO) << "open all " << file_handles_.size() << " file of table " + << table->getTableName() << " successfully" << std::endl; } // TableFileConnector::TableFileConnector(FilePlatform platform, diff --git a/loader/test/Makefile.am b/loader/test/Makefile.am index 1c211bfc5..fe3cb2b3f 100644 --- a/loader/test/Makefile.am +++ b/loader/test/Makefile.am @@ -26,4 +26,4 @@ libtest_a_SOURCES = \ single_file_connector_test.h single_file_connector_test.cpp \ single_thread_single_file_connector_test.h\ table_file_connector_test.h table_file_connector_test.cpp \ - data_injector_test.cpp data_injector_test.h + data_ingestion_test.cpp data_ingestion_test.h diff --git a/loader/test/data_injector_test.cpp b/loader/test/data_ingestion_test.cpp similarity index 88% rename from loader/test/data_injector_test.cpp rename to loader/test/data_ingestion_test.cpp index 1208f6b3b..9b1f54de9 100644 --- a/loader/test/data_injector_test.cpp +++ b/loader/test/data_ingestion_test.cpp @@ -16,7 +16,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * /Claims/loader/test/data_injector_test.cpp + * /Claims/loader/test/data_injestion_test.cpp * * Created on: Oct 30, 2015 * Author: yukai @@ -26,14 +26,13 @@ * */ -#include "./data_injector_test.h" - #include #include #include "../../catalog/table.h" #include "../../catalog/attribute.h" #include "../../common/Block/ResultSet.h" +#include "data_ingestion_test.h" using claims::catalog::TableDescriptor; using claims::catalog::Attribute; using std::string; @@ -42,16 +41,16 @@ using std::vector; namespace claims { namespace loader { -TEST_F(DataInjectorTest, Load) { +TEST_F(DataIngestionTest, Load) { // EXPECT_TRUE(client_.connected()); ResultSet rs; string command = ""; std::cout << "it is load" << std::endl; } -TEST_F(DataInjectorTest, Append) {} +TEST_F(DataIngestionTest, Append) {} -TEST_F(DataInjectorTest, Insert) {} +TEST_F(DataIngestionTest, Insert) {} } /* namespace loader */ } /* namespace claims */ diff --git a/loader/test/data_injector_test.h b/loader/test/data_ingestion_test.h similarity index 78% rename from loader/test/data_injector_test.h rename to loader/test/data_ingestion_test.h index 0b1e60dc6..9a89e6b14 100644 --- a/loader/test/data_injector_test.h +++ b/loader/test/data_ingestion_test.h @@ -16,7 +16,7 @@ * See the License for the specific language governing permissions and * limitations under the License. * - * /Claims/loader/test/data_injector_test.h + * /Claims/loader/test/data_injestion_test.h * * Created on: Oct 30, 2015 * Author: yukai @@ -26,14 +26,14 @@ * */ -#ifndef LOADER_TEST_DATA_INJECTOR_TEST_H_ -#define LOADER_TEST_DATA_INJECTOR_TEST_H_ +#ifndef LOADER_TEST_DATA_INGESTION_TEST_H_ +#define LOADER_TEST_DATA_INGESTION_TEST_H_ #include #include #include -#include "../../loader/data_injector.h" #include "../../catalog/catalog.h" +#include "../data_ingestion.h" using std::ofstream; using claims::catalog::Catalog; @@ -41,10 +41,10 @@ using claims::catalog::Catalog; namespace claims { namespace loader { -class DataInjectorTest : public ::testing::Test { +class DataIngestionTest : public ::testing::Test { public: - DataInjectorTest() {} - virtual ~DataInjectorTest() {} + DataIngestionTest() {} + virtual ~DataIngestionTest() {} public: // Client client_; @@ -52,7 +52,7 @@ class DataInjectorTest : public ::testing::Test { int port_; }; -TEST_F(DataInjectorTest, GetTuple1) { +TEST_F(DataIngestionTest, GetTuple1) { char* data[2] = {"sf|sfs||sfssfs|\n", "sfsf\fw|fsfegbf,s,nn|fwnelweh\n"}; ofstream ofs("test_for_DI_GetTuple"); @@ -62,13 +62,13 @@ TEST_F(DataInjectorTest, GetTuple1) { string res; string ter("\n"); int i = 0; - while (DataInjector::GetTupleTerminatedBy(ifs, res, ter)) { + while (DataIngestion::GetTupleTerminatedBy(ifs, res, ter)) { EXPECT_STREQ(data[i++], res.c_str()); res.clear(); } } -TEST_F(DataInjectorTest, GetTuple2) { +TEST_F(DataIngestionTest, GetTuple2) { char* data[2] = {"sf|sfs||sfssfs|\n", "sfsf\fw|fsfegbf,s,nn|fwnelweh\n|\n"}; ofstream ofs("test_for_DI_GetTuple"); @@ -78,12 +78,12 @@ TEST_F(DataInjectorTest, GetTuple2) { string res; string ter = "|\n"; int i = 0; - while (DataInjector::GetTupleTerminatedBy(ifs, res, ter)) { + while (DataIngestion::GetTupleTerminatedBy(ifs, res, ter)) { EXPECT_STREQ(data[i++], res.c_str()); res.clear(); } } -TEST_F(DataInjectorTest, GetTuple3) { +TEST_F(DataIngestionTest, GetTuple3) { char* data[3] = {"sf|sfs||sfssfs|\n", "sfsf\fw|fsfegbf,s,nn|fwnelweh\n|\n", "|\n"}; @@ -94,13 +94,13 @@ TEST_F(DataInjectorTest, GetTuple3) { string res; string ter = "|\n"; int i = 0; - while (DataInjector::GetTupleTerminatedBy(ifs, res, ter)) { + while (DataIngestion::GetTupleTerminatedBy(ifs, res, ter)) { EXPECT_STREQ(data[i++], res.c_str()); res.clear(); } } -TEST_F(DataInjectorTest, GetTuple4) { +TEST_F(DataIngestionTest, GetTuple4) { char* data[4] = {"sf|sfs||sfssfs||||", "sfsf\fw|fsfe|||gbf,s,nn|fwnelweh\n||||", "|\n||||", "sfsf"}; @@ -111,7 +111,7 @@ TEST_F(DataInjectorTest, GetTuple4) { string res; string ter = "||||"; int i = 0; - while (DataInjector::GetTupleTerminatedBy(ifs, res, ter)) { + while (DataIngestion::GetTupleTerminatedBy(ifs, res, ter)) { EXPECT_STREQ(data[i++], res.c_str()); res.clear(); } @@ -119,4 +119,4 @@ TEST_F(DataInjectorTest, GetTuple4) { } /* namespace loader */ } /* namespace claims */ -#endif // LOADER_TEST_DATA_INJECTOR_TEST_H_ +#endif // LOADER_TEST_DATA_INGESTION_TEST_H_ diff --git a/loader/validity.cpp b/loader/validity.cpp index faca10302..ae179f4c4 100644 --- a/loader/validity.cpp +++ b/loader/validity.cpp @@ -26,13 +26,98 @@ * */ -#include "validity.h" +#include "./validity.h" +#include +#include "../catalog/table.h" +using claims::catalog::TableDescriptor; +using namespace claims::common; // NOLINT namespace claims { namespace loader { -Validity::~Validity() { - // TODO Auto-generated destructor stub +Validity::~Validity() {} + +string Validity::GenerateDataValidityInfo(const Validity& vali, + const TableDescriptor* table, + int line, const string& file) { + ostringstream oss; + oss.clear(); + switch (vali.check_res_) { + case rTooLargeData: { + oss << "Data larger than range value for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rTooSmallData: { + oss << "Data smaller than range value for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rInterruptedData: { + oss << "Data truncated from non-digit for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rTooLongData: { + oss << "Data truncated for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rIncorrectData: { + oss << "Incorrect format value for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rInvalidNullData: { + oss << "Null Data value is invalid for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + case rTooFewColumn: { + oss << "Line: " << line; + if ("" != file) oss << " in file: " << file; + oss << " doesn't contain data for all columns\n"; + break; + } + case rTooManyColumn: { + oss << "Line: " << line; + if ("" != file) oss << " in file: " << file; + oss << " was truncated; it contained more data than there were " + "input columns\n"; + break; + } + case rInvalidInsertData: { + oss << "Data value is invalid for column '" + << table->getAttribute(vali.column_index_).attrName + << "' at line: " << line; + if ("" != file) oss << " in file: " << file; + oss << "\n"; + break; + } + default: + LOG(ERROR) << "Unknown ERROR" << endl; + oss << "Unknown ERROR\n"; + break; + } + return oss.str(); } } /* namespace loader */ diff --git a/loader/validity.h b/loader/validity.h index 9b8742576..b9436c376 100644 --- a/loader/validity.h +++ b/loader/validity.h @@ -28,10 +28,18 @@ #ifndef LOADER_VALIDITY_H_ #define LOADER_VALIDITY_H_ +#include + #include "../common/error_define.h" namespace claims { +namespace catalog { +class TableDescriptor; +} + namespace loader { +using claims::catalog::TableDescriptor; +using std::string; struct Validity { public: @@ -39,6 +47,10 @@ struct Validity { : column_index_(column_index), check_res_(check_res) {} virtual ~Validity(); + static string GenerateDataValidityInfo(const Validity& vali, + const TableDescriptor* table, int line, + const string& file); + public: int column_index_; RetCode check_res_; diff --git a/logical_operator/logical_aggregation.h b/logical_operator/logical_aggregation.h index 7e2289595..9ab38261b 100755 --- a/logical_operator/logical_aggregation.h +++ b/logical_operator/logical_aggregation.h @@ -95,6 +95,13 @@ class LogicalAggregation : public LogicalOperator { LogicalOperator* child); virtual ~LogicalAggregation(); + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } + protected: /** * get plan context resulting from executing aggregation operator. diff --git a/logical_operator/logical_cross_join.h b/logical_operator/logical_cross_join.h index 5801d2696..14db24eb8 100644 --- a/logical_operator/logical_cross_join.h +++ b/logical_operator/logical_cross_join.h @@ -55,6 +55,14 @@ class LogicalCrossJoin : public LogicalOperator { PlanContext GetPlanContext(); PhysicalOperatorBase* GetPhysicalPlan(const unsigned& blocksize); void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + left_child_->GetTxnInfo(request); + right_child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + left_child_->SetTxnInfo(query); + right_child_->SetTxnInfo(query); + } protected: /** diff --git a/logical_operator/logical_delete_filter.h b/logical_operator/logical_delete_filter.h index aa31f61ef..be3124fac 100755 --- a/logical_operator/logical_delete_filter.h +++ b/logical_operator/logical_delete_filter.h @@ -127,6 +127,15 @@ class LogicalDeleteFilter : public LogicalOperator { bool GetOptimalPhysicalPlan(Requirement requirement, PhysicalPlanDescriptor& physical_plan_descriptor, const unsigned& block_size = 4096 * 1024); + void GetTxnInfo(QueryReq& request) const override { + left_child_->GetTxnInfo(request); + right_child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + left_child_->SetTxnInfo(query); + right_child_->SetTxnInfo(query); + } + private: std::vector GetLeftFilterKeyIds() const; diff --git a/logical_operator/logical_equal_join.h b/logical_operator/logical_equal_join.h index 2eb643e73..17b861b74 100755 --- a/logical_operator/logical_equal_join.h +++ b/logical_operator/logical_equal_join.h @@ -107,6 +107,15 @@ class LogicalEqualJoin : public LogicalOperator { PhysicalPlanDescriptor& physical_plan_descriptor, const unsigned& block_size = 4096 * 1024); + void GetTxnInfo(QueryReq& request) const override { + left_child_->GetTxnInfo(request); + right_child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + left_child_->SetTxnInfo(query); + right_child_->SetTxnInfo(query); + } + private: std::vector GetLeftJoinKeyIds() const; std::vector GetRightJoinKeyIds() const; diff --git a/logical_operator/logical_filter.h b/logical_operator/logical_filter.h index 0ef3c2a65..2f2df1eca 100644 --- a/logical_operator/logical_filter.h +++ b/logical_operator/logical_filter.h @@ -87,6 +87,12 @@ class LogicalFilter : public LogicalOperator { * @param level: As an index. */ void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } private: /** diff --git a/logical_operator/logical_limit.h b/logical_operator/logical_limit.h index 115b2ce9d..3c7499795 100644 --- a/logical_operator/logical_limit.h +++ b/logical_operator/logical_limit.h @@ -90,6 +90,13 @@ class LogicalLimit : public LogicalOperator { * @param level: As an index. */ virtual void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } + LogicalOperator* child_; diff --git a/logical_operator/logical_operator.h b/logical_operator/logical_operator.h index 28bfb8cdd..29b5195ae 100755 --- a/logical_operator/logical_operator.h +++ b/logical_operator/logical_operator.h @@ -38,12 +38,15 @@ #include "../logical_operator/Requirement.h" #include "../physical_operator/physical_operator_base.h" #include "../utility/lock.h" - +#include "../txn_manager/txn.hpp" static std::atomic_uint MIDINADE_TABLE_ID(1000000); namespace claims { namespace logical_operator { #define kTabSize 4 using claims::physical_operator::PhysicalOperatorBase; +using claims::txn::QueryReq; +using claims::txn::Query; +using claims::txn::GetGlobalPartId; enum OperatorType { kLogicalScan, kLogicalFilter, @@ -113,6 +116,13 @@ class LogicalOperator { virtual void Print(int level = 0) const = 0; OperatorType get_operator_type() { return operator_type_; } + /** + * Get the information(list of partition to scan) for txn creation + * Set the txn concurrency information to operator + * @param request + */ + virtual void GetTxnInfo(QueryReq& request) const {} + virtual void SetTxnInfo(const Query& query) {} protected: Schema* GetSchema(const std::vector&) const; diff --git a/logical_operator/logical_outer_join.h b/logical_operator/logical_outer_join.h index 3d7fcaf15..32d997426 100644 --- a/logical_operator/logical_outer_join.h +++ b/logical_operator/logical_outer_join.h @@ -110,6 +110,14 @@ class LogicalOuterJoin : public LogicalOperator { bool GetOptimalPhysicalPlan(Requirement requirement, PhysicalPlanDescriptor& physical_plan_descriptor, const unsigned& block_size = 4096 * 1024); + void GetTxnInfo(QueryReq& request) const override { + left_child_->GetTxnInfo(request); + right_child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + left_child_->SetTxnInfo(query); + right_child_->SetTxnInfo(query); + } private: std::vector GetLeftJoinKeyIds() const; diff --git a/logical_operator/logical_project.h b/logical_operator/logical_project.h index 23d5a7848..b1e4dfdf7 100644 --- a/logical_operator/logical_project.h +++ b/logical_operator/logical_project.h @@ -79,6 +79,12 @@ class LogicalProject : public LogicalOperator { * @param level:initialized to zero */ void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } private: /** diff --git a/logical_operator/logical_query_plan_root.h b/logical_operator/logical_query_plan_root.h index 67c4bccd9..a19ba85ce 100644 --- a/logical_operator/logical_query_plan_root.h +++ b/logical_operator/logical_query_plan_root.h @@ -99,6 +99,12 @@ class LogicalQueryPlanRoot : public LogicalOperator { * @return void */ void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } private: /** diff --git a/logical_operator/logical_scan.cpp b/logical_operator/logical_scan.cpp index 70e9c79bc..3b43942fb 100644 --- a/logical_operator/logical_scan.cpp +++ b/logical_operator/logical_scan.cpp @@ -210,6 +210,7 @@ PhysicalOperatorBase* LogicalScan::GetPhysicalPlan(const unsigned& block_size) { state.projection_id_ = target_projection_->getProjectionID(); state.schema_ = GetSchema(plan_context_->attribute_list_); state.sample_rate_ = sample_rate_; + state.query_ = query_; return new PhysicalProjectionScan(state); } diff --git a/logical_operator/logical_scan.h b/logical_operator/logical_scan.h index 7e8a0e052..2062c8b94 100644 --- a/logical_operator/logical_scan.h +++ b/logical_operator/logical_scan.h @@ -65,6 +65,19 @@ class LogicalScan : public LogicalOperator { PhysicalPlanDescriptor& physical_plan_descriptor, const unsigned& kBlock_size = 4096 * 1024); void ChangeAliasAttr(); + void GetTxnInfo(QueryReq& request) const override { + auto table_id = target_projection_->getProjectionID().table_id; + auto proj_id = target_projection_->getProjectionID().projection_off; + auto part_count = + target_projection_->getPartitioner()->getNumberOfPartitions(); + for (auto part_id = 0; part_id < part_count; part_id++) { + request.part_list_.push_back(GetGlobalPartId(table_id, proj_id, part_id)); + } + } + void SetTxnInfo(const Query& query) override { + query_ = query; + query_.GenTxnInfo(); + } private: /**check whether all the involved attributes are in the same projection.*/ @@ -77,6 +90,7 @@ class LogicalScan : public LogicalOperator { PlanContext* plan_context_; string table_alias_; float sample_rate_; + Query query_; }; } // namespace logical_operator diff --git a/logical_operator/logical_sort.h b/logical_operator/logical_sort.h index b67e0453b..193b0687c 100644 --- a/logical_operator/logical_sort.h +++ b/logical_operator/logical_sort.h @@ -110,6 +110,12 @@ class LogicalSort : public LogicalOperator { virtual bool GetOptimalPhysicalPlan( Requirement requirement, PhysicalPlanDescriptor &physical_plan_descriptor, const unsigned &block_size = 4096 * 1024) {} + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } private: vector> order_by_attrs_; diff --git a/logical_operator/logical_subquery.h b/logical_operator/logical_subquery.h index 8a7404757..8a9521acf 100644 --- a/logical_operator/logical_subquery.h +++ b/logical_operator/logical_subquery.h @@ -48,6 +48,12 @@ class LogicalSubquery : public LogicalOperator { PlanContext GetPlanContext(); PhysicalOperatorBase *GetPhysicalPlan(const unsigned &blocksize); void Print(int level = 0) const; + void GetTxnInfo(QueryReq& request) const override { + child_->GetTxnInfo(request); + } + void SetTxnInfo(const Query& query) override { + child_->SetTxnInfo(query); + } private: vector subquery_attrs_; diff --git a/memlog b/memlog new file mode 100644 index 000000000..ef2fb7a1c --- /dev/null +++ b/memlog @@ -0,0 +1,9926 @@ +==10647== Memcheck, a memory error detector +==10647== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al. +==10647== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info +==10647== Command: ./claimsserver -c ../conf/config +==10647== Parent PID: 6509 +==10647== +==10647== Warning: set address range perms: large range [0x5327d040, 0xd327d050) (undefined) +==10647== Thread 122: +==10647== Syscall param socketcall.sendto(msg) points to uninitialised byte(s) +==10647== at 0xA4AE75B: send (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xAB8B5A: ClientListener::write(int, ClientResponse const&) const (ClaimsServer.cpp:1037) +==10647== by 0xABBB95: ClientListener::sendHandler(void*) (ClaimsServer.cpp:805) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== Address 0xd33bab50 is 16 bytes inside a block of size 65,544 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAB8ADA: serialize (ClientResponse.h:193) +==10647== by 0xAB8ADA: ClientListener::write(int, ClientResponse const&) const (ClaimsServer.cpp:1032) +==10647== by 0xABBB95: ClientListener::sendHandler(void*) (ClaimsServer.cpp:805) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== Thread 133: +==10647== Mismatched free() / delete / delete [] +==10647== at 0x4C2B131: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBAE4AF: claims::loader::MasterLoader::GetPartitionTuples(claims::loader::MasterLoader::IngestionRequest const&, claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > >, std::allocator >, std::allocator > > > > >&) (master_loader.cpp:608) +==10647== by 0xBB07C4: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:376) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== Address 0xccff1a0 is 0 bytes inside a block of size 16 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBACAD8: claims::common::Malloc(unsigned long) (memory_handle.h:43) +==10647== by 0xBADD84: claims::loader::MasterLoader::GetPartitionTuples(claims::loader::MasterLoader::IngestionRequest const&, claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > >, std::allocator >, std::allocator > > > > >&) (master_loader.cpp:532) +==10647== by 0xBB07C4: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:376) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== Mismatched free() / delete / delete [] +==10647== at 0x4C2B131: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBAFA2A: claims::loader::MasterLoader::MergePartitionTupleIntoOneBuffer(claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > >, std::allocator >, std::allocator > > > > >&, std::vector >, std::allocator > > >&) (master_loader.cpp:648) +==10647== by 0xBB0877: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:386) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== Address 0xd34c4660 is 0 bytes inside a block of size 16 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBACAD8: claims::common::Malloc(unsigned long) (memory_handle.h:43) +==10647== by 0xBAE14A: claims::loader::MasterLoader::GetPartitionTuples(claims::loader::MasterLoader::IngestionRequest const&, claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > >, std::allocator >, std::allocator > > > > >&) (master_loader.cpp:590) +==10647== by 0xBB07C4: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:376) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== Mismatched free() / delete / delete [] +==10647== at 0x4C2B131: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB9F3C: claims::loader::LoadPacket::~LoadPacket() (load_packet.cpp:39) +==10647== by 0xBB0221: claims::loader::MasterLoader::SendPartitionTupleToSlave(claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > > const&, claims::txn::Ingest const&) (master_loader.cpp:773) +==10647== by 0xBB0C4E: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:421) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== Address 0xd3590120 is 0 bytes inside a block of size 16,040 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB9F79: Malloc (memory_handle.h:43) +==10647== by 0xBB9F79: claims::loader::LoadPacket::Serialize() (load_packet.cpp:43) +==10647== by 0xBB0153: claims::loader::MasterLoader::SendPartitionTupleToSlave(claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > > const&, claims::txn::Ingest const&) (master_loader.cpp:765) +==10647== by 0xBB0C4E: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:421) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== Mismatched free() / delete / delete [] +==10647== at 0x4C2B131: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB0CD3: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:427) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== Address 0xd34f5120 is 0 bytes inside a block of size 16,000 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBACAD8: claims::common::Malloc(unsigned long) (memory_handle.h:43) +==10647== by 0xBAF9C1: claims::loader::MasterLoader::MergePartitionTupleIntoOneBuffer(claims::catalog::TableDescriptor const*, std::vector >, std::allocator > > >, std::allocator >, std::allocator > > > > >&, std::vector >, std::allocator > > >&) (master_loader.cpp:641) +==10647== by 0xBB0877: claims::loader::MasterLoader::Ingest(std::string const&, std::function) (master_loader.cpp:386) +==10647== by 0xBBA5B8: claims::loader::AMQConsumer::onMessage(cms::Message const*) (AMQ_consumer.cpp:115) +==10647== by 0x77C0E1C: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1644) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== Thread 7: +==10647== Mismatched free() / delete / delete [] +==10647== at 0x4C2B131: operator delete(void*) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB7A0D0: operator() (slave_loader.cpp:472) +==10647== by 0xB7A0D0: operator()&, claims::loader::LoadPacket*&> (match_case.hpp:134) +==10647== by 0xB7A0D0: apply_args, 0l, 1l, caf::detail::pseudo_tuple, claims::loader::LoadPacket*> > (apply_args.hpp:40) +==10647== by 0xB7A0D0: caf::trivial_match_case, claims::loader::LoadPacket*)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== Address 0xcfa1b10 is 0 bytes inside a block of size 16,000 alloc'd +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB76FF1: Malloc (memory_handle.h:43) +==10647== by 0xB76FF1: claims::loader::SlaveLoader::ReceiveAndWorkLoop() (slave_loader.cpp:264) +==10647== by 0xB7B613: claims::loader::SlaveLoader::StartSlaveLoader(void*) (slave_loader.cpp:588) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== +==10647== More than 10000000 total errors detected. I'm not reporting any more. +==10647== Final error counts will be inaccurate. Go fix your program! +==10647== Rerun with --error-limit=no to disable this cutoff. Note +==10647== that errors may occur in your program without prior warning from +==10647== Valgrind, because errors are no longer being displayed. +==10647== +==10647== +==10647== HEAP SUMMARY: +==10647== in use at exit: 3,359,943,068 bytes in 145,416 blocks +==10647== total heap usage: 255,122,722 allocs, 254,977,306 frees, 57,755,023,647 bytes allocated +==10647== +==10647== Thread 1: +==10647== 8 bytes in 1 blocks are possibly lost in loss record 102 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EB7B67: allocate (new_allocator.h:104) +==10647== by 0x4EB7B67: _M_allocate (stl_vector.h:168) +==10647== by 0x4EB7B67: void std::vector >::_M_emplace_back_aux(caf::behavior&&) (vector.tcc:404) +==10647== by 0xA3345E: become (abstract_event_based_actor.hpp:56) +==10647== by 0xA3345E: claims::MasterNodeActor::make_behavior() (master_node.cpp:54) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 8 bytes in 1 blocks are possibly lost in loss record 103 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB75743: allocate (new_allocator.h:104) +==10647== by 0xB75743: _M_allocate (stl_vector.h:168) +==10647== by 0xB75743: void std::vector >::_M_emplace_back_aux(ChunkStorage*&&) (vector.tcc:404) +==10647== by 0xB74D06: push_back (stl_vector.h:920) +==10647== by 0xB74D06: PartitionStorage::CheckAndAppendChunkList(unsigned int, bool) (PartitionStorage.cpp:409) +==10647== by 0xB74E77: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:320) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 679 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB7B55F: claims::loader::SlaveLoader::StartSlaveLoader(void*) (slave_loader.cpp:580) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 680 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A67760: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:78) +==10647== by 0x764582C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x764582C: AbstractList (AbstractList.h:341) +==10647== by 0x764582C: ArrayList (ArrayList.h:49) +==10647== by 0x764582C: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 681 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A67760: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:78) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 682 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BC4B: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BC4B: Pointer (Pointer.h:79) +==10647== by 0x7A5BC4B: StlMap (StlMap.h:632) +==10647== by 0x7A5BC4B: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 683 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BC9D: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BC9D: Pointer (Pointer.h:79) +==10647== by 0x7A5BC9D: StlMap (StlMap.h:632) +==10647== by 0x7A5BC9D: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 684 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BCF5: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BCF5: Pointer (Pointer.h:79) +==10647== by 0x7A5BCF5: StlMap (StlMap.h:632) +==10647== by 0x7A5BCF5: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 685 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BD4D: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BD4D: Pointer (Pointer.h:79) +==10647== by 0x7A5BD4D: StlMap (StlMap.h:632) +==10647== by 0x7A5BD4D: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 686 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BDA5: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BDA5: Pointer (Pointer.h:79) +==10647== by 0x7A5BDA5: StlMap (StlMap.h:632) +==10647== by 0x7A5BDA5: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 687 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BDFE: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A5BDFE: Pointer (Pointer.h:79) +==10647== by 0x7A5BDFE: decaf::util::Properties::Properties() (Properties.cpp:115) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 688 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A67760: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:78) +==10647== by 0x7A1E846: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7A1E846: StlMapEntrySet (StlMap.h:355) +==10647== by 0x7A1E846: decaf::util::StlMap >::entrySet() (StlMap.h:846) +==10647== by 0x7A5D385: decaf::util::Properties::toArray() const (Properties.cpp:244) +==10647== by 0x78F8CAC: activemq::util::ActiveMQProperties::toArray() const (ActiveMQProperties.h:93) +==10647== by 0x78F8996: activemq::util::ActiveMQProperties::copy(cms::CMSProperties const*) (ActiveMQProperties.cpp:42) +==10647== by 0x7644DC4: activemq::commands::ActiveMQDestination::copyDataStructure(activemq::commands::DataStructure const*) (ActiveMQDestination.cpp:128) +==10647== by 0x7683FF9: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:43) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 689 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A1E87B: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x7A1E87B: Pointer (Pointer.h:88) +==10647== by 0x7A1E87B: reset (Pointer.h:162) +==10647== by 0x7A1E87B: decaf::util::StlMap >::entrySet() (StlMap.h:846) +==10647== by 0x7A5D385: decaf::util::Properties::toArray() const (Properties.cpp:244) +==10647== by 0x78F8CAC: activemq::util::ActiveMQProperties::toArray() const (ActiveMQProperties.h:93) +==10647== by 0x78F8996: activemq::util::ActiveMQProperties::copy(cms::CMSProperties const*) (ActiveMQProperties.cpp:42) +==10647== by 0x7644DC4: activemq::commands::ActiveMQDestination::copyDataStructure(activemq::commands::DataStructure const*) (ActiveMQDestination.cpp:128) +==10647== by 0x7683FF9: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:43) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 690 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA0BEDB: __gnu_cxx::new_allocator::allocate(unsigned long, void const*) (new_allocator.h:104) +==10647== by 0xA0B60A: std::_Vector_base >::_M_allocate(unsigned long) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xA13FA7: void std::vector >::_M_emplace_back_aux(unsigned int const&) (vector.tcc:404) +==10647== by 0xBDF126: push_back (stl_vector.h:911) +==10647== by 0xBDF126: SchemaFix::SchemaFix(std::vector > const&) (SchemaFix.cpp:59) +==10647== by 0xB37D87: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3DEE9: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:211) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 691 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F35D: allocate (new_allocator.h:104) +==10647== by 0xB3F35D: _M_allocate (stl_vector.h:168) +==10647== by 0xB3F35D: _M_create_storage (stl_vector.h:181) +==10647== by 0xB3F35D: _Vector_base (stl_vector.h:136) +==10647== by 0xB3F35D: vector (stl_vector.h:312) +==10647== by 0xB3F35D: pair (stl_pair.h:127) +==10647== by 0xB3F35D: _Hash_node, std::allocator > > >&> (hashtable_policy.h:195) +==10647== by 0xB3F35D: construct > >, false>, const std::pair, std::allocator > > >&> (new_allocator.h:120) +==10647== by 0xB3F35D: std::__detail::_Hash_node, std::allocator > > >, false>* std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (hashtable.h:727) +==10647== by 0xB3F3F2: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:898) +==10647== by 0xB4020E: unordered_map (unordered_map.h:168) +==10647== by 0xB4020E: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 16 bytes in 1 blocks are possibly lost in loss record 692 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F835: allocate (new_allocator.h:104) +==10647== by 0xB3F835: _M_allocate (stl_vector.h:168) +==10647== by 0xB3F835: _M_create_storage (stl_vector.h:181) +==10647== by 0xB3F835: _Vector_base (stl_vector.h:136) +==10647== by 0xB3F835: vector (stl_vector.h:312) +==10647== by 0xB3F835: pair (stl_pair.h:127) +==10647== by 0xB3F835: _Rb_tree_node, std::allocator > > >&> (stl_tree.h:140) +==10647== by 0xB3F835: construct > > >, const std::pair, std::allocator > > >&> (new_allocator.h:120) +==10647== by 0xB3F835: _S_construct > > >, const std::pair, std::allocator > > >&> (alloc_traits.h:254) +==10647== by 0xB3F835: construct > > >, const std::pair, std::allocator > > >&> (alloc_traits.h:393) +==10647== by 0xB3F835: std::_Rb_tree_node, std::allocator > > > >* std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_create_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (stl_tree.h:406) +==10647== by 0xB3F889: _M_clone_node (stl_tree.h:429) +==10647== by 0xB3F889: std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_copy(std::_Rb_tree_node, std::allocator > > > > const*, std::_Rb_tree_node, std::allocator > > > >*) (stl_tree.h:1087) +==10647== by 0xB40295: _Rb_tree (stl_tree.h:659) +==10647== by 0xB40295: map (stl_map.h:181) +==10647== by 0xB40295: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 24 bytes in 1 blocks are possibly lost in loss record 800 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EB5AE1: _M_init_functor (functional:1987) +==10647== by 0x4EB5AE1: _M_init_functor (functional:1958) +==10647== by 0x4EB5AE1: function, caf::behavior (*)(caf::stateful_actor*), std::shared_ptr >, true, true>, void> (functional:2458) +==10647== by 0x4EB5AE1: operator()<> (init_fun_factory.hpp:105) +==10647== by 0x4EB5AE1: spawn_functor_impl<(caf::spawn_options)72, caf::stateful_actor, caf::empty_before_launch_callback, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:93) +==10647== by 0x4EB5AE1: spawn_functor<(caf::spawn_options)72, caf::empty_before_launch_callback, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:109) +==10647== by 0x4EB5AE1: spawn<(caf::spawn_options)72, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:133) +==10647== by 0x4EB5AE1: caf::experimental::spawn_announce_actor_type_server() (announce_actor_type.cpp:70) +==10647== by 0x4EAF6B4: caf::detail::actor_registry::initialize() (actor_registry.cpp:277) +==10647== by 0x4EE9082: lazy_get&, std::mutex&) [with T = caf::detail::actor_registry]::__lambda3> (singletons.hpp:101) +==10647== by 0x4EE9082: lazy_get (singletons.hpp:110) +==10647== by 0x4EE9082: caf::detail::singletons::get_actor_registry() (singletons.cpp:107) +==10647== by 0x4E9C094: caf::abstract_actor::is_registered(bool) (abstract_actor.cpp:125) +==10647== by 0x4ECB4F2: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:558) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== by 0x9D6FCD: Environment::Environment(bool) (Environment.cpp:87) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 24 bytes in 1 blocks are possibly lost in loss record 801 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC90AD: OperateULong::duplicateOperator() const (data_type.h:587) +==10647== by 0xBDE6CC: column_type (data_type.h:1394) +==10647== by 0xBDE6CC: _Construct (stl_construct.h:75) +==10647== by 0xBDE6CC: __uninit_copy<__gnu_cxx::__normal_iterator >, column_type*> (stl_uninitialized.h:75) +==10647== by 0xBDE6CC: uninitialized_copy<__gnu_cxx::__normal_iterator >, column_type*> (stl_uninitialized.h:117) +==10647== by 0xBDE6CC: __uninitialized_copy_a<__gnu_cxx::__normal_iterator >, column_type*, column_type> (stl_uninitialized.h:258) +==10647== by 0xBDE6CC: vector (stl_vector.h:316) +==10647== by 0xBDE6CC: Schema::Schema(std::vector > const&) (Schema.cpp:13) +==10647== by 0xBDEFBD: SchemaFix::SchemaFix(std::vector > const&) (SchemaFix.cpp:53) +==10647== by 0xB37D87: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3DEE9: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:211) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 24 bytes in 1 blocks are possibly lost in loss record 802 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F15D: allocate (new_allocator.h:104) +==10647== by 0xB3F15D: std::__detail::_Hash_node, false>* std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_node const&>(std::pair const&) (hashtable.h:724) +==10647== by 0xB3F1D2: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:898) +==10647== by 0xB4021A: unordered_map (unordered_map.h:168) +==10647== by 0xB4021A: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 24 bytes in 1 blocks are possibly lost in loss record 803 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F15D: allocate (new_allocator.h:104) +==10647== by 0xB3F15D: std::__detail::_Hash_node, false>* std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_node const&>(std::pair const&) (hashtable.h:724) +==10647== by 0xB3F1D2: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:898) +==10647== by 0xB4022A: unordered_map (unordered_map.h:168) +==10647== by 0xB4022A: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 24 bytes in 3 blocks are possibly lost in loss record 804 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EB7B67: allocate (new_allocator.h:104) +==10647== by 0x4EB7B67: _M_allocate (stl_vector.h:168) +==10647== by 0x4EB7B67: void std::vector >::_M_emplace_back_aux(caf::behavior&&) (vector.tcc:404) +==10647== by 0x4EBD6D7: become (abstract_event_based_actor.hpp:56) +==10647== by 0x4EBD6D7: caf::event_based_actor::initialize() (event_based_actor.cpp:45) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 26 bytes in 1 blocks are possibly lost in loss record 813 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4EAD826: operator() (actor_registry.cpp:199) +==10647== by 0x4EAD826: apply_moved_args_prefixed, caf::stateful_actor*> (apply_args.hpp:58) +==10647== by 0x4EAD826: apply (init_fun_factory.hpp:57) +==10647== by 0x4EAD826: operator() (init_fun_factory.hpp:50) +==10647== by 0x4EAD826: std::_Function_handler, caf::detail::actor_registry::initialize()::{lambda(caf::stateful_actor*)#1}, std::shared_ptr >, true, true> >::_M_invoke(std::_Any_data const&, caf::local_actor*) (functional:2057) +==10647== by 0x4EBD764: operator() (functional:2471) +==10647== by 0x4EBD764: caf::event_based_actor::make_behavior() (event_based_actor.cpp:52) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 829 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD065: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:43) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 830 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD0BA: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:44) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 831 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FABA: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:104) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 832 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FB14: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:105) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 833 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FB60: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:106) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 834 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79A1295: substr (basic_string.h:2208) +==10647== by 0x79A1295: decaf::internal::net::URIHelper::parseURI(std::string const&, bool) (URIHelper.cpp:90) +==10647== by 0x7A34BFB: decaf::net::URI::parseURI(std::string const&, bool) (URI.cpp:252) +==10647== by 0x7A34F80: decaf::net::URI::URI(std::string const&) (URI.cpp:53) +==10647== by 0x7921C56: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:296) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== +==10647== 28 bytes in 1 blocks are possibly lost in loss record 835 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A6049B: substr (basic_string.h:2208) +==10647== by 0x7A6049B: decaf::util::StringTokenizer::nextToken() (StringTokenizer.cpp:98) +==10647== by 0x792103F: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:151) +==10647== by 0x7644BB4: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:101) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== +==10647== 29 bytes in 1 blocks are possibly lost in loss record 841 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD109: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:45) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 29 bytes in 1 blocks are possibly lost in loss record 842 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FBFF: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:108) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 853 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD41C: decaf::internal::security::provider::DefaultProvider::DefaultProvider() (DefaultProvider.cpp:33) +==10647== by 0x79C0D3A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:103) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 854 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780F9BC: activemq::library::ActiveMQCPP::registerWireFormats() (ActiveMQCPP.cpp:95) +==10647== by 0x780FE3D: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:60) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 855 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA37D62: _S_construct (basic_string.tcc:138) +==10647== by 0xA37D62: _S_construct_aux (basic_string.h:1725) +==10647== by 0xA37D62: _S_construct (basic_string.h:1746) +==10647== by 0xA37D62: basic_string (basic_string.tcc:229) +==10647== by 0xA37D62: std::string __gnu_cxx::__to_xstring(int (*)(char*, unsigned long, char const*, __va_list_tag*), unsigned long, char const*, ...) (string_conversions.h:99) +==10647== by 0xA341A2: to_string (basic_string.h:2866) +==10647== by 0xA341A2: claims::SlaveNode::RegisterToMaster() (slave_node.cpp:254) +==10647== by 0x9D8270: Environment::InitMembership() (Environment.cpp:259) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 856 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00E43: claims::txn::CAFSerConfig() (txn.hpp:464) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 857 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7644B79: substr (basic_string.h:2208) +==10647== by 0x7644B79: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:100) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 30 bytes in 1 blocks are possibly lost in loss record 858 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x793DE84: _M_replace_dispatch<__gnu_cxx::__normal_iterator > > (basic_string.tcc:662) +==10647== by 0x793DE84: replace<__gnu_cxx::__normal_iterator > > (basic_string.h:1630) +==10647== by 0x793DE84: insert<__gnu_cxx::__normal_iterator > > (basic_string.h:1203) +==10647== by 0x793DE84: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::readAsciiString(decaf::io::DataInputStream*) (BaseDataStreamMarshaller.cpp:704) +==10647== by 0x7939930: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalString(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:157) +==10647== by 0x79425D3: activemq::wireformat::openwire::marshal::generated::ActiveMQDestinationMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQDestinationMarshaller.cpp:52) +==10647== by 0x7944C5C: activemq::wireformat::openwire::marshal::generated::ActiveMQQueueMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQQueueMarshaller.cpp:58) +==10647== by 0x79340A7: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:411) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== by 0x796B014: activemq::wireformat::openwire::marshal::generated::MessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageMarshaller.cpp:58) +==10647== by 0x7947302: activemq::wireformat::openwire::marshal::generated::ActiveMQTextMessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQTextMessageMarshaller.cpp:58) +==10647== +==10647== 31 bytes in 1 blocks are possibly lost in loss record 864 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00CF2: claims::txn::CAFSerConfig() (txn.hpp:458) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,022 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x139B0FC: llvm::PMDataManager::add(llvm::Pass*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x139C222: llvm::PMTopLevelManager::schedulePass(llvm::Pass*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF24A97: llvm::TargetPassConfig::addPass(llvm::Pass*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF24EC4: llvm::TargetPassConfig::addPass(void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF253D3: llvm::TargetPassConfig::addOptimizedRegAlloc(llvm::FunctionPass*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF257F3: llvm::TargetPassConfig::addMachinePasses() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC904B: addPassesToGenerateCode(llvm::LLVMTargetMachine*, llvm::legacy::PassManagerBase&, bool, void const*, void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC9099: llvm::LLVMTargetMachine::addPassesToEmitMachineCode(llvm::legacy::PassManagerBase&, llvm::JITCodeEmitter&, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BC3C: llvm::JIT::JIT(llvm::Module*, llvm::TargetMachine&, llvm::TargetJITInfo&, llvm::JITMemoryManager*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BD0E: llvm::JIT::createJIT(llvm::Module*, std::string*, llvm::JITMemoryManager*, bool, llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x11FE6C6: llvm::EngineBuilder::create(llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,023 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7994E9E: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:78) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,024 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A1B172: StlMap (StlMap.h:632) +==10647== by 0x7A1B172: decaf::lang::System::initSystem(int, char**) (System.cpp:81) +==10647== by 0x7994EAF: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:80) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,025 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x7A1B38D: decaf::lang::System::initSystem(int, char**) (System.cpp:81) +==10647== by 0x7994EAF: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:80) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,026 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79DA111: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x79DA111: StlSet (StlSet.h:136) +==10647== by 0x79DA111: decaf::internal::util::ResourceLifecycleManager::ResourceLifecycleManager() (ResourceLifecycleManager.cpp:31) +==10647== by 0x79969AD: decaf::internal::net::Network::Network() (Network.cpp:58) +==10647== by 0x7996B54: decaf::internal::net::Network::initializeNetworking() (Network.cpp:119) +==10647== by 0x7994EB4: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:81) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,027 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79969B9: decaf::internal::net::Network::Network() (Network.cpp:58) +==10647== by 0x7996B54: decaf::internal::net::Network::initializeNetworking() (Network.cpp:119) +==10647== by 0x7994EB4: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:81) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,028 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7996A29: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7996A29: AbstractList (AbstractList.h:341) +==10647== by 0x7996A29: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x7996A29: LinkedList (LinkedList.h:91) +==10647== by 0x7996A29: decaf::internal::net::Network::Network() (Network.cpp:58) +==10647== by 0x7996B54: decaf::internal::net::Network::initializeNetworking() (Network.cpp:119) +==10647== by 0x7994EB4: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:81) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,029 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79C0C99: SecurityRuntimeImpl (SecurityRuntime.cpp:54) +==10647== by 0x79C0C99: decaf::internal::security::SecurityRuntime::SecurityRuntime() (SecurityRuntime.cpp:67) +==10647== by 0x79C0D1A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:101) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,030 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79C1257: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x79C1257: AbstractList (AbstractList.h:341) +==10647== by 0x79C1257: ArrayList (ArrayList.h:49) +==10647== by 0x79C1257: ServiceRegistryImpl (ServiceRegistry.cpp:51) +==10647== by 0x79C1257: decaf::internal::security::ServiceRegistry::ServiceRegistry() (ServiceRegistry.cpp:58) +==10647== by 0x79C0CBE: SecurityRuntimeImpl (SecurityRuntime.cpp:55) +==10647== by 0x79C0CBE: decaf::internal::security::SecurityRuntime::SecurityRuntime() (SecurityRuntime.cpp:67) +==10647== by 0x79C0D1A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:101) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,031 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79C1307: AbstractMap (AbstractMap.h:66) +==10647== by 0x79C1307: HashMap (HashMap.h:808) +==10647== by 0x79C1307: ServiceRegistryImpl (ServiceRegistry.cpp:51) +==10647== by 0x79C1307: decaf::internal::security::ServiceRegistry::ServiceRegistry() (ServiceRegistry.cpp:58) +==10647== by 0x79C0CBE: SecurityRuntimeImpl (SecurityRuntime.cpp:55) +==10647== by 0x79C0CBE: decaf::internal::security::SecurityRuntime::SecurityRuntime() (SecurityRuntime.cpp:67) +==10647== by 0x79C0D1A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:101) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,032 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD153: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:46) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,033 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FBAC: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:107) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,034 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB7F436: ResourceManagerMaster::RegisterNewSlave(int) (ResourceManagerMaster.cpp:24) +==10647== by 0xA32E39: operator() (master_node.cpp:64) +==10647== by 0xA32E39: operator()&, std::basic_string, std::allocator >&, short unsigned int&> (match_case.hpp:118) +==10647== by 0xA32E39: apply_args, 0l, 1l, 2l, caf::detail::pseudo_tuple, std::basic_string, std::allocator >, short unsigned int> > (apply_args.hpp:40) +==10647== by 0xA32E39: caf::trivial_match_case, std::string, unsigned short)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,035 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB80159: allocate (new_allocator.h:104) +==10647== by 0xB80159: allocate (allocate.hpp:546) +==10647== by 0xB80159: construct (buckets.hpp:405) +==10647== by 0xB80159: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB80159: boost::unordered::detail::table_impl >, int, InstanceResourceInfo*, boost::hash, std::equal_to > >::operator[](int const&) (unique.hpp:347) +==10647== by 0xB7F44F: operator[] (unordered_map.hpp:1185) +==10647== by 0xB7F44F: ResourceManagerMaster::RegisterNewSlave(int) (ResourceManagerMaster.cpp:24) +==10647== by 0xA32E39: operator() (master_node.cpp:64) +==10647== by 0xA32E39: operator()&, std::basic_string, std::allocator >&, short unsigned int&> (match_case.hpp:118) +==10647== by 0xA32E39: apply_args, 0l, 1l, 2l, caf::detail::pseudo_tuple, std::basic_string, std::allocator >, short unsigned int> > (apply_args.hpp:40) +==10647== by 0xA32E39: caf::trivial_match_case, std::string, unsigned short)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,036 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB4D0FB: claims::physical_operator::PhysicalOperator::PhysicalOperator(unsigned int, unsigned int) (physical_operator.cpp:38) +==10647== by 0xB659F9: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 32 bytes in 1 blocks are possibly lost in loss record 1,037 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA757327: std::basic_stringbuf, std::allocator >::str() const (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xABBC36: str (sstream:472) +==10647== by 0xABBC36: setEnd (ClientResponse.h:99) +==10647== by 0xABBC36: ClientListener::sendHandler(void*) (ClaimsServer.cpp:809) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 32 bytes in 4 blocks are possibly lost in loss record 1,038 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EB7B67: allocate (new_allocator.h:104) +==10647== by 0x4EB7B67: _M_allocate (stl_vector.h:168) +==10647== by 0x4EB7B67: void std::vector >::_M_emplace_back_aux(caf::behavior&&) (vector.tcc:404) +==10647== by 0x4EBD6D7: become (abstract_event_based_actor.hpp:56) +==10647== by 0x4EBD6D7: caf::event_based_actor::initialize() (event_based_actor.cpp:45) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4ECB9FE: operator() (local_actor.cpp:572) +==10647== by 0x4ECB9FE: _M_invoke<0ul> (functional:1732) +==10647== by 0x4ECB9FE: operator() (functional:1720) +==10647== by 0x4ECB9FE: std::thread::_Impl)#1} (caf::intrusive_ptr)> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,042 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7E72: Environment::AnnounceCafMessage() (Environment.cpp:222) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,043 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A559A8: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7A559A8: StlSet (StlSet.h:136) +==10647== by 0x7A559A8: ProviderImpl (Provider.cpp:34) +==10647== by 0x7A559A8: decaf::security::Provider::Provider(std::string const&, double, std::string const&) (Provider.cpp:56) +==10647== by 0x79CD432: decaf::internal::security::provider::DefaultProvider::DefaultProvider() (DefaultProvider.cpp:33) +==10647== by 0x79C0D3A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:103) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,044 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x792A157: StlMap (StlMap.h:632) +==10647== by 0x792A157: activemq::wireformat::WireFormatRegistry::WireFormatRegistry() (WireFormatRegistry.cpp:34) +==10647== by 0x792A47A: activemq::wireformat::WireFormatRegistry::initialize() (WireFormatRegistry.cpp:103) +==10647== by 0x780F92E: activemq::library::ActiveMQCPP::registerWireFormats() (ActiveMQCPP.cpp:92) +==10647== by 0x780FE3D: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:60) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,045 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780F966: activemq::library::ActiveMQCPP::registerWireFormats() (ActiveMQCPP.cpp:94) +==10647== by 0x780FE3D: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:60) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,046 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78999D7: StlMap (StlMap.h:632) +==10647== by 0x78999D7: activemq::transport::TransportRegistry::TransportRegistry() (TransportRegistry.cpp:34) +==10647== by 0x7899CFA: activemq::transport::TransportRegistry::initialize() (TransportRegistry.cpp:101) +==10647== by 0x780FA82: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:102) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,047 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x780FC52: activemq::library::ActiveMQCPP::registerTransports() (ActiveMQCPP.cpp:109) +==10647== by 0x780FE42: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,048 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x790184C: activemq::util::IdGenerator::initialize() (IdGenerator.cpp:55) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,049 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00D83: claims::txn::CAFSerConfig() (txn.hpp:461) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,050 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00ED7: claims::txn::CAFSerConfig() (txn.hpp:467) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,051 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x783933F: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x783933F: StateTrackerImpl (ConnectionStateTracker.cpp:121) +==10647== by 0x783933F: activemq::state::ConnectionStateTracker::ConnectionStateTracker() (ConnectionStateTracker.cpp:166) +==10647== by 0x78D0F1B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:283) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,052 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78394C8: AbstractMap (AbstractMap.h:66) +==10647== by 0x78394C8: HashMap (HashMap.h:808) +==10647== by 0x78394C8: LinkedHashMap (LinkedHashMap.h:609) +==10647== by 0x78394C8: MessageCache (ConnectionStateTracker.cpp:61) +==10647== by 0x78394C8: StateTrackerImpl (ConnectionStateTracker.cpp:121) +==10647== by 0x78394C8: activemq::state::ConnectionStateTracker::ConnectionStateTracker() (ConnectionStateTracker.cpp:166) +==10647== by 0x78D0F1B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:283) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,053 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78397E2: AbstractMap (AbstractMap.h:66) +==10647== by 0x78397E2: HashMap (HashMap.h:808) +==10647== by 0x78397E2: LinkedHashMap (LinkedHashMap.h:609) +==10647== by 0x78397E2: MessagePullCache (ConnectionStateTracker.cpp:84) +==10647== by 0x78397E2: StateTrackerImpl (ConnectionStateTracker.cpp:121) +==10647== by 0x78397E2: activemq::state::ConnectionStateTracker::ConnectionStateTracker() (ConnectionStateTracker.cpp:166) +==10647== by 0x78D0F1B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:283) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,054 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78DF663: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,055 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78DF674: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,056 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78DF685: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,057 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78DEF68: decaf::util::StlMap, decaf::util::comparators::Less >::StlMap() (StlMap.h:632) +==10647== by 0x78DF699: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,058 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78E36F6: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x78E36F6: AbstractList (AbstractList.h:341) +==10647== by 0x78E36F6: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x78E36F6: LinkedList (LinkedList.h:91) +==10647== by 0x78E36F6: activemq::transport::failover::URIPool::URIPool() (URIPool.cpp:34) +==10647== by 0x78DF6AE: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,059 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78E36F6: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x78E36F6: AbstractList (AbstractList.h:341) +==10647== by 0x78E36F6: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x78E36F6: LinkedList (LinkedList.h:91) +==10647== by 0x78E36F6: activemq::transport::failover::URIPool::URIPool() (URIPool.cpp:34) +==10647== by 0x78DF6FE: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,060 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78E36F6: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x78E36F6: AbstractList (AbstractList.h:341) +==10647== by 0x78E36F6: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x78E36F6: LinkedList (LinkedList.h:91) +==10647== by 0x78E36F6: activemq::transport::failover::URIPool::URIPool() (URIPool.cpp:34) +==10647== by 0x78DF740: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,061 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78C615B: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x78C615B: AbstractQueue (AbstractQueue.h:51) +==10647== by 0x78C615B: BlockingQueue (BlockingQueue.h:164) +==10647== by 0x78C615B: LinkedBlockingQueue (LinkedBlockingQueue.h:160) +==10647== by 0x78C615B: activemq::transport::failover::CloseTransportsTask::CloseTransportsTask() (CloseTransportsTask.cpp:34) +==10647== by 0x78DF87E: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,062 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x788424C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x788424C: AbstractList (AbstractList.h:341) +==10647== by 0x788424C: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x788424C: LinkedList (LinkedList.h:91) +==10647== by 0x788424C: CompositeTaskRunnerImpl (CompositeTaskRunner.cpp:61) +==10647== by 0x788424C: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:69) +==10647== by 0x78DF8CE: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,063 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78842C7: CompositeTaskRunnerImpl (CompositeTaskRunner.cpp:61) +==10647== by 0x78842C7: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:69) +==10647== by 0x78DF8CE: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,064 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78B257C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x78B257C: AbstractList (AbstractList.h:341) +==10647== by 0x78B257C: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x78B257C: LinkedList (LinkedList.h:91) +==10647== by 0x78B257C: activemq::transport::failover::BackupTransportPool::BackupTransportPool(activemq::transport::failover::FailoverTransport*, decaf::lang::Pointer, decaf::lang::Pointer, decaf::lang::Pointer, decaf::lang::Pointer, decaf::lang::Pointer) (BackupTransportPool.cpp:61) +==10647== by 0x78DFBFF: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:166) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,065 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78A1796: AbstractMap (AbstractMap.h:66) +==10647== by 0x78A1796: HashMap (HashMap.h:808) +==10647== by 0x78A1796: CorrelatorData (ResponseCorrelator.cpp:95) +==10647== by 0x78A1796: activemq::transport::correlator::ResponseCorrelator::ResponseCorrelator(decaf::lang::Pointer) (ResponseCorrelator.cpp:102) +==10647== by 0x78E15F8: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:49) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,066 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78A1AA5: CorrelatorData (ResponseCorrelator.cpp:95) +==10647== by 0x78A1AA5: activemq::transport::correlator::ResponseCorrelator::ResponseCorrelator(decaf::lang::Pointer) (ResponseCorrelator.cpp:102) +==10647== by 0x78E15F8: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:49) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,067 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x7A5BF71: decaf::util::Properties::clone() const (Properties.cpp:276) +==10647== by 0x77430A3: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:342) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,068 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C38A: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,069 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C39E: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,070 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C3B2: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,071 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C3C6: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,072 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C415: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,073 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C42C: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,074 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C443: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,075 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C7C8: StlMap (StlMap.h:632) +==10647== by 0x773C7C8: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,076 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773C9A4: StlMap (StlMap.h:632) +==10647== by 0x773C9A4: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,077 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773CBB7: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x773CBB7: AbstractList (AbstractList.h:341) +==10647== by 0x773CBB7: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x773CBB7: LinkedList (LinkedList.h:91) +==10647== by 0x773CBB7: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,078 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773CD32: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x773CD32: AbstractList (AbstractList.h:341) +==10647== by 0x773CD32: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x773CD32: LinkedList (LinkedList.h:91) +==10647== by 0x773CD32: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,079 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773CE45: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x773CE45: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,080 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x779DCD5: activemq::core::ConnectionAuditImpl::ConnectionAuditImpl() (ConnectionAudit.cpp:56) +==10647== by 0x778D46D: activemq::core::ConnectionAudit::ConnectionAudit() (ConnectionAudit.cpp:62) +==10647== by 0x773CFBF: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,081 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x779DD30: StlMap (StlMap.h:632) +==10647== by 0x779DD30: activemq::core::ConnectionAuditImpl::ConnectionAuditImpl() (ConnectionAudit.cpp:56) +==10647== by 0x778D46D: activemq::core::ConnectionAudit::ConnectionAudit() (ConnectionAudit.cpp:62) +==10647== by 0x773CFBF: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,082 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x779DEAE: AbstractMap (AbstractMap.h:66) +==10647== by 0x779DEAE: HashMap (HashMap.h:826) +==10647== by 0x779DEAE: LinkedHashMap (LinkedHashMap.h:620) +==10647== by 0x779DEAE: activemq::core::ConnectionAuditImpl::ConnectionAuditImpl() (ConnectionAudit.cpp:56) +==10647== by 0x778D46D: activemq::core::ConnectionAudit::ConnectionAudit() (ConnectionAudit.cpp:62) +==10647== by 0x773CFBF: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:282) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,083 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x773D447: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x773D447: AbstractQueue (AbstractQueue.h:51) +==10647== by 0x773D447: BlockingQueue (BlockingQueue.h:164) +==10647== by 0x773D447: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (LinkedBlockingQueue.h:160) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,084 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A741EC: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7A741EC: AbstractList (AbstractList.h:341) +==10647== by 0x7A741EC: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x7A741EC: LinkedList (LinkedList.h:91) +==10647== by 0x7A741EC: decaf::util::concurrent::ExecutorKernel::ExecutorKernel(decaf::util::concurrent::ThreadPoolExecutor*, int, int, long long, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*, decaf::util::concurrent::RejectedExecutionHandler*) (ThreadPoolExecutor.cpp:373) +==10647== by 0x7A6B080: decaf::util::concurrent::ThreadPoolExecutor::ThreadPoolExecutor(int, int, long long, decaf::util::concurrent::TimeUnit const&, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*) (ThreadPoolExecutor.cpp:1435) +==10647== by 0x773D77D: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:300) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,085 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A742DC: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7A742DC: AbstractList (AbstractList.h:341) +==10647== by 0x7A742DC: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x7A742DC: LinkedList (LinkedList.h:91) +==10647== by 0x7A742DC: decaf::util::concurrent::ExecutorKernel::ExecutorKernel(decaf::util::concurrent::ThreadPoolExecutor*, int, int, long long, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*, decaf::util::concurrent::RejectedExecutionHandler*) (ThreadPoolExecutor.cpp:373) +==10647== by 0x7A6B080: decaf::util::concurrent::ThreadPoolExecutor::ThreadPoolExecutor(int, int, long long, decaf::util::concurrent::TimeUnit const&, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*) (ThreadPoolExecutor.cpp:1435) +==10647== by 0x773D77D: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:300) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,086 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79DD5E0: decaf::internal::util::concurrent::SynchronizableImpl::SynchronizableImpl() (SynchronizableImpl.cpp:26) +==10647== by 0x7A607F5: decaf::util::Timer::Timer() (Timer.cpp:49) +==10647== by 0x7A74384: decaf::util::concurrent::ExecutorKernel::ExecutorKernel(decaf::util::concurrent::ThreadPoolExecutor*, int, int, long long, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*, decaf::util::concurrent::RejectedExecutionHandler*) (ThreadPoolExecutor.cpp:373) +==10647== by 0x7A6B080: decaf::util::concurrent::ThreadPoolExecutor::ThreadPoolExecutor(int, int, long long, decaf::util::concurrent::TimeUnit const&, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*) (ThreadPoolExecutor.cpp:1435) +==10647== by 0x773D77D: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:300) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,087 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A62920: decaf::util::TimerTask::TimerTask() (TimerTask.cpp:27) +==10647== by 0x7A745DD: WorkerKiller (ThreadPoolExecutor.cpp:240) +==10647== by 0x7A745DD: decaf::util::concurrent::ExecutorKernel::ExecutorKernel(decaf::util::concurrent::ThreadPoolExecutor*, int, int, long long, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*, decaf::util::concurrent::RejectedExecutionHandler*) (ThreadPoolExecutor.cpp:386) +==10647== by 0x7A6B080: decaf::util::concurrent::ThreadPoolExecutor::ThreadPoolExecutor(int, int, long long, decaf::util::concurrent::TimeUnit const&, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*) (ThreadPoolExecutor.cpp:1435) +==10647== by 0x773D77D: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:300) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,088 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x791ADF8: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x791ADF8: AbstractList (AbstractList.h:341) +==10647== by 0x791ADF8: ArrayList (ArrayList.h:49) +==10647== by 0x791ADF8: activemq::util::ServiceSupport::ServiceSupport() (ServiceSupport.cpp:33) +==10647== by 0x788CD8F: activemq::threads::Scheduler::Scheduler(std::string const&) (Scheduler.cpp:41) +==10647== by 0x773D8B2: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:303) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,089 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x788CDA5: activemq::threads::Scheduler::Scheduler(std::string const&) (Scheduler.cpp:41) +==10647== by 0x773D8B2: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:303) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,090 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x788CE33: StlMap (StlMap.h:632) +==10647== by 0x788CE33: activemq::threads::Scheduler::Scheduler(std::string const&) (Scheduler.cpp:41) +==10647== by 0x773D8B2: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:303) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,091 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79DD5E0: decaf::internal::util::concurrent::SynchronizableImpl::SynchronizableImpl() (SynchronizableImpl.cpp:26) +==10647== by 0x7A608CB: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608CB: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x788DD97: activemq::threads::Scheduler::doStart() (Scheduler.cpp:130) +==10647== by 0x791B165: activemq::util::ServiceSupport::start() (ServiceSupport.cpp:56) +==10647== by 0x773D985: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:304) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,092 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79101C8: StlMap (StlMap.h:632) +==10647== by 0x79101C8: activemq::util::PrimitiveMap::PrimitiveMap() (PrimitiveMap.cpp:35) +==10647== by 0x76EE2BF: activemq::commands::WireFormatInfo::WireFormatInfo() (WireFormatInfo.cpp:36) +==10647== by 0x7934B9B: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:42) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,093 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5C5CA: StlMap (StlMap.h:632) +==10647== by 0x7A5C5CA: decaf::util::Properties::Properties(decaf::util::Properties const&) (Properties.cpp:45) +==10647== by 0x7932436: activemq::wireformat::openwire::OpenWireFormat::OpenWireFormat(decaf::util::Properties const&) (OpenWireFormat.cpp:60) +==10647== by 0x7935351: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:66) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,094 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79DD5E0: decaf::internal::util::concurrent::SynchronizableImpl::SynchronizableImpl() (SynchronizableImpl.cpp:26) +==10647== by 0x7A608CB: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608CB: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x78E63F2: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E63F2: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,095 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79DD5E0: decaf::internal::util::concurrent::SynchronizableImpl::SynchronizableImpl() (SynchronizableImpl.cpp:26) +==10647== by 0x7A608CB: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608CB: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x78E6440: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E6440: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,096 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78E65B7: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E65B7: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,097 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78E65C3: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E65C3: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,098 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F8A64: decaf::io::InputStream::InputStream() (InputStream.cpp:30) +==10647== by 0x79AE15F: decaf::internal::net::tcp::TcpSocketInputStream::TcpSocketInputStream(decaf::internal::net::tcp::TcpSocket*) (TcpSocketInputStream.cpp:37) +==10647== by 0x79AD087: decaf::internal::net::tcp::TcpSocket::getInputStream() (TcpSocket.cpp:221) +==10647== by 0x7A2FACF: decaf::net::Socket::getInputStream() (Socket.cpp:344) +==10647== by 0x78F2A93: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:187) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,099 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F9E95: decaf::io::OutputStream::OutputStream() (OutputStream.cpp:31) +==10647== by 0x79AECCE: decaf::internal::net::tcp::TcpSocketOutputStream::TcpSocketOutputStream(decaf::internal::net::tcp::TcpSocket*) (TcpSocketOutputStream.cpp:39) +==10647== by 0x79AD2E7: decaf::internal::net::tcp::TcpSocket::getOutputStream() (TcpSocket.cpp:245) +==10647== by 0x7A2FCAF: decaf::net::Socket::getOutputStream() (Socket.cpp:362) +==10647== by 0x78F2AA4: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:188) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,100 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F8A64: decaf::io::InputStream::InputStream() (InputStream.cpp:30) +==10647== by 0x79F6EEE: decaf::io::FilterInputStream::FilterInputStream(decaf::io::InputStream*, bool) (FilterInputStream.cpp:30) +==10647== by 0x79EF9C1: decaf::io::BufferedInputStream::BufferedInputStream(decaf::io::InputStream*, int, bool) (BufferedInputStream.cpp:37) +==10647== by 0x78F2B7B: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:204) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,101 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F9E95: decaf::io::OutputStream::OutputStream() (OutputStream.cpp:31) +==10647== by 0x79F7BF1: decaf::io::FilterOutputStream::FilterOutputStream(decaf::io::OutputStream*, bool) (FilterOutputStream.cpp:32) +==10647== by 0x79F0A56: decaf::io::BufferedOutputStream::BufferedOutputStream(decaf::io::OutputStream*, int, bool) (BufferedOutputStream.cpp:39) +==10647== by 0x78F2BF0: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:205) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,102 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F8A64: decaf::io::InputStream::InputStream() (InputStream.cpp:30) +==10647== by 0x79F6EEE: decaf::io::FilterInputStream::FilterInputStream(decaf::io::InputStream*, bool) (FilterInputStream.cpp:30) +==10647== by 0x79F3C2D: decaf::io::DataInputStream::DataInputStream(decaf::io::InputStream*, bool) (DataInputStream.cpp:38) +==10647== by 0x78F2C76: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:211) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,103 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79F9E95: decaf::io::OutputStream::OutputStream() (OutputStream.cpp:31) +==10647== by 0x79F7BF1: decaf::io::FilterOutputStream::FilterOutputStream(decaf::io::OutputStream*, bool) (FilterOutputStream.cpp:32) +==10647== by 0x79F5E8B: decaf::io::DataOutputStream::DataOutputStream(decaf::io::OutputStream*, bool) (DataOutputStream.cpp:31) +==10647== by 0x78F2CC3: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:212) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,104 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7913B86: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7913B86: ConstStlMapKeySet (StlMap.h:503) +==10647== by 0x7913B86: decaf::util::StlMap >::keySet() const (StlMap.h:866) +==10647== by 0x793F07C: activemq::wireformat::openwire::marshal::PrimitiveTypesMarshaller::marshalPrimitiveMap(decaf::io::DataOutputStream&, decaf::util::Map const&) (PrimitiveTypesMarshaller.cpp:192) +==10647== by 0x793F4A1: activemq::wireformat::openwire::marshal::PrimitiveTypesMarshaller::marshal(activemq::util::PrimitiveMap const*, std::vector >&) (PrimitiveTypesMarshaller.cpp:52) +==10647== by 0x76EF134: activemq::commands::WireFormatInfo::beforeMarshal(activemq::wireformat::WireFormat*) (WireFormatInfo.cpp:316) +==10647== by 0x797EE6D: activemq::wireformat::openwire::marshal::generated::WireFormatInfoMarshaller::looseMarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataOutputStream*) (WireFormatInfoMarshaller.cpp:143) +==10647== by 0x793298E: activemq::wireformat::openwire::OpenWireFormat::marshal(decaf::lang::Pointer, activemq::transport::Transport const*, decaf::io::DataOutputStream*) (OpenWireFormat.cpp:185) +==10647== by 0x7895C10: activemq::transport::IOTransport::oneway(decaf::lang::Pointer) (IOTransport.cpp:146) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,105 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x79101C8: StlMap (StlMap.h:632) +==10647== by 0x79101C8: activemq::util::PrimitiveMap::PrimitiveMap() (PrimitiveMap.cpp:35) +==10647== by 0x76EE2BF: activemq::commands::WireFormatInfo::WireFormatInfo() (WireFormatInfo.cpp:36) +==10647== by 0x797E53A: activemq::wireformat::openwire::marshal::generated::WireFormatInfoMarshaller::createObject() const (WireFormatInfoMarshaller.cpp:45) +==10647== by 0x7932F30: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:290) +==10647== by 0x79332F5: activemq::wireformat::openwire::OpenWireFormat::unmarshal(activemq::transport::Transport const*, decaf::io::DataInputStream*) (OpenWireFormat.cpp:230) +==10647== by 0x7896CC0: activemq::transport::IOTransport::run() (IOTransport.cpp:271) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,106 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x788424C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x788424C: AbstractList (AbstractList.h:341) +==10647== by 0x788424C: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x788424C: LinkedList (LinkedList.h:91) +==10647== by 0x788424C: CompositeTaskRunnerImpl (CompositeTaskRunner.cpp:61) +==10647== by 0x788424C: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:69) +==10647== by 0x78E6B54: activemq::transport::inactivity::InactivityMonitor::startMonitorThreads() (InactivityMonitor.cpp:439) +==10647== by 0x78E88E8: activemq::transport::inactivity::InactivityMonitor::onCommand(decaf::lang::Pointer) (InactivityMonitor.cpp:325) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x7895A8B: activemq::transport::IOTransport::fire(decaf::lang::Pointer) (IOTransport.cpp:115) +==10647== by 0x7896D10: activemq::transport::IOTransport::run() (IOTransport.cpp:274) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,107 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78842C7: CompositeTaskRunnerImpl (CompositeTaskRunner.cpp:61) +==10647== by 0x78842C7: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:69) +==10647== by 0x78E6B54: activemq::transport::inactivity::InactivityMonitor::startMonitorThreads() (InactivityMonitor.cpp:439) +==10647== by 0x78E88E8: activemq::transport::inactivity::InactivityMonitor::onCommand(decaf::lang::Pointer) (InactivityMonitor.cpp:325) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x7895A8B: activemq::transport::IOTransport::fire(decaf::lang::Pointer) (IOTransport.cpp:115) +==10647== by 0x7896D10: activemq::transport::IOTransport::run() (IOTransport.cpp:274) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,108 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A62920: decaf::util::TimerTask::TimerTask() (TimerTask.cpp:27) +==10647== by 0x78E989E: activemq::transport::inactivity::WriteChecker::WriteChecker(activemq::transport::inactivity::InactivityMonitor*) (WriteChecker.cpp:34) +==10647== by 0x78E6DFE: activemq::transport::inactivity::InactivityMonitor::startMonitorThreads() (InactivityMonitor.cpp:456) +==10647== by 0x78E88E8: activemq::transport::inactivity::InactivityMonitor::onCommand(decaf::lang::Pointer) (InactivityMonitor.cpp:325) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x7895A8B: activemq::transport::IOTransport::fire(decaf::lang::Pointer) (IOTransport.cpp:115) +==10647== by 0x7896D10: activemq::transport::IOTransport::run() (IOTransport.cpp:274) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,109 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A62920: decaf::util::TimerTask::TimerTask() (TimerTask.cpp:27) +==10647== by 0x78E976E: activemq::transport::inactivity::ReadChecker::ReadChecker(activemq::transport::inactivity::InactivityMonitor*) (ReadChecker.cpp:34) +==10647== by 0x78E6E73: activemq::transport::inactivity::InactivityMonitor::startMonitorThreads() (InactivityMonitor.cpp:457) +==10647== by 0x78E88E8: activemq::transport::inactivity::InactivityMonitor::onCommand(decaf::lang::Pointer) (InactivityMonitor.cpp:325) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x7895A8B: activemq::transport::IOTransport::fire(decaf::lang::Pointer) (IOTransport.cpp:115) +==10647== by 0x7896D10: activemq::transport::IOTransport::run() (IOTransport.cpp:274) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,110 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7811B8D: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x7811B8D: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:32) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== by 0x76FAFA2: activemq::core::ActiveMQConnection::syncRequest(decaf::lang::Pointer, unsigned int) (ActiveMQConnection.cpp:1276) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,111 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7811D65: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x7811D65: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:32) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== by 0x76FAFA2: activemq::core::ActiveMQConnection::syncRequest(decaf::lang::Pointer, unsigned int) (ActiveMQConnection.cpp:1276) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,112 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7825158: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7825158: decaf::util::AbstractList >::AbstractList() (AbstractList.h:341) +==10647== by 0x7811F49: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x7811F49: LinkedList (LinkedList.h:91) +==10647== by 0x7811F49: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:32) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,113 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x78120C9: StlMap (StlMap.h:632) +==10647== by 0x78120C9: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:32) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== by 0x76FAFA2: activemq::core::ActiveMQConnection::syncRequest(decaf::lang::Pointer, unsigned int) (ActiveMQConnection.cpp:1276) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,114 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x786C30B: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x786C30B: activemq::state::SessionState::SessionState(decaf::lang::Pointer) (SessionState.cpp:32) +==10647== by 0x78123EA: addSession (ConnectionState.h:111) +==10647== by 0x78123EA: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:39) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,115 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB18411: assign (basic_string.h:1131) +==10647== by 0xB18411: operator= (basic_string.h:555) +==10647== by 0xB18411: AstExprUnary::SemanticAnalisys(SemanticContext*) (ast_expr_node.cpp:172) +==10647== by 0xB0EB4E: AstSelectExpr::SemanticAnalisys(SemanticContext*) (ast_select_stmt.cpp:183) +==10647== by 0xB0B475: AstSelectList::SemanticAnalisys(SemanticContext*) (ast_select_stmt.cpp:119) +==10647== by 0xB0E173: AstSelectStmt::SemanticAnalisys(SemanticContext*) (ast_select_stmt.cpp:1538) +==10647== by 0xAEA3C0: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:184) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 33 bytes in 1 blocks are possibly lost in loss record 1,116 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xAD117F: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:185) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,120 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x6B01D98: dont_pass0toDEFINE_string (gflags.h:530) +==10647== by 0x6B01D98: __static_initialization_and_destruction_0 (logging.cc:147) +==10647== by 0x6B01D98: _GLOBAL__sub_I_logging.cc (logging.cc:2083) +==10647== by 0x400F4E2: _dl_init (in /usr/lib64/ld-2.17.so) +==10647== by 0x4001459: ??? (in /usr/lib64/ld-2.17.so) +==10647== by 0x2: ??? +==10647== by 0xFFEFFFDE2: ??? +==10647== by 0xFFEFFFDF1: ??? +==10647== by 0xFFEFFFDF4: ??? +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,121 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D50D3: Config::getString(std::string, std::string) (Config.cpp:210) +==10647== by 0x9D418B: Config::initialize() (Config.cpp:174) +==10647== by 0x9D360E: Config::Config() (Config.cpp:118) +==10647== by 0x9D35A2: Config::getInstance() (Config.cpp:113) +==10647== by 0x97B558: main (Server.cpp:83) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,122 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D79C5: Environment::readConfigFile() (Environment.cpp:199) +==10647== by 0x9D6EB3: Environment::Environment(bool) (Environment.cpp:75) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,123 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA2F23C: claims::BaseNode::ReadMasterAddr() (base_node.cpp:69) +==10647== by 0xA3033E: claims::MasterNode::MasterNode() (master_node.cpp:103) +==10647== by 0xA303B4: claims::MasterNode::GetInstance() (master_node.cpp:95) +==10647== by 0x9D8238: Environment::InitMembership() (Environment.cpp:255) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,124 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB76C3D: assign (basic_string.h:1131) +==10647== by 0xB76C3D: operator= (basic_string.h:555) +==10647== by 0xB76C3D: claims::loader::SlaveLoader::EstablishListeningSocket() (slave_loader.cpp:176) +==10647== by 0xB7B0B9: claims::loader::SlaveLoader::ConnectWithMaster() (slave_loader.cpp:108) +==10647== by 0xB7B4CF: claims::loader::SlaveLoader::StartSlaveLoader(void*) (slave_loader.cpp:561) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,125 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA2F0BC: claims::BaseNode::ReadNodeAddr() (base_node.cpp:60) +==10647== by 0xA2F4F7: claims::BaseNode::BaseNode() (base_node.cpp:46) +==10647== by 0xA354DD: claims::SlaveNode::SlaveNode() (slave_node.cpp:153) +==10647== by 0xA35554: claims::SlaveNode::GetInstance() (slave_node.cpp:129) +==10647== by 0x9D8252: Environment::InitMembership() (Environment.cpp:258) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,126 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA2F23C: claims::BaseNode::ReadMasterAddr() (base_node.cpp:69) +==10647== by 0xA2F4FF: claims::BaseNode::BaseNode() (base_node.cpp:47) +==10647== by 0xA354DD: claims::SlaveNode::SlaveNode() (slave_node.cpp:153) +==10647== by 0xA35554: claims::SlaveNode::GetInstance() (slave_node.cpp:129) +==10647== by 0x9D8252: Environment::InitMembership() (Environment.cpp:258) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,127 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76F02A5: activemq::commands::WireFormatInfo::setCacheSize(int) (WireFormatInfo.cpp:390) +==10647== by 0x7934EDE: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:53) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,128 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x793DE84: _M_replace_dispatch<__gnu_cxx::__normal_iterator > > (basic_string.tcc:662) +==10647== by 0x793DE84: replace<__gnu_cxx::__normal_iterator > > (basic_string.h:1630) +==10647== by 0x793DE84: insert<__gnu_cxx::__normal_iterator > > (basic_string.h:1203) +==10647== by 0x793DE84: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::readAsciiString(decaf::io::DataInputStream*) (BaseDataStreamMarshaller.cpp:704) +==10647== by 0x7939930: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalString(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:157) +==10647== by 0x7949A88: activemq::wireformat::openwire::marshal::generated::BrokerInfoMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BrokerInfoMarshaller.cpp:79) +==10647== by 0x7932F6A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:295) +==10647== by 0x79332F5: activemq::wireformat::openwire::OpenWireFormat::unmarshal(activemq::transport::Transport const*, decaf::io::DataInputStream*) (OpenWireFormat.cpp:230) +==10647== by 0x7896CC0: activemq::transport::IOTransport::run() (IOTransport.cpp:271) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,129 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x786C4F6: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x786C4F6: activemq::state::SessionState::SessionState(decaf::lang::Pointer) (SessionState.cpp:32) +==10647== by 0x78123EA: addSession (ConnectionState.h:111) +==10647== by 0x78123EA: activemq::state::ConnectionState::ConnectionState(decaf::lang::Pointer) (ConnectionState.cpp:39) +==10647== by 0x7845AC5: activemq::state::ConnectionStateTracker::processConnectionInfo(activemq::commands::ConnectionInfo*) (ConnectionStateTracker.cpp:600) +==10647== by 0x76C51F2: activemq::commands::ConnectionInfo::visit(activemq::state::CommandVisitor*) (ConnectionInfo.cpp:355) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A304A: activemq::transport::correlator::ResponseCorrelator::request(decaf::lang::Pointer) (ResponseCorrelator.cpp:218) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,130 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x764582C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x764582C: AbstractList (AbstractList.h:341) +==10647== by 0x764582C: ArrayList (ArrayList.h:49) +==10647== by 0x764582C: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x76BD6A8: activemq::commands::ActiveMQTopic::ActiveMQTopic(std::string const&) (ActiveMQTopic.cpp:31) +==10647== by 0x78FC0B0: activemq::util::AdvisorySupport::getTempDestinationCompositeAdvisoryTopic() (AdvisorySupport.cpp:83) +==10647== by 0x778BB74: activemq::core::AdvisoryConsumer::AdvisoryConsumer(activemq::core::ActiveMQConnection*, decaf::lang::Pointer) (AdvisoryConsumer.cpp:68) +==10647== by 0x76FEAA0: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1364) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,131 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x76BD6A8: activemq::commands::ActiveMQTopic::ActiveMQTopic(std::string const&) (ActiveMQTopic.cpp:31) +==10647== by 0x78FC0B0: activemq::util::AdvisorySupport::getTempDestinationCompositeAdvisoryTopic() (AdvisorySupport.cpp:83) +==10647== by 0x778BB74: activemq::core::AdvisoryConsumer::AdvisoryConsumer(activemq::core::ActiveMQConnection*, decaf::lang::Pointer) (AdvisoryConsumer.cpp:68) +==10647== by 0x76FEAA0: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1364) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,132 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F4E1B: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x77F4E1B: AbstractList (AbstractList.h:341) +==10647== by 0x77F4E1B: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x77F4E1B: LinkedList (LinkedList.h:91) +==10647== by 0x77F4E1B: SessionConfig (ActiveMQSessionKernel.cpp:110) +==10647== by 0x77F4E1B: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:196) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,133 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F4FD6: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x77F4FD6: AbstractList (AbstractList.h:341) +==10647== by 0x77F4FD6: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x77F4FD6: LinkedList (LinkedList.h:91) +==10647== by 0x77F4FD6: SessionConfig (ActiveMQSessionKernel.cpp:110) +==10647== by 0x77F4FD6: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:196) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,134 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F51D9: SessionConfig (ActiveMQSessionKernel.cpp:110) +==10647== by 0x77F51D9: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:196) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,135 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F52BD: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:206) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,136 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F52D1: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:206) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,137 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77F52E5: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:206) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,138 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x786C30B: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x786C30B: activemq::state::SessionState::SessionState(decaf::lang::Pointer) (SessionState.cpp:32) +==10647== by 0x786AE00: activemq::state::ConnectionState::addSession(decaf::lang::Pointer) (ConnectionState.h:111) +==10647== by 0x783D5B5: activemq::state::ConnectionStateTracker::processSessionInfo(activemq::commands::SessionInfo*) (ConnectionStateTracker.cpp:561) +==10647== by 0x76EA482: activemq::commands::SessionInfo::visit(activemq::state::CommandVisitor*) (SessionInfo.cpp:151) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A1F9B: activemq::transport::correlator::ResponseCorrelator::oneway(decaf::lang::Pointer) (ResponseCorrelator.cpp:127) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,139 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x786C4F6: ConcurrentStlMap (ConcurrentStlMap.h:687) +==10647== by 0x786C4F6: activemq::state::SessionState::SessionState(decaf::lang::Pointer) (SessionState.cpp:32) +==10647== by 0x786AE00: activemq::state::ConnectionState::addSession(decaf::lang::Pointer) (ConnectionState.h:111) +==10647== by 0x783D5B5: activemq::state::ConnectionStateTracker::processSessionInfo(activemq::commands::SessionInfo*) (ConnectionStateTracker.cpp:561) +==10647== by 0x76EA482: activemq::commands::SessionInfo::visit(activemq::state::CommandVisitor*) (SessionInfo.cpp:151) +==10647== by 0x7839E72: activemq::state::ConnectionStateTracker::track(decaf::lang::Pointer) (ConnectionStateTracker.cpp:191) +==10647== by 0x78D20D2: activemq::transport::failover::FailoverTransport::oneway(decaf::lang::Pointer) (FailoverTransport.cpp:470) +==10647== by 0x78A1F9B: activemq::transport::correlator::ResponseCorrelator::oneway(decaf::lang::Pointer) (ResponseCorrelator.cpp:127) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,140 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7780F64: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7780F64: StlSet (StlSet.h:136) +==10647== by 0x7780F64: activemq::core::ActiveMQTransactionContext::ActiveMQTransactionContext(activemq::core::kernels::ActiveMQSessionKernel*, decaf::util::Properties const&) (ActiveMQTransactionContext.cpp:108) +==10647== by 0x77F5476: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:231) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,141 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77A033A: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x77A033A: AbstractList (AbstractList.h:341) +==10647== by 0x77A033A: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x77A033A: LinkedList (LinkedList.h:91) +==10647== by 0x77A033A: activemq::core::FifoMessageDispatchChannel::FifoMessageDispatchChannel() (FifoMessageDispatchChannel.cpp:31) +==10647== by 0x777F4A4: activemq::core::ActiveMQSessionExecutor::ActiveMQSessionExecutor(activemq::core::kernels::ActiveMQSessionKernel*) (ActiveMQSessionExecutor.cpp:46) +==10647== by 0x77F54DB: activemq::core::kernels::ActiveMQSessionKernel::ActiveMQSessionKernel(activemq::core::ActiveMQConnection*, decaf::lang::Pointer const&, cms::Session::AcknowledgeMode, decaf::util::Properties const&) (ActiveMQSessionKernel.cpp:234) +==10647== by 0x76FEFA9: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:562) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,142 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x764582C: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x764582C: AbstractList (AbstractList.h:341) +==10647== by 0x764582C: ArrayList (ArrayList.h:49) +==10647== by 0x764582C: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,143 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,144 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x76454E8: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x76454E8: AbstractList (AbstractList.h:341) +==10647== by 0x76454E8: ArrayList (ArrayList.h:49) +==10647== by 0x76454E8: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7683FED: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:42) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,145 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x7645672: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7683FED: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:42) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,146 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A1E846: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x7A1E846: StlMapEntrySet (StlMap.h:355) +==10647== by 0x7A1E846: decaf::util::StlMap >::entrySet() (StlMap.h:846) +==10647== by 0x7A5D385: decaf::util::Properties::toArray() const (Properties.cpp:244) +==10647== by 0x78F8CAC: activemq::util::ActiveMQProperties::toArray() const (ActiveMQProperties.h:93) +==10647== by 0x78F8996: activemq::util::ActiveMQProperties::copy(cms::CMSProperties const*) (ActiveMQProperties.cpp:42) +==10647== by 0x7644DC4: activemq::commands::ActiveMQDestination::copyDataStructure(activemq::commands::DataStructure const*) (ActiveMQDestination.cpp:128) +==10647== by 0x7683FF9: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:43) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,147 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77C2AB9: activemq::core::kernels::ActiveMQConsumerKernel::ActiveMQConsumerKernel(activemq::core::kernels::ActiveMQSessionKernel*, decaf::lang::Pointer const&, decaf::lang::Pointer const&, std::string const&, std::string const&, int, int, bool, bool, bool, cms::MessageListener*) (ActiveMQConsumerKernel.cpp:170) +==10647== by 0x77EE856: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:591) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,148 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77D0AE8: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x77D0AE8: decaf::util::AbstractList >::AbstractList() (AbstractList.h:341) +==10647== by 0x77C2B88: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x77C2B88: LinkedList (LinkedList.h:91) +==10647== by 0x77C2B88: activemq::core::kernels::ActiveMQConsumerKernel::ActiveMQConsumerKernel(activemq::core::kernels::ActiveMQSessionKernel*, decaf::lang::Pointer const&, decaf::lang::Pointer const&, std::string const&, std::string const&, int, int, bool, bool, bool, cms::MessageListener*) (ActiveMQConsumerKernel.cpp:170) +==10647== by 0x77EE856: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:591) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,149 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x77A033A: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x77A033A: AbstractList (AbstractList.h:341) +==10647== by 0x77A033A: AbstractSequentialList (AbstractSequentialList.h:59) +==10647== by 0x77A033A: LinkedList (LinkedList.h:91) +==10647== by 0x77A033A: activemq::core::FifoMessageDispatchChannel::FifoMessageDispatchChannel() (FifoMessageDispatchChannel.cpp:31) +==10647== by 0x77C336B: activemq::core::kernels::ActiveMQConsumerKernel::ActiveMQConsumerKernel(activemq::core::kernels::ActiveMQSessionKernel*, decaf::lang::Pointer const&, decaf::lang::Pointer const&, std::string const&, std::string const&, int, int, bool, bool, bool, cms::MessageListener*) (ActiveMQConsumerKernel.cpp:786) +==10647== by 0x77EE856: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:591) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,150 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7A5BBE1: StlMap (StlMap.h:632) +==10647== by 0x7A5BBE1: decaf::util::Properties::Properties() (Properties.cpp:45) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x7645672: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7944C2A: activemq::wireformat::openwire::marshal::generated::ActiveMQQueueMarshaller::createObject() const (ActiveMQQueueMarshaller.cpp:45) +==10647== by 0x7934081: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:400) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,151 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x76454E8: AbstractCollection (AbstractCollection.h:65) +==10647== by 0x76454E8: AbstractList (AbstractList.h:341) +==10647== by 0x76454E8: ArrayList (ArrayList.h:49) +==10647== by 0x76454E8: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7944C2A: activemq::wireformat::openwire::marshal::generated::ActiveMQQueueMarshaller::createObject() const (ActiveMQQueueMarshaller.cpp:45) +==10647== by 0x7934081: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:400) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== by 0x796B014: activemq::wireformat::openwire::marshal::generated::MessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageMarshaller.cpp:58) +==10647== by 0x7947302: activemq::wireformat::openwire::marshal::generated::ActiveMQTextMessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQTextMessageMarshaller.cpp:58) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,152 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x788C3E5: activemq::threads::DedicatedTaskRunner::DedicatedTaskRunner(activemq::threads::Task*) (DedicatedTaskRunner.cpp:31) +==10647== by 0x777FBD3: activemq::core::ActiveMQSessionExecutor::wakeup() (ActiveMQSessionExecutor.cpp:113) +==10647== by 0x7702FC3: activemq::core::ActiveMQConnection::onCommand(decaf::lang::Pointer) (ActiveMQConnection.cpp:1077) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x78A3E48: activemq::transport::correlator::ResponseCorrelator::onCommand(decaf::lang::Pointer) (ResponseCorrelator.cpp:294) +==10647== by 0x78E3427: activemq::transport::failover::FailoverTransportListener::onCommand(decaf::lang::Pointer) (FailoverTransportListener.cpp:67) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,153 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7757470: MessageAuditImpl (ActiveMQMessageAudit.cpp:73) +==10647== by 0x7757470: activemq::core::ActiveMQMessageAudit::ActiveMQMessageAudit(int, int) (ActiveMQMessageAudit.cpp:100) +==10647== by 0x778DBC4: activemq::core::ConnectionAudit::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ConnectionAudit.cpp:105) +==10647== by 0x76F3698: activemq::core::ActiveMQConnection::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ActiveMQConnection.cpp:1923) +==10647== by 0x77C10CC: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1627) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== +==10647== 34 bytes in 1 blocks are possibly lost in loss record 1,154 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A677B7: decaf::util::concurrent::Mutex::Mutex() (Mutex.cpp:49) +==10647== by 0x7762600: AbstractMap (AbstractMap.h:66) +==10647== by 0x7762600: decaf::util::HashMap, decaf::util::HashCode >::HashMap(int, float) (HashMap.h:851) +==10647== by 0x7757483: LinkedHashMap (LinkedHashMap.h:657) +==10647== by 0x7757483: LRUCache (LRUCache.h:54) +==10647== by 0x7757483: MessageAuditImpl (ActiveMQMessageAudit.cpp:73) +==10647== by 0x7757483: activemq::core::ActiveMQMessageAudit::ActiveMQMessageAudit(int, int) (ActiveMQMessageAudit.cpp:100) +==10647== by 0x778DBC4: activemq::core::ConnectionAudit::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ConnectionAudit.cpp:105) +==10647== by 0x76F3698: activemq::core::ActiveMQConnection::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ActiveMQConnection.cpp:1923) +==10647== by 0x77C10CC: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1627) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,159 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBDE288: assign (basic_string.h:1131) +==10647== by 0xBDE288: operator= (basic_string.h:555) +==10647== by 0xBDE288: claims::common::Logging::Logging(char*) (logging.cpp:47) +==10647== by 0x97B57F: main (Server.cpp:86) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,160 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F6EE1: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F44A7: std::unique_ptr > caf::detail::new_member_tinfo(std::string NodeAddress::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1747: _ZN3caf6detail25default_uniform_type_infoI11NodeAddressE9push_backISsS2_IRKMS2_SsEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EDE03: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, std::string NodeAddress::* const&, std::string NodeAddress::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9A4F: _ZN3caf8announceI11NodeAddressIMS1_SsS2_EEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7A6A: Environment::AnnounceCafMessage() (Environment.cpp:203) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,161 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F6EE1: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F44A7: std::unique_ptr > caf::detail::new_member_tinfo(std::string NodeAddress::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F44FF: _ZN3caf6detail25default_uniform_type_infoI11NodeAddressE9push_backISsS2_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1788: _ZN3caf6detail25default_uniform_type_infoI11NodeAddressE9push_backISsS2_IRKMS2_SsEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EDE03: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, std::string NodeAddress::* const&, std::string NodeAddress::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9A4F: _ZN3caf8announceI11NodeAddressIMS1_SsS2_EEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7A6A: Environment::AnnounceCafMessage() (Environment.cpp:203) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,162 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7047: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F4593: std::unique_ptr > caf::detail::new_member_tinfo(unsigned int ProjectionID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1837: _ZN3caf6detail25default_uniform_type_infoI12ProjectionIDE9push_backIjS2_IRKMS2_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EDF91: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned int ProjectionID::* const&, int ProjectionID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9B48: _ZN3caf8announceI12ProjectionIDIMS1_jMS1_iEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7AEA: Environment::AnnounceCafMessage() (Environment.cpp:205) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,163 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F9A0F: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F7111: std::unique_ptr > caf::detail::new_member_tinfo(int ProjectionID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F45EB: _ZN3caf6detail25default_uniform_type_infoI12ProjectionIDE9push_backIiS2_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1878: _ZN3caf6detail25default_uniform_type_infoI12ProjectionIDE9push_backIjS2_IRKMS2_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EDF91: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned int ProjectionID::* const&, int ProjectionID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9B48: _ZN3caf8announceI12ProjectionIDIMS1_jMS1_iEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7AEA: Environment::AnnounceCafMessage() (Environment.cpp:205) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,164 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F71AB: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F467F: std::unique_ptr > caf::detail::new_member_tinfo(ProjectionID PartitionID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1927: _ZN3caf6detail25default_uniform_type_infoI11PartitionIDE9push_backI12ProjectionIDS2_IRKMS2_jEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE11F: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, ProjectionID PartitionID::* const&, unsigned int PartitionID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9C41: _ZN3caf8announceI11PartitionIDIMS1_12ProjectionIDMS1_jEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7B6A: Environment::AnnounceCafMessage() (Environment.cpp:207) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,165 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F9AF3: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F7275: std::unique_ptr > caf::detail::new_member_tinfo(unsigned int PartitionID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F46D7: _ZN3caf6detail25default_uniform_type_infoI11PartitionIDE9push_backIjS2_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1968: _ZN3caf6detail25default_uniform_type_infoI11PartitionIDE9push_backI12ProjectionIDS2_IRKMS2_jEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE11F: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, ProjectionID PartitionID::* const&, unsigned int PartitionID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9C41: _ZN3caf8announceI11PartitionIDIMS1_12ProjectionIDMS1_jEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7B6A: Environment::AnnounceCafMessage() (Environment.cpp:207) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,166 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7C01: Environment::AnnounceCafMessage() (Environment.cpp:212) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,167 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7387: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F476B: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1A2B: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE324: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9D6E: caf::uniform_type_info const* caf::announce(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (announce.hpp:119) +==10647== by 0x9D7C4A: Environment::AnnounceCafMessage() (Environment.cpp:212) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,168 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7387: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F476B: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F47D9: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1AC1: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE324: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9D6E: caf::uniform_type_info const* caf::announce(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (announce.hpp:119) +==10647== by 0x9D7C4A: Environment::AnnounceCafMessage() (Environment.cpp:212) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,169 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7387: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F476B: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F7447: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F485C: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F1AC1: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE324: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9D6E: caf::uniform_type_info const* caf::announce(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (announce.hpp:119) +==10647== by 0x9D7C4A: Environment::AnnounceCafMessage() (Environment.cpp:212) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,170 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7387: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F476B: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F9C11: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F74BB: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F485C: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F1AC1: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE324: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9D6E: caf::uniform_type_info const* caf::announce(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (announce.hpp:119) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,171 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7387: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F476B: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9FB901: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F9C73: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F74BB: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F485C: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F1AC1: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE324: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, unsigned long claims::loader::LoadPacket::* const&, void* claims::loader::LoadPacket::* const&, int claims::loader::LoadPacket::* const&) (default_uniform_type_info.hpp:533) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,172 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9FEBF7: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9FD072: std::unique_ptr > caf::detail::new_member_tinfo(void* claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9FC14D: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backIPvS4_IRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9FB954: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F9C73: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F74BB: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F485C: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F1AC1: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,173 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA0006F: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9FECC1: std::unique_ptr > caf::detail::new_member_tinfo(int claims::loader::LoadPacket::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9FD0CB: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backIiS4_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9FC18E: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backIPvS4_IRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9FB954: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F9C73: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mRKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F74BB: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F485C: _ZN3caf6detail25default_uniform_type_infoIN6claims6loader10LoadPacketEE9push_backImS4_IRKMS4_mS9_S9_RKMS4_PvRKMS4_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,174 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F75B7: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F48C7: std::unique_ptr > caf::detail::new_member_tinfo(int StorageBudgetMessage::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1B7D: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IRKMS2_iS7_EEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE4C2: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9E72: _ZN3caf8announceI20StorageBudgetMessageIMS1_iS2_S2_EEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7CD9: Environment::AnnounceCafMessage() (Environment.cpp:215) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,175 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F75B7: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F48C7: std::unique_ptr > caf::detail::new_member_tinfo(int StorageBudgetMessage::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F4923: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IRKMS2_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1BD0: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IRKMS2_iS7_EEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE4C2: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9E72: _ZN3caf8announceI20StorageBudgetMessageIMS1_iS2_S2_EEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7CD9: Environment::AnnounceCafMessage() (Environment.cpp:215) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,176 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F75B7: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F48C7: std::unique_ptr > caf::detail::new_member_tinfo(int StorageBudgetMessage::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F7663: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F4964: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IRKMS2_iEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9F1BD0: _ZN3caf6detail25default_uniform_type_infoI20StorageBudgetMessageE9push_backIiS2_IRKMS2_iS7_EEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE4C2: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&, int StorageBudgetMessage::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9E72: _ZN3caf8announceI20StorageBudgetMessageIMS1_iS2_S2_EEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7CD9: Environment::AnnounceCafMessage() (Environment.cpp:215) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,177 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7E18: Environment::AnnounceCafMessage() (Environment.cpp:221) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,178 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F7711: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F49C9: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long long ExchangeID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1C7F: _ZN3caf6detail25default_uniform_type_infoI10ExchangeIDE9push_backIyS2_IRKMS2_jEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE653: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long long ExchangeID::* const&, unsigned int ExchangeID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9F6B: _ZN3caf8announceI10ExchangeIDIMS1_yMS1_jEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7E2F: Environment::AnnounceCafMessage() (Environment.cpp:221) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,179 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F9D63: caf::detail::member_tinfo, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy) (default_uniform_type_info.hpp:282) +==10647== by 0x9F77DB: std::unique_ptr > caf::detail::new_member_tinfo(unsigned int ExchangeID::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F4A21: _ZN3caf6detail25default_uniform_type_infoI10ExchangeIDE9push_backIjS2_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1CC0: _ZN3caf6detail25default_uniform_type_infoI10ExchangeIDE9push_backIyS2_IRKMS2_jEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE653: caf::detail::default_uniform_type_info::default_uniform_type_info(std::string, unsigned long long ExchangeID::* const&, unsigned int ExchangeID::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9E9F6B: _ZN3caf8announceI10ExchangeIDIMS1_yMS1_jEEEPKNS_17uniform_type_infoESsDpRKT0_ (announce.hpp:119) +==10647== by 0x9D7E2F: Environment::AnnounceCafMessage() (Environment.cpp:221) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,180 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F78ED: caf::detail::member_tinfo, std::hash, std::equal_to, std::allocator > > >, caf::detail::memptr_access_policy, std::hash, std::equal_to, std::allocator > > >, claims::BaseNode>, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy, std::hash, std::equal_to, std::allocator > > >, claims::BaseNode>) (default_uniform_type_info.hpp:282) +==10647== by 0x9F4AB5: std::unique_ptr > caf::detail::new_member_tinfo, std::hash, std::equal_to, std::allocator > > >, claims::BaseNode>(std::unordered_map, std::hash, std::equal_to, std::allocator > > > claims::BaseNode::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1D6B: _ZN3caf6detail25default_uniform_type_infoIN6claims8BaseNodeEE9push_backISt13unordered_mapIiSt4pairISstESt4hashIiESt8equal_toIiESaIS7_IKiS8_EEES3_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE7BD: caf::detail::default_uniform_type_info::default_uniform_type_info, std::hash, std::equal_to, std::allocator > > > claims::BaseNode::* const&>(std::string, std::unordered_map, std::hash, std::equal_to, std::allocator > > > claims::BaseNode::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9EA059: caf::uniform_type_info const* caf::announce, std::hash, std::equal_to, std::allocator > > > claims::BaseNode::*>(std::string, std::unordered_map, std::hash, std::equal_to, std::allocator > > > claims::BaseNode::* const&) (announce.hpp:119) +==10647== by 0x9D7E85: Environment::AnnounceCafMessage() (Environment.cpp:222) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,181 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F79D1: caf::detail::member_tinfo >, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy >) (default_uniform_type_info.hpp:282) +==10647== by 0x9F4B35: std::unique_ptr > caf::detail::new_member_tinfo >(unsigned long std::pair::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F1E49: _ZN3caf6detail25default_uniform_type_infoISt4pairImmEE9push_backImS3_IRKMS3_mEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9EE93D: caf::detail::default_uniform_type_info >::default_uniform_type_info::* const&, unsigned long std::pair::* const&>(std::string, unsigned long std::pair::* const&, unsigned long std::pair::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9EA194: caf::uniform_type_info const* caf::announce, unsigned long std::pair::*, unsigned long std::pair::*>(std::string, unsigned long std::pair::* const&, unsigned long std::pair::* const&) (announce.hpp:119) +==10647== by 0x9D7EE7: Environment::AnnounceCafMessage() (Environment.cpp:224) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,182 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9F79D1: caf::detail::member_tinfo >, caf::detail::default_serialize_policy, false, false>::member_tinfo(caf::detail::memptr_access_policy >) (default_uniform_type_info.hpp:282) +==10647== by 0x9F4B35: std::unique_ptr > caf::detail::new_member_tinfo >(unsigned long std::pair::*) (default_uniform_type_info.hpp:492) +==10647== by 0x9F4B8D: _ZN3caf6detail25default_uniform_type_infoISt4pairImmEE9push_backImS3_IEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:589) +==10647== by 0x9F1E8A: _ZN3caf6detail25default_uniform_type_infoISt4pairImmEE9push_backImS3_IRKMS3_mEEEvMT0_T_DpOT1_ (default_uniform_type_info.hpp:590) +==10647== by 0x9EE93D: caf::detail::default_uniform_type_info >::default_uniform_type_info::* const&, unsigned long std::pair::* const&>(std::string, unsigned long std::pair::* const&, unsigned long std::pair::* const&) (default_uniform_type_info.hpp:533) +==10647== by 0x9EA194: caf::uniform_type_info const* caf::announce, unsigned long std::pair::*, unsigned long std::pair::*>(std::string, unsigned long std::pair::* const&, unsigned long std::pair::* const&) (announce.hpp:119) +==10647== by 0x9D7EE7: Environment::AnnounceCafMessage() (Environment.cpp:224) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,183 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCD4A: member_tinfo (default_uniform_type_info.hpp:392) +==10647== by 0x51BCD4A: default_uniform_type_info (default_uniform_type_info.hpp:545) +==10647== by 0x51BCD4A: announce (announce.hpp:119) +==10647== by 0x51BCD4A: caf::io::middleman::initialize() (middleman.cpp:267) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,184 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCEB0: member_tinfo (default_uniform_type_info.hpp:286) +==10647== by 0x51BCEB0: default_uniform_type_info (default_uniform_type_info.hpp:545) +==10647== by 0x51BCEB0: announce > > > (announce.hpp:119) +==10647== by 0x51BCEB0: caf::io::middleman::initialize() (middleman.cpp:268) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,185 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00A66: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xC00A66: new_member_tinfo >, void, const std::unordered_map >&> (default_uniform_type_info.hpp:510) +==10647== by 0xC00A66: push_back >, void, const std::unordered_map >&, claims::txn::FixTupleIngestReq> (default_uniform_type_info.hpp:610) +==10647== by 0xC00A66: default_uniform_type_info, std::hash, std::equal_to, std::allocator > > > (claims::txn::FixTupleIngestReq::*)()const, void (claims::txn::FixTupleIngestReq::*)(const std::unordered_map, std::hash, std::equal_to, std::allocator > > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xC00A66: caf::uniform_type_info const* caf::announce, std::hash, std::equal_to, std::allocator > > > (claims::txn::FixTupleIngestReq::*)() const, void (claims::txn::FixTupleIngestReq::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> >(std::string, std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::FixTupleIngestReq::*)() const, void (claims::txn::FixTupleIngestReq::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00C65: claims::txn::CAFSerConfig() (txn.hpp:455) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,186 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFFE91: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFFE91: new_member_tinfo (default_uniform_type_info.hpp:510) +==10647== by 0xBFFE91: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn6IngestEE9push_backIyvRKyS4_IRKSt4pairIMS4_KFSt13unordered_mapIyS9_IyyESt4hashIyESt8equal_toIyESaIS9_IS7_SB_EEEvEMS4_FvRKSI_EEEEEvRKS9_IMT2_KFT_vEMSS_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:610) +==10647== by 0xC0013C: default_uniform_type_info&, const std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)()const, void (claims::txn::Ingest::*)(const std::unordered_map, std::hash, std::equal_to, std::allocator > > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xC0013C: caf::uniform_type_info const* caf::announce, std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)() const, void (claims::txn::Ingest::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> >(std::string, std::pair const&, std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)() const, void (claims::txn::Ingest::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00D00: claims::txn::CAFSerConfig() (txn.hpp:458) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,187 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFFF7C: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFFF7C: new_member_tinfo >, void, const std::unordered_map >&> (default_uniform_type_info.hpp:510) +==10647== by 0xBFFF7C: push_back >, void, const std::unordered_map >&, claims::txn::Ingest> (default_uniform_type_info.hpp:610) +==10647== by 0xBFFF7C: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn6IngestEE9push_backIyvRKyS4_IRKSt4pairIMS4_KFSt13unordered_mapIyS9_IyyESt4hashIyESt8equal_toIyESaIS9_IS7_SB_EEEvEMS4_FvRKSI_EEEEEvRKS9_IMT2_KFT_vEMSS_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:611) +==10647== by 0xC0013C: default_uniform_type_info&, const std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)()const, void (claims::txn::Ingest::*)(const std::unordered_map, std::hash, std::equal_to, std::allocator > > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xC0013C: caf::uniform_type_info const* caf::announce, std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)() const, void (claims::txn::Ingest::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> >(std::string, std::pair const&, std::pair, std::hash, std::equal_to, std::allocator > > > (claims::txn::Ingest::*)() const, void (claims::txn::Ingest::*)(std::unordered_map, std::hash, std::equal_to, std::allocator > > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00D00: claims::txn::CAFSerConfig() (txn.hpp:458) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,188 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00261: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xC00261: new_member_tinfo, void, const std::vector&> (default_uniform_type_info.hpp:510) +==10647== by 0xC00261: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn8QueryReqEE9push_backISt6vectorIySaIyEEvRKS9_S4_IRKSt4pairIMS4_KFbvEMS4_FvbEEEEEvRKSC_IMT2_KFT_vEMSK_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:610) +==10647== by 0xC0050C: default_uniform_type_info > (claims::txn::QueryReq::*)()const, void (claims::txn::QueryReq::*)(const std::vector >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xC0050C: caf::uniform_type_info const* caf::announce > (claims::txn::QueryReq::*)() const, void (claims::txn::QueryReq::*)(std::vector > const&)>, std::pair >(std::string, std::pair > (claims::txn::QueryReq::*)() const, void (claims::txn::QueryReq::*)(std::vector > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00D91: claims::txn::CAFSerConfig() (txn.hpp:461) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,189 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC0034C: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xC0034C: new_member_tinfo (default_uniform_type_info.hpp:510) +==10647== by 0xC0034C: push_back (default_uniform_type_info.hpp:610) +==10647== by 0xC0034C: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn8QueryReqEE9push_backISt6vectorIySaIyEEvRKS9_S4_IRKSt4pairIMS4_KFbvEMS4_FvbEEEEEvRKSC_IMT2_KFT_vEMSK_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:611) +==10647== by 0xC0050C: default_uniform_type_info > (claims::txn::QueryReq::*)()const, void (claims::txn::QueryReq::*)(const std::vector >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xC0050C: caf::uniform_type_info const* caf::announce > (claims::txn::QueryReq::*)() const, void (claims::txn::QueryReq::*)(std::vector > const&)>, std::pair >(std::string, std::pair > (claims::txn::QueryReq::*)() const, void (claims::txn::QueryReq::*)(std::vector > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00D91: claims::txn::CAFSerConfig() (txn.hpp:461) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,190 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFF914: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFF914: new_member_tinfo (default_uniform_type_info.hpp:510) +==10647== by 0xBFF914: push_back, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:610) +==10647== by 0xBFF914: default_uniform_type_info&, const std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFF914: caf::uniform_type_info const* caf::announce, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)>, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> >(std::string, std::pair const&, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> const&, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00E54: claims::txn::CAFSerConfig() (txn.hpp:464) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,191 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFF631: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFF631: new_member_tinfo > >, void, const std::unordered_map > >&> (default_uniform_type_info.hpp:510) +==10647== by 0xBFF631: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn5QueryEE9push_backISt13unordered_mapIySt6vectorISt4pairIyyESaISA_EESt4hashIyESt8equal_toIyESaIS9_IKySC_EEEvRKSK_S4_IRKS9_IMS4_KFS7_IyySE_SG_SaIS9_ISH_yEEEvEMS4_FvRKSP_EEEEEvRKS9_IMT2_KFT_vEMSZ_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:610) +==10647== by 0xBFF9B6: push_back, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFF9B6: default_uniform_type_info&, const std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFF9B6: caf::uniform_type_info const* caf::announce, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)>, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> >(std::string, std::pair const&, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> const&, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00E54: claims::txn::CAFSerConfig() (txn.hpp:464) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,192 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFF71C: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFF71C: new_member_tinfo, void, const std::unordered_map&> (default_uniform_type_info.hpp:510) +==10647== by 0xBFF71C: push_back, void, const std::unordered_map&, claims::txn::Query> (default_uniform_type_info.hpp:610) +==10647== by 0xBFF71C: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn5QueryEE9push_backISt13unordered_mapIySt6vectorISt4pairIyyESaISA_EESt4hashIyESt8equal_toIyESaIS9_IKySC_EEEvRKSK_S4_IRKS9_IMS4_KFS7_IyySE_SG_SaIS9_ISH_yEEEvEMS4_FvRKSP_EEEEEvRKS9_IMT2_KFT_vEMSZ_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:611) +==10647== by 0xBFF9B6: push_back, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFF9B6: default_uniform_type_info&, const std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&, const std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)()const, void (claims::txn::Query::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFF9B6: caf::uniform_type_info const* caf::announce, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)>, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> >(std::string, std::pair const&, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> const&, std::pair, std::equal_to, std::allocator > > (claims::txn::Query::*)() const, void (claims::txn::Query::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00E54: claims::txn::CAFSerConfig() (txn.hpp:464) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,193 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00631: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xC00631: new_member_tinfo, void, const std::unordered_map&> (default_uniform_type_info.hpp:510) +==10647== by 0xC00631: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn8SnapshotEE9push_backISt13unordered_mapIyySt4hashIyESt8equal_toIyESaISt4pairIKyyEEEvRKSG_S4_IRKSC_IMS4_KFS7_IySt6vectorISC_IyyESaISK_EES9_SB_SaISC_ISD_SM_EEEvEMS4_FvRKSP_EEEEEvRKSC_IMT2_KFT_vEMSZ_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:610) +==10647== by 0xC008DC: default_uniform_type_info, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)()const, void (claims::txn::Snapshot::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&, const std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)()const, void (claims::txn::Snapshot::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xC008DC: caf::uniform_type_info const* caf::announce, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::equal_to, std::allocator > > const&)>, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> >(std::string, std::pair, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> const&, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00EE5: claims::txn::CAFSerConfig() (txn.hpp:467) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,194 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC0071C: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xC0071C: new_member_tinfo > >, void, const std::unordered_map > >&> (default_uniform_type_info.hpp:510) +==10647== by 0xC0071C: push_back > >, void, const std::unordered_map > >&, claims::txn::Snapshot> (default_uniform_type_info.hpp:610) +==10647== by 0xC0071C: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn8SnapshotEE9push_backISt13unordered_mapIyySt4hashIyESt8equal_toIyESaISt4pairIKyyEEEvRKSG_S4_IRKSC_IMS4_KFS7_IySt6vectorISC_IyyESaISK_EES9_SB_SaISC_ISD_SM_EEEvEMS4_FvRKSP_EEEEEvRKSC_IMT2_KFT_vEMSZ_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:611) +==10647== by 0xC008DC: default_uniform_type_info, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)()const, void (claims::txn::Snapshot::*)(const std::unordered_map, std::equal_to, std::allocator > >&)>&, const std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)()const, void (claims::txn::Snapshot::*)(const std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > >&)>&> (default_uniform_type_info.hpp:533) +==10647== by 0xC008DC: caf::uniform_type_info const* caf::announce, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::equal_to, std::allocator > > const&)>, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> >(std::string, std::pair, std::equal_to, std::allocator > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::equal_to, std::allocator > > const&)> const&, std::pair, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > (claims::txn::Snapshot::*)() const, void (claims::txn::Snapshot::*)(std::unordered_map, std::allocator > >, std::hash, std::equal_to, std::allocator, std::allocator > > > > > const&)> const&) (announce.hpp:119) +==10647== by 0xC00EE5: claims::txn::CAFSerConfig() (txn.hpp:467) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,195 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFEF9F: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFEF9F: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long long (claims::txn::CheckpointReq::*)() const, void (claims::txn::CheckpointReq::*)(unsigned long long)) (default_uniform_type_info.hpp:510) +==10647== by 0xBFFCDC: push_back&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:610) +==10647== by 0xBFFCDC: default_uniform_type_info&, const std::pair&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFFCDC: caf::uniform_type_info const* caf::announce, std::pair, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)>, std::pair >(std::string, std::pair const&, std::pair const&, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00FD2: claims::txn::CAFSerConfig() (txn.hpp:472) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,196 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFEF9F: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFEF9F: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long long (claims::txn::CheckpointReq::*)() const, void (claims::txn::CheckpointReq::*)(unsigned long long)) (default_uniform_type_info.hpp:510) +==10647== by 0xBFFD12: push_back, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:610) +==10647== by 0xBFFD12: push_back&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD12: default_uniform_type_info&, const std::pair&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFFD12: caf::uniform_type_info const* caf::announce, std::pair, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)>, std::pair >(std::string, std::pair const&, std::pair const&, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00FD2: claims::txn::CAFSerConfig() (txn.hpp:472) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,197 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFFAFE: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFFAFE: new_member_tinfo >, std::vector >, const std::vector >&> (default_uniform_type_info.hpp:510) +==10647== by 0xBFFAFE: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn13CheckpointReqEE9push_backISt6vectorISt4pairIyyESaIS9_EESB_RKSB_S4_IRKS8_IMS4_KFyvEMS4_FvyEEEEEvRKS8_IMT2_KFT_vEMSL_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:610) +==10647== by 0xBFFD3E: push_back, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD3E: push_back&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD3E: default_uniform_type_info&, const std::pair&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFFD3E: caf::uniform_type_info const* caf::announce, std::pair, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)>, std::pair >(std::string, std::pair const&, std::pair const&, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00FD2: claims::txn::CAFSerConfig() (txn.hpp:472) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 35 bytes in 1 blocks are possibly lost in loss record 1,198 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBFEF9F: member_tinfo (default_uniform_type_info.hpp:282) +==10647== by 0xBFEF9F: std::unique_ptr > caf::detail::new_member_tinfo(unsigned long long (claims::txn::CheckpointReq::*)() const, void (claims::txn::CheckpointReq::*)(unsigned long long)) (default_uniform_type_info.hpp:510) +==10647== by 0xBFFBAA: push_back (default_uniform_type_info.hpp:610) +==10647== by 0xBFFBAA: _ZN3caf6detail25default_uniform_type_infoIN6claims3txn13CheckpointReqEE9push_backISt6vectorISt4pairIyyESaIS9_EESB_RKSB_S4_IRKS8_IMS4_KFyvEMS4_FvyEEEEEvRKS8_IMT2_KFT_vEMSL_FT0_T1_EEDpOT3_ (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD3E: push_back, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD3E: push_back&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:611) +==10647== by 0xBFFD3E: default_uniform_type_info&, const std::pair&, const std::pair, std::allocator > > (claims::txn::CheckpointReq::*)()const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(const std::vector, std::allocator > >&)>&, const std::pair&> (default_uniform_type_info.hpp:533) +==10647== by 0xBFFD3E: caf::uniform_type_info const* caf::announce, std::pair, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)>, std::pair >(std::string, std::pair const&, std::pair const&, std::pair, std::allocator > > (claims::txn::CheckpointReq::*)() const, std::vector, std::allocator > > (claims::txn::CheckpointReq::*)(std::vector, std::allocator > > const&)> const&, std::pair const&) (announce.hpp:119) +==10647== by 0xC00FD2: claims::txn::CAFSerConfig() (txn.hpp:472) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 36 bytes in 1 blocks are possibly lost in loss record 1,208 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x75C067B: __static_initialization_and_destruction_0 (ActiveMQDestination.cpp:42) +==10647== by 0x75C067B: _GLOBAL__sub_I_ActiveMQDestination.cpp (ActiveMQDestination.cpp:296) +==10647== by 0x400F4E2: _dl_init (in /usr/lib64/ld-2.17.so) +==10647== by 0x4001459: ??? (in /usr/lib64/ld-2.17.so) +==10647== by 0x2: ??? +==10647== by 0xFFEFFFDE2: ??? +==10647== by 0xFFEFFFDF1: ??? +==10647== by 0xFFEFFFDF4: ??? +==10647== +==10647== 36 bytes in 1 blocks are possibly lost in loss record 1,209 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x13A5CE1: llvm::Module::Module(llvm::StringRef, llvm::LLVMContext&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB1A7: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:61) +==10647== by 0xBBB5F4: CodeGenerator::getInstance() (CodeGenerator.cpp:28) +==10647== by 0x9D6E7D: Environment::Environment(bool) (Environment.cpp:73) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 36 bytes in 1 blocks are possibly lost in loss record 1,210 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7A4A: Environment::AnnounceCafMessage() (Environment.cpp:203) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 36 bytes in 1 blocks are possibly lost in loss record 1,211 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7B4A: Environment::AnnounceCafMessage() (Environment.cpp:207) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 37 bytes in 1 blocks are possibly lost in loss record 1,216 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7ACA: Environment::AnnounceCafMessage() (Environment.cpp:205) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 37 bytes in 1 blocks are possibly lost in loss record 1,217 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD5CB: decaf::internal::security::provider::DefaultSecureRandomProviderService::DefaultSecureRandomProviderService(decaf::security::Provider const*, std::string const&) (DefaultSecureRandomProviderService.cpp:35) +==10647== by 0x79CD16E: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:46) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 37 bytes in 1 blocks are possibly lost in loss record 1,218 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EEDB1: activemq::commands::WireFormatInfo::setCacheEnabled(bool) (WireFormatInfo.cpp:260) +==10647== by 0x7934E10: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:51) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,222 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7ED0: Environment::AnnounceCafMessage() (Environment.cpp:224) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,223 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CCF6B: decaf::internal::security::provider::DefaultMessageDigestProviderService::DefaultMessageDigestProviderService(decaf::security::Provider const*, std::string const&) (DefaultMessageDigestProviderService.cpp:34) +==10647== by 0x79CD080: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:43) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,224 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CCF6B: decaf::internal::security::provider::DefaultMessageDigestProviderService::DefaultMessageDigestProviderService(decaf::security::Provider const*, std::string const&) (DefaultMessageDigestProviderService.cpp:34) +==10647== by 0x79CD0D5: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:44) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,225 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CCF6B: decaf::internal::security::provider::DefaultMessageDigestProviderService::DefaultMessageDigestProviderService(decaf::security::Provider const*, std::string const&) (DefaultMessageDigestProviderService.cpp:34) +==10647== by 0x79CD124: decaf::internal::security::provider::DefaultProvider::initialize() (DefaultProvider.cpp:45) +==10647== by 0x79C0D4F: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:105) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,226 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00FBE: claims::txn::CAFSerConfig() (txn.hpp:472) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,227 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x799FF5C: substr (basic_string.h:2208) +==10647== by 0x799FF5C: decaf::internal::net::URIHelper::parseAuthority(bool, std::string const&) (URIHelper.cpp:300) +==10647== by 0x79A0F34: decaf::internal::net::URIHelper::parseURI(std::string const&, bool) (URIHelper.cpp:171) +==10647== by 0x7A34BFB: decaf::net::URI::parseURI(std::string const&, bool) (URI.cpp:252) +==10647== by 0x7A34F80: decaf::net::URI::URI(std::string const&) (URI.cpp:53) +==10647== by 0x7921C56: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:296) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== +==10647== 38 bytes in 1 blocks are possibly lost in loss record 1,228 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB529DD: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:405) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,359 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB7F00D: allocate (new_allocator.h:104) +==10647== by 0xB7F00D: allocate (allocate.hpp:546) +==10647== by 0xB7F00D: construct (buckets.hpp:405) +==10647== by 0xB7F00D: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB7F00D: boost::unordered::detail::table_impl >, NodeAddress, int, boost::hash, std::equal_to > >::operator[](NodeAddress const&) (unique.hpp:347) +==10647== by 0xBB2C26: operator[] (unordered_map.hpp:1185) +==10647== by 0xBB2C26: operator() (master_loader.cpp:167) +==10647== by 0xBB2C26: operator()&, std::basic_string, std::allocator >&, int&> (match_case.hpp:118) +==10647== by 0xBB2C26: apply_args, 0l, 1l, 2l, caf::detail::pseudo_tuple, std::basic_string, std::allocator >, int> > (apply_args.hpp:40) +==10647== by 0xBB2C26: caf::trivial_match_case, std::string, int)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,360 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB7F00D: allocate (new_allocator.h:104) +==10647== by 0xB7F00D: allocate (allocate.hpp:546) +==10647== by 0xB7F00D: construct (buckets.hpp:405) +==10647== by 0xB7F00D: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB7F00D: boost::unordered::detail::table_impl >, NodeAddress, int, boost::hash, std::equal_to > >::operator[](NodeAddress const&) (unique.hpp:347) +==10647== by 0xB7E5DB: operator[] (unordered_map.hpp:1185) +==10647== by 0xB7E5DB: NodeTracker::InsertRegisteredNode(int const&, NodeAddress const&) (NodeTracker.cpp:88) +==10647== by 0xBB24FE: operator() (master_loader.cpp:279) +==10647== by 0xBB24FE: operator()&, NodeAddress&, int&> (match_case.hpp:118) +==10647== by 0xBB24FE: apply_args, 0l, 1l, 2l, caf::detail::pseudo_tuple, NodeAddress, int> > (apply_args.hpp:40) +==10647== by 0xBB24FE: caf::trivial_match_case, NodeAddress, int)#3}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,361 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x79E1402: decaf::internal::util::concurrent::PlatformThread::createMutex(pthread_mutex_t**) (PlatformThread.cpp:64) +==10647== by 0x79DF018: decaf::internal::util::concurrent::Threading::takeMonitor(bool) (Threading.cpp:1475) +==10647== by 0x7A673B0: decaf::util::concurrent::Mutex::lock() (Mutex.cpp:123) +==10647== by 0x7A67094: decaf::util::concurrent::Lock::lock() (Lock.cpp:54) +==10647== by 0x7A6718C: decaf::util::concurrent::Lock::Lock(decaf::util::concurrent::Synchronizable*, bool) (Lock.cpp:32) +==10647== by 0x7A5CC5B: decaf::util::Properties::setProperty(std::string const&, std::string const&) (Properties.cpp:200) +==10647== by 0x792108B: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:155) +==10647== by 0x7644BB4: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:101) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,362 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x79E1402: decaf::internal::util::concurrent::PlatformThread::createMutex(pthread_mutex_t**) (PlatformThread.cpp:64) +==10647== by 0x79DF021: decaf::internal::util::concurrent::Threading::takeMonitor(bool) (Threading.cpp:1476) +==10647== by 0x7A673B0: decaf::util::concurrent::Mutex::lock() (Mutex.cpp:123) +==10647== by 0x7A67094: decaf::util::concurrent::Lock::lock() (Lock.cpp:54) +==10647== by 0x7A6718C: decaf::util::concurrent::Lock::Lock(decaf::util::concurrent::Synchronizable*, bool) (Lock.cpp:32) +==10647== by 0x7A5CC5B: decaf::util::Properties::setProperty(std::string const&, std::string const&) (Properties.cpp:200) +==10647== by 0x792108B: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:155) +==10647== by 0x7644BB4: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:101) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,363 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC0C6C: PerformanceInfo::PerformanceInfo(ExpandabilityShrinkability*) (ExpandedThreadTracker.cpp:29) +==10647== by 0xAD0D59: ExpanderStatus (expander_tracker.h:133) +==10647== by 0xAD0D59: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:182) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,364 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F290: allocate (new_allocator.h:104) +==10647== by 0xB3F290: std::__detail::_Hash_node, std::allocator > > >, false>* std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (hashtable.h:724) +==10647== by 0xB3F3F2: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:898) +==10647== by 0xB4020E: unordered_map (unordered_map.h:168) +==10647== by 0xB4020E: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 40 bytes in 1 blocks are possibly lost in loss record 1,365 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F290: allocate (new_allocator.h:104) +==10647== by 0xB3F290: std::__detail::_Hash_node, std::allocator > > >, false>* std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (hashtable.h:724) +==10647== by 0xB3F3F2: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:898) +==10647== by 0xB40240: unordered_map (unordered_map.h:168) +==10647== by 0xB40240: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 42 bytes in 1 blocks are possibly lost in loss record 1,366 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC00C5A: claims::txn::CAFSerConfig() (txn.hpp:455) +==10647== by 0xC0640C: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:306) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 42 bytes in 1 blocks are possibly lost in loss record 1,367 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EEB57: activemq::commands::WireFormatInfo::setStackTraceEnabled(bool) (WireFormatInfo.cpp:215) +==10647== by 0x7934D4A: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:49) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 42 bytes in 1 blocks are possibly lost in loss record 1,368 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EEC87: activemq::commands::WireFormatInfo::setTcpNoDelayEnabled(bool) (WireFormatInfo.cpp:237) +==10647== by 0x7934FB0: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:55) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 43 bytes in 1 blocks are possibly lost in loss record 1,370 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EF007: activemq::commands::WireFormatInfo::setSizePrefixDisabled(bool) (WireFormatInfo.cpp:304) +==10647== by 0x7935154: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:59) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 43 bytes in 1 blocks are possibly lost in loss record 1,371 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x793DE84: _M_replace_dispatch<__gnu_cxx::__normal_iterator > > (basic_string.tcc:662) +==10647== by 0x793DE84: replace<__gnu_cxx::__normal_iterator > > (basic_string.h:1630) +==10647== by 0x793DE84: insert<__gnu_cxx::__normal_iterator > > (basic_string.h:1203) +==10647== by 0x793DE84: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::readAsciiString(decaf::io::DataInputStream*) (BaseDataStreamMarshaller.cpp:704) +==10647== by 0x7939930: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalString(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:157) +==10647== by 0x794982C: activemq::wireformat::openwire::marshal::generated::BrokerInfoMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BrokerInfoMarshaller.cpp:67) +==10647== by 0x7932F6A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:295) +==10647== by 0x79332F5: activemq::wireformat::openwire::OpenWireFormat::unmarshal(activemq::transport::Transport const*, decaf::io::DataInputStream*) (OpenWireFormat.cpp:230) +==10647== by 0x7896CC0: activemq::transport::IOTransport::run() (IOTransport.cpp:271) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== by 0x79DE40B: (anonymous namespace)::threadEntryMethod(void*) (Threading.cpp:256) +==10647== +==10647== 44 bytes in 1 blocks are possibly lost in loss record 1,373 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79A16C7: substr (basic_string.h:2208) +==10647== by 0x79A16C7: decaf::internal::net::URIHelper::parseURI(std::string const&, bool) (URIHelper.cpp:136) +==10647== by 0x7A34BFB: decaf::net::URI::parseURI(std::string const&, bool) (URI.cpp:252) +==10647== by 0x7A34F80: decaf::net::URI::URI(std::string const&) (URI.cpp:53) +==10647== by 0x7921C56: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:296) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== +==10647== 45 bytes in 1 blocks are possibly lost in loss record 1,374 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D7CB5: Environment::AnnounceCafMessage() (Environment.cpp:215) +==10647== by 0x9D6EE1: Environment::Environment(bool) (Environment.cpp:79) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 45 bytes in 1 blocks are possibly lost in loss record 1,375 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EEED7: activemq::commands::WireFormatInfo::setTightEncodingEnabled(bool) (WireFormatInfo.cpp:282) +==10647== by 0x7935082: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:57) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 46 bytes in 1 blocks are possibly lost in loss record 1,376 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BABBB: uti_impl (middleman.cpp:113) +==10647== by 0x51BABBB: void caf::io::(anonymous namespace)::do_announce(char const*) [clone .constprop.420] (middleman.cpp:128) +==10647== by 0x51BCF69: caf::io::middleman::initialize() (middleman.cpp:269) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 46 bytes in 1 blocks are possibly lost in loss record 1,377 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB6B9D3: BlockManager::initialize() (BlockManager.cpp:50) +==10647== by 0x9D8133: Environment::initializeStorage() (Environment.cpp:241) +==10647== by 0x9D71AE: Environment::Environment(bool) (Environment.cpp:118) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 46 bytes in 1 blocks are possibly lost in loss record 1,378 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A2BF84: decaf::net::InetAddress::getLocalHost() (InetAddress.cpp:175) +==10647== by 0x7901873: activemq::util::IdGenerator::initialize() (IdGenerator.cpp:60) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 46 bytes in 1 blocks are possibly lost in loss record 1,379 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x790197D: append (basic_string.h:1009) +==10647== by 0x790197D: operator+, std::allocator > (basic_string.h:2406) +==10647== by 0x790197D: activemq::util::IdGenerator::initialize() (IdGenerator.cpp:63) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 46 bytes in 1 blocks are possibly lost in loss record 1,380 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EF686: activemq::commands::WireFormatInfo::setMaxInactivityDuration(long long) (WireFormatInfo.cpp:350) +==10647== by 0x7935226: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:61) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 47 bytes in 1 blocks are possibly lost in loss record 1,381 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCF98: uti_impl (middleman.cpp:113) +==10647== by 0x51BCF98: do_announce (middleman.cpp:128) +==10647== by 0x51BCF98: caf::io::middleman::initialize() (middleman.cpp:273) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 47 bytes in 1 blocks are possibly lost in loss record 1,382 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A6049B: substr (basic_string.h:2208) +==10647== by 0x7A6049B: decaf::util::StringTokenizer::nextToken() (StringTokenizer.cpp:98) +==10647== by 0x7921008: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:146) +==10647== by 0x7644BB4: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:101) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== +==10647== 48 bytes in 1 blocks are possibly lost in loss record 1,555 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A2061B: allocate (new_allocator.h:104) +==10647== by 0x7A2061B: _M_get_node (stl_tree.h:370) +==10647== by 0x7A2061B: _M_create_node (stl_tree.h:380) +==10647== by 0x7A2061B: std::_Rb_tree, std::_Select1st >, decaf::util::comparators::Less, std::allocator > >::_M_insert_(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::pair const&) (stl_tree.h:1023) +==10647== by 0x7A20AE3: std::_Rb_tree, std::_Select1st >, decaf::util::comparators::Less, std::allocator > >::_M_insert_unique_(std::_Rb_tree_const_iterator >, std::pair const&) (stl_tree.h:1482) +==10647== by 0x7A5F6D6: insert (stl_map.h:648) +==10647== by 0x7A5F6D6: std::map, std::allocator > >::operator[](std::string const&) (stl_map.h:469) +==10647== by 0x7A5CC77: put (StlMap.h:789) +==10647== by 0x7A5CC77: decaf::util::Properties::setProperty(std::string const&, std::string const&) (Properties.cpp:206) +==10647== by 0x792108B: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:155) +==10647== by 0x7644BB4: activemq::commands::ActiveMQDestination::setPhysicalName(std::string const&) (ActiveMQDestination.cpp:101) +==10647== by 0x76459CD: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:85) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== +==10647== 48 bytes in 1 blocks are possibly lost in loss record 1,556 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A1E819: decaf::util::StlMap >::entrySet() (StlMap.h:846) +==10647== by 0x7A5D385: decaf::util::Properties::toArray() const (Properties.cpp:244) +==10647== by 0x78F8CAC: activemq::util::ActiveMQProperties::toArray() const (ActiveMQProperties.h:93) +==10647== by 0x78F8996: activemq::util::ActiveMQProperties::copy(cms::CMSProperties const*) (ActiveMQProperties.cpp:42) +==10647== by 0x7644DC4: activemq::commands::ActiveMQDestination::copyDataStructure(activemq::commands::DataStructure const*) (ActiveMQDestination.cpp:128) +==10647== by 0x7683FF9: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:43) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 48 bytes in 1 blocks are possibly lost in loss record 1,557 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F63A: allocate (new_allocator.h:104) +==10647== by 0xB3F63A: _M_get_node (stl_tree.h:370) +==10647== by 0xB3F63A: _M_create_node&> (stl_tree.h:403) +==10647== by 0xB3F63A: _M_clone_node (stl_tree.h:429) +==10647== by 0xB3F63A: std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_copy(std::_Rb_tree_node > const*, std::_Rb_tree_node >*) (stl_tree.h:1087) +==10647== by 0xB4032D: _Rb_tree (stl_tree.h:659) +==10647== by 0xB4032D: map (stl_map.h:181) +==10647== by 0xB4032D: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 48 bytes in 2 blocks are possibly lost in loss record 1,558 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x9DD723: column_type::initialize() (data_type.h:1468) +==10647== by 0xA19CD0: void column_type::serialize(boost::archive::text_iarchive&, unsigned int) (data_type.h:1459) +==10647== by 0xA19BF5: void boost::serialization::access::serialize(boost::archive::text_iarchive&, column_type&, unsigned int) (access.hpp:118) +==10647== by 0xA19B80: void boost::serialization::serialize(boost::archive::text_iarchive&, column_type&, unsigned int) (serialization.hpp:69) +==10647== by 0xA199D8: void boost::serialization::serialize_adl(boost::archive::text_iarchive&, column_type&, unsigned int) (serialization.hpp:128) +==10647== by 0xA19828: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB951CA: invoke (iserializer.hpp:387) +==10647== by 0xB951CA: invoke (iserializer.hpp:439) +==10647== by 0xB951CA: load (iserializer.hpp:592) +==10647== by 0xB951CA: load_override (common_iarchive.hpp:66) +==10647== by 0xB951CA: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB951CA: load_override (text_iarchive.hpp:82) +==10647== by 0xB951CA: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB951CA: load (nvp.hpp:87) +==10647== by 0xB951CA: member_load > (access.hpp:101) +==10647== by 0xB951CA: invoke (split_member.hpp:54) +==10647== by 0xB951CA: split_member > (split_member.hpp:69) +==10647== by 0xB951CA: serialize (nvp.hpp:89) +==10647== by 0xB951CA: serialize > (access.hpp:118) +==10647== by 0xB951CA: serialize > (serialization.hpp:69) +==10647== by 0xB951CA: serialize_adl > (serialization.hpp:128) +==10647== by 0xB951CA: invoke > (iserializer.hpp:373) +==10647== by 0xB951CA: invoke > (iserializer.hpp:439) +==10647== by 0xB951CA: load > (iserializer.hpp:592) +==10647== by 0xB951CA: load_override > (common_iarchive.hpp:66) +==10647== by 0xB951CA: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB951CA: load_override > (text_iarchive.hpp:82) +==10647== by 0xB951CA: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB951CA: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB965DF: invoke (iserializer.hpp:524) +==10647== by 0xB965DF: load (iserializer.hpp:592) +==10647== by 0xB965DF: load_override (common_iarchive.hpp:66) +==10647== by 0xB965DF: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB965DF: load_override (text_iarchive.hpp:82) +==10647== by 0xB965DF: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB965DF: operator& (interface_iarchive.hpp:67) +==10647== by 0xB965DF: serialize (attribute.h:192) +==10647== by 0xB965DF: serialize (access.hpp:118) +==10647== by 0xB965DF: serialize (serialization.hpp:69) +==10647== by 0xB965DF: serialize_adl (serialization.hpp:128) +==10647== by 0xB965DF: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 48 bytes in 2 blocks are possibly lost in loss record 1,559 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC901D: OperateInt::duplicateOperator() const (data_type.h:359) +==10647== by 0xBDE6CC: column_type (data_type.h:1394) +==10647== by 0xBDE6CC: _Construct (stl_construct.h:75) +==10647== by 0xBDE6CC: __uninit_copy<__gnu_cxx::__normal_iterator >, column_type*> (stl_uninitialized.h:75) +==10647== by 0xBDE6CC: uninitialized_copy<__gnu_cxx::__normal_iterator >, column_type*> (stl_uninitialized.h:117) +==10647== by 0xBDE6CC: __uninitialized_copy_a<__gnu_cxx::__normal_iterator >, column_type*, column_type> (stl_uninitialized.h:258) +==10647== by 0xBDE6CC: vector (stl_vector.h:316) +==10647== by 0xBDE6CC: Schema::Schema(std::vector > const&) (Schema.cpp:13) +==10647== by 0xBDEFBD: SchemaFix::SchemaFix(std::vector > const&) (SchemaFix.cpp:53) +==10647== by 0xB37D87: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3DEE9: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:211) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 49 bytes in 1 blocks are possibly lost in loss record 1,565 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x11FC937: llvm::TargetMachine::TargetMachine(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC98BA: llvm::LLVMTargetMachine::LLVMTargetMachine(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC2CD20: llvm::X86TargetMachine::X86TargetMachine(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC2D15E: llvm::RegisterTargetMachine::Allocator(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12081D8: llvm::EngineBuilder::selectTarget(llvm::Triple const&, llvm::StringRef, llvm::StringRef, llvm::SmallVectorImpl const&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12085B6: llvm::EngineBuilder::selectTarget() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2CB: create (ExecutionEngine.h:723) +==10647== by 0xBBB2CB: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== by 0xBBB5F4: CodeGenerator::getInstance() (CodeGenerator.cpp:28) +==10647== +==10647== 49 bytes in 1 blocks are possibly lost in loss record 1,566 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xC2CDBB: llvm::X86TargetMachine::X86TargetMachine(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC2D15E: llvm::RegisterTargetMachine::Allocator(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12081D8: llvm::EngineBuilder::selectTarget(llvm::Triple const&, llvm::StringRef, llvm::StringRef, llvm::SmallVectorImpl const&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12085B6: llvm::EngineBuilder::selectTarget() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2CB: create (ExecutionEngine.h:723) +==10647== by 0xBBB2CB: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== by 0xBBB5F4: CodeGenerator::getInstance() (CodeGenerator.cpp:28) +==10647== by 0x9D6E7D: Environment::Environment(bool) (Environment.cpp:73) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 49 bytes in 1 blocks are possibly lost in loss record 1,567 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x12592D4: llvm::MCSubtargetInfo::InitMCSubtargetInfo(llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::ArrayRef, llvm::ArrayRef, llvm::SubtargetInfoKV const*, llvm::MCWriteProcResEntry const*, llvm::MCWriteLatencyEntry const*, llvm::MCReadAdvanceEntry const*, llvm::InstrStage const*, unsigned int const*, unsigned int const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xCF6866: llvm::X86GenSubtargetInfo::X86GenSubtargetInfo(llvm::StringRef, llvm::StringRef, llvm::StringRef) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xCF75FE: llvm::X86Subtarget::X86Subtarget(std::string const&, std::string const&, std::string const&, llvm::X86TargetMachine&, unsigned int) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC2CDD7: llvm::X86TargetMachine::X86TargetMachine(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC2D15E: llvm::RegisterTargetMachine::Allocator(llvm::Target const&, llvm::StringRef, llvm::StringRef, llvm::StringRef, llvm::TargetOptions const&, llvm::Reloc::Model, llvm::CodeModel::Model, llvm::CodeGenOpt::Level) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12081D8: llvm::EngineBuilder::selectTarget(llvm::Triple const&, llvm::StringRef, llvm::StringRef, llvm::SmallVectorImpl const&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x12085B6: llvm::EngineBuilder::selectTarget() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2CB: create (ExecutionEngine.h:723) +==10647== by 0xBBB2CB: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== +==10647== 49 bytes in 1 blocks are possibly lost in loss record 1,568 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x1423612: llvm::Twine::str() const (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x141F288: llvm::Triple::Triple(llvm::Twine const&) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF92442: llvm::createStackProtectorPass(llvm::TargetMachine const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF24CC4: llvm::TargetPassConfig::addISelPrepare() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC8F90: addPassesToGenerateCode(llvm::LLVMTargetMachine*, llvm::legacy::PassManagerBase&, bool, void const*, void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC9099: llvm::LLVMTargetMachine::addPassesToEmitMachineCode(llvm::legacy::PassManagerBase&, llvm::JITCodeEmitter&, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BC3C: llvm::JIT::JIT(llvm::Module*, llvm::TargetMachine&, llvm::TargetJITInfo&, llvm::JITMemoryManager*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BD0E: llvm::JIT::createJIT(llvm::Module*, std::string*, llvm::JITMemoryManager*, bool, llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== +==10647== 51 bytes in 1 blocks are possibly lost in loss record 1,569 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCCA5: caf::io::middleman::initialize() (middleman.cpp:267) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 51 bytes in 1 blocks are possibly lost in loss record 1,570 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BD02F: uti_impl (middleman.cpp:113) +==10647== by 0x51BD02F: do_announce (middleman.cpp:128) +==10647== by 0x51BD02F: caf::io::middleman::initialize() (middleman.cpp:276) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 52 bytes in 1 blocks are possibly lost in loss record 1,571 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BAD5B: uti_impl (middleman.cpp:113) +==10647== by 0x51BAD5B: void caf::io::(anonymous namespace)::do_announce(char const*) [clone .constprop.419] (middleman.cpp:128) +==10647== by 0x51BCF6E: caf::io::middleman::initialize() (middleman.cpp:270) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 52 bytes in 2 blocks are possibly lost in loss record 1,572 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB1753B: AstExprUnary::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_expr_node.cpp:300) +==10647== by 0xB0F65F: AstSelectStmt::GetLogicalPlanOfAggeration(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1682) +==10647== by 0xB0F7DA: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1753) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 53 bytes in 1 blocks are possibly lost in loss record 1,573 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BAE2B: uti_impl (middleman.cpp:113) +==10647== by 0x51BAE2B: void caf::io::(anonymous namespace)::do_announce(char const*) [clone .constprop.416] (middleman.cpp:128) +==10647== by 0x51BCF74: caf::io::middleman::initialize() (middleman.cpp:271) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 55 bytes in 1 blocks are possibly lost in loss record 1,574 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BAC8B: uti_impl (middleman.cpp:113) +==10647== by 0x51BAC8B: void caf::io::(anonymous namespace)::do_announce(char const*) [clone .constprop.417] (middleman.cpp:128) +==10647== by 0x51BCF79: caf::io::middleman::initialize() (middleman.cpp:272) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 56 bytes in 1 blocks are possibly lost in loss record 1,655 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79CD408: decaf::internal::security::provider::DefaultProvider::DefaultProvider() (DefaultProvider.cpp:33) +==10647== by 0x79C0D3A: decaf::internal::security::SecurityRuntime::initializeSecurity() (SecurityRuntime.cpp:103) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 56 bytes in 1 blocks are possibly lost in loss record 1,656 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB72B46: allocate (new_allocator.h:104) +==10647== by 0xB72B46: allocate (allocate.hpp:546) +==10647== by 0xB72B46: construct (buckets.hpp:405) +==10647== by 0xB72B46: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB72B46: operator[] (unique.hpp:347) +==10647== by 0xB72B46: operator[] (unordered_map.hpp:1185) +==10647== by 0xB72B46: MemoryChunkStore::ApplyChunk(ChunkID, void*&) (MemoryManager.cpp:89) +==10647== by 0xB77F4E: ChunkStorage::CreateChunkReaderIterator() (ChunkStorage.cpp:157) +==10647== by 0xB74E9B: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:322) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 57 bytes in 1 blocks are possibly lost in loss record 1,657 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBB1941: append (basic_string.h:1009) +==10647== by 0xBB1941: operator+, std::allocator > (basic_string.h:2406) +==10647== by 0xBB1941: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:913) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 57 bytes in 1 blocks are possibly lost in loss record 1,658 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x76EF7B6: activemq::commands::WireFormatInfo::setMaxInactivityDurationInitalDelay(long long) (WireFormatInfo.cpp:370) +==10647== by 0x79352F2: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:63) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 57 bytes in 1 blocks are possibly lost in loss record 1,659 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA779E55: std::string::_M_mutate(unsigned long, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A41D: std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x793DE84: _M_replace_dispatch<__gnu_cxx::__normal_iterator > > (basic_string.tcc:662) +==10647== by 0x793DE84: replace<__gnu_cxx::__normal_iterator > > (basic_string.h:1630) +==10647== by 0x793DE84: insert<__gnu_cxx::__normal_iterator > > (basic_string.h:1203) +==10647== by 0x793DE84: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::readAsciiString(decaf::io::DataInputStream*) (BaseDataStreamMarshaller.cpp:704) +==10647== by 0x7939930: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalString(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:157) +==10647== by 0x7948C96: activemq::wireformat::openwire::marshal::generated::BrokerIdMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BrokerIdMarshaller.cpp:62) +==10647== by 0x79340A7: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:411) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== by 0x7949731: activemq::wireformat::openwire::marshal::generated::BrokerInfoMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BrokerInfoMarshaller.cpp:66) +==10647== by 0x7932F6A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:295) +==10647== by 0x79332F5: activemq::wireformat::openwire::OpenWireFormat::unmarshal(activemq::transport::Transport const*, decaf::io::DataInputStream*) (OpenWireFormat.cpp:230) +==10647== +==10647== 58 bytes in 1 blocks are possibly lost in loss record 1,660 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCE1A: caf::io::middleman::initialize() (middleman.cpp:268) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 60 bytes in 12 blocks are definitely lost in loss record 1,661 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAD4C529: strdup (in /usr/lib64/libc-2.17.so) +==10647== by 0xAF831B: yylex(YYSTYPE*, void*) (sql.l:367) +==10647== by 0xB0651E: yyparse(ParseResult*) (sql.tab.cpp:5659) +==10647== by 0xAF6721: Parser::CreateRawAST(std::string, std::string&) (parser.cpp:57) +==10647== by 0xAF6807: Parser::Parser(std::string, std::string&) (parser.cpp:38) +==10647== by 0xAE85E5: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:122) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 61 bytes in 1 blocks are possibly lost in loss record 1,662 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0x76E50AC: _S_construct_aux (basic_string.h:1725) +==10647== by 0x76E50AC: _S_construct (basic_string.h:1746) +==10647== by 0x76E50AC: basic_string (basic_string.tcc:229) +==10647== by 0x76E50AC: str (sstream:133) +==10647== by 0x76E50AC: str (sstream:472) +==10647== by 0x76E50AC: activemq::commands::ProducerId::toString() const (ProducerId.cpp:134) +==10647== by 0x77579FB: activemq::core::ActiveMQMessageAudit::isDuplicate(decaf::lang::Pointer) const (ActiveMQMessageAudit.cpp:171) +==10647== by 0x778DAC3: activemq::core::ConnectionAudit::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ConnectionAudit.cpp:108) +==10647== by 0x76F3698: activemq::core::ActiveMQConnection::isDuplicate(activemq::core::Dispatcher*, decaf::lang::Pointer) (ActiveMQConnection.cpp:1923) +==10647== by 0x77C10CC: activemq::core::kernels::ActiveMQConsumerKernel::dispatch(decaf::lang::Pointer const&) (ActiveMQConsumerKernel.cpp:1627) +==10647== by 0x777F609: activemq::core::ActiveMQSessionExecutor::dispatch(decaf::lang::Pointer const&) (ActiveMQSessionExecutor.cpp:166) +==10647== by 0x777F820: activemq::core::ActiveMQSessionExecutor::iterate() (ActiveMQSessionExecutor.cpp:191) +==10647== by 0x788CC0C: activemq::threads::DedicatedTaskRunner::run() (DedicatedTaskRunner.cpp:141) +==10647== by 0x79DDBD1: (anonymous namespace)::runCallback(void*) (Threading.cpp:268) +==10647== +==10647== 62 bytes in 1 blocks are possibly lost in loss record 1,663 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x12F433E: llvm::DataLayout::getStringRepresentation() const (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x13A85A4: llvm::Module::setDataLayout(llvm::DataLayout const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BBF2: llvm::JIT::JIT(llvm::Module*, llvm::TargetMachine&, llvm::TargetJITInfo&, llvm::JITMemoryManager*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BD0E: llvm::JIT::createJIT(llvm::Module*, std::string*, llvm::JITMemoryManager*, bool, llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x11FE6C6: llvm::EngineBuilder::create(llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2D6: create (ExecutionEngine.h:723) +==10647== by 0xBBB2D6: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== by 0xBBB5F4: CodeGenerator::getInstance() (CodeGenerator.cpp:28) +==10647== +==10647== 62 bytes in 2 blocks are possibly lost in loss record 1,664 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A6049B: substr (basic_string.h:2208) +==10647== by 0x7A6049B: decaf::util::StringTokenizer::nextToken() (StringTokenizer.cpp:98) +==10647== by 0x792103F: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:151) +==10647== by 0x7921457: activemq::util::URISupport::parseQuery(std::string) (URISupport.cpp:103) +==10647== by 0x78F40E9: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:71) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 64 bytes in 1 blocks are possibly lost in loss record 1,702 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x76FF0DF: activemq::core::ActiveMQConnection::createSession(cms::Session::AcknowledgeMode) (ActiveMQConnection.cpp:568) +==10647== by 0xBBA965: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:75) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 64 bytes in 1 blocks are possibly lost in loss record 1,703 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB37D79: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3DEE9: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:211) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 64 bytes in 1 blocks are possibly lost in loss record 1,704 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAD45A1: allocate (new_allocator.h:104) +==10647== by 0xAD45A1: _M_allocate_map (stl_deque.h:544) +==10647== by 0xAD45A1: std::_Deque_base >::_M_initialize_map(unsigned long) (stl_deque.h:589) +==10647== by 0xAD0E44: _Deque_base (stl_deque.h:453) +==10647== by 0xAD0E44: deque (stl_deque.h:783) +==10647== by 0xAD0E44: ExpanderStatus (expander_tracker.h:133) +==10647== by 0xAD0E44: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:182) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 64 bytes in 1 blocks are possibly lost in loss record 1,705 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB75643: allocate (new_allocator.h:104) +==10647== by 0xB75643: _M_allocate (stl_vector.h:168) +==10647== by 0xB75643: void std::vector >::_M_emplace_back_aux(ChunkStorage* const&) (vector.tcc:404) +==10647== by 0xB74A75: push_back (stl_vector.h:911) +==10647== by 0xB74A75: PartitionStorage::AddRtChunkWithMemoryApply(unsigned int, unsigned int const&) (PartitionStorage.cpp:144) +==10647== by 0xB78AFF: claims::loader::SlaveLoader::StoreDataInMemory(claims::loader::LoadPacket const&) (slave_loader.cpp:349) +==10647== by 0xB7A007: operator() (slave_loader.cpp:465) +==10647== by 0xB7A007: operator()&, claims::loader::LoadPacket*&> (match_case.hpp:134) +==10647== by 0xB7A007: apply_args, 0l, 1l, caf::detail::pseudo_tuple, claims::loader::LoadPacket*> > (apply_args.hpp:40) +==10647== by 0xB7A007: caf::trivial_match_case, claims::loader::LoadPacket*)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 64 bytes in 1 blocks are possibly lost in loss record 1,706 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F750: allocate (new_allocator.h:104) +==10647== by 0xB3F750: _M_get_node (stl_tree.h:370) +==10647== by 0xB3F750: std::_Rb_tree_node, std::allocator > > > >* std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_create_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (stl_tree.h:403) +==10647== by 0xB3F889: _M_clone_node (stl_tree.h:429) +==10647== by 0xB3F889: std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_copy(std::_Rb_tree_node, std::allocator > > > > const*, std::_Rb_tree_node, std::allocator > > > >*) (stl_tree.h:1087) +==10647== by 0xB40295: _Rb_tree (stl_tree.h:659) +==10647== by 0xB40295: map (stl_map.h:181) +==10647== by 0xB40295: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 66 bytes in 2 blocks are possibly lost in loss record 1,708 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B957: std::basic_string, std::allocator >::basic_string(char const*, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB17527: AstExprUnary::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_expr_node.cpp:300) +==10647== by 0xB0F65F: AstSelectStmt::GetLogicalPlanOfAggeration(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1682) +==10647== by 0xB0F7DA: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1753) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 72 bytes in 1 blocks are possibly lost in loss record 1,830 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x79DD92C: (anonymous namespace)::batchAllocateMonitors() (Threading.cpp:575) +==10647== by 0x79E0A8F: decaf::internal::util::concurrent::Threading::initialize() (Threading.cpp:823) +==10647== by 0x7994E89: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:76) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 72 bytes in 1 blocks are possibly lost in loss record 1,831 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBDE70E: allocate (new_allocator.h:104) +==10647== by 0xBDE70E: _M_allocate (stl_vector.h:168) +==10647== by 0xBDE70E: _M_create_storage (stl_vector.h:181) +==10647== by 0xBDE70E: _Vector_base (stl_vector.h:136) +==10647== by 0xBDE70E: vector (stl_vector.h:312) +==10647== by 0xBDE70E: Schema::Schema(std::vector > const&) (Schema.cpp:13) +==10647== by 0xBDEFBD: SchemaFix::SchemaFix(std::vector > const&) (SchemaFix.cpp:53) +==10647== by 0xB37D87: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3DEE9: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:211) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 73 bytes in 1 blocks are possibly lost in loss record 1,834 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79A1084: substr (basic_string.h:2208) +==10647== by 0x79A1084: decaf::internal::net::URIHelper::parseURI(std::string const&, bool) (URIHelper.cpp:123) +==10647== by 0x7A34BFB: decaf::net::URI::parseURI(std::string const&, bool) (URI.cpp:252) +==10647== by 0x7A34F80: decaf::net::URI::URI(std::string const&) (URI.cpp:53) +==10647== by 0x7921C56: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:296) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== +==10647== 73 bytes in 1 blocks are possibly lost in loss record 1,835 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AA17: std::string::append(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB1D2CB: std::basic_string, std::allocator > std::operator+, std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2369) +==10647== by 0x7900D92: activemq::util::IdGenerator::generateId() const (IdGenerator.cpp:109) +==10647== by 0x773D233: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:291) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== +==10647== 73 bytes in 1 blocks are possibly lost in loss record 1,836 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AA17: std::string::append(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB1D2CB: std::basic_string, std::allocator > std::operator+, std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2369) +==10647== by 0x7900D92: activemq::util::IdGenerator::generateId() const (IdGenerator.cpp:109) +==10647== by 0x76FE85D: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1353) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 80 bytes in 1 blocks are possibly lost in loss record 1,862 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB175B5: AstExprUnary::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_expr_node.cpp:311) +==10647== by 0xB0F65F: AstSelectStmt::GetLogicalPlanOfAggeration(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1682) +==10647== by 0xB0F7DA: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1753) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 80 bytes in 1 blocks are possibly lost in loss record 1,863 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC0CDD: allocate (new_allocator.h:104) +==10647== by 0xBC0CDD: _M_allocate (stl_vector.h:168) +==10647== by 0xBC0CDD: _M_create_storage (stl_vector.h:181) +==10647== by 0xBC0CDD: _Vector_base (stl_vector.h:136) +==10647== by 0xBC0CDD: vector (stl_vector.h:270) +==10647== by 0xBC0CDD: PerformanceInfo::PerformanceInfo(ExpandabilityShrinkability*) (ExpandedThreadTracker.cpp:30) +==10647== by 0xAD0D59: ExpanderStatus (expander_tracker.h:133) +==10647== by 0xAD0D59: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:182) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 81 bytes in 1 blocks are possibly lost in loss record 1,864 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AA17: std::string::append(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB1D2CB: std::basic_string, std::allocator > std::operator+, std::allocator >(std::basic_string, std::allocator > const&, std::basic_string, std::allocator > const&) (basic_string.h:2369) +==10647== by 0x78FC060: activemq::util::AdvisorySupport::getTempDestinationCompositeAdvisoryTopic() (AdvisorySupport.cpp:82) +==10647== by 0x778BB74: activemq::core::AdvisoryConsumer::AdvisoryConsumer(activemq::core::ActiveMQConnection*, decaf::lang::Pointer) (AdvisoryConsumer.cpp:68) +==10647== by 0x76FEAA0: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1364) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 83 bytes in 2 blocks are possibly lost in loss record 1,865 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A6049B: substr (basic_string.h:2208) +==10647== by 0x7A6049B: decaf::util::StringTokenizer::nextToken() (StringTokenizer.cpp:98) +==10647== by 0x7921008: activemq::util::URISupport::parseQuery(std::string, decaf::util::Properties*) (URISupport.cpp:146) +==10647== by 0x7921457: activemq::util::URISupport::parseQuery(std::string) (URISupport.cpp:103) +==10647== by 0x78F40E9: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:71) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== by 0x7885145: activemq::threads::CompositeTaskRunner::iterate() (CompositeTaskRunner.cpp:224) +==10647== by 0x7884DB1: activemq::threads::CompositeTaskRunner::run() (CompositeTaskRunner.cpp:170) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,892 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EACD84: allocate (new_allocator.h:104) +==10647== by 0x4EACD84: std::_Hashtable, std::equal_to, std::allocator > > >, std::allocator, std::equal_to, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.208] (hashtable.h:779) +==10647== by 0x4EB1819: _Hashtable (hashtable.h:831) +==10647== by 0x4EB1819: _Hashtable (hashtable.h:397) +==10647== by 0x4EB1819: unordered_map (unordered_map.h:142) +==10647== by 0x4EB1819: cr_state*> (actor_registry.cpp:189) +==10647== by 0x4EB1819: caf::stateful_actor::initialize() (stateful_actor.hpp:87) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,893 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EACDD4: allocate (new_allocator.h:104) +==10647== by 0x4EACDD4: std::_Hashtable, std::equal_to, std::allocator > >, std::allocator, std::equal_to, std::allocator > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.219] (hashtable.h:779) +==10647== by 0x4EB1876: _Hashtable (hashtable.h:831) +==10647== by 0x4EB1876: _Hashtable (hashtable.h:397) +==10647== by 0x4EB1876: unordered_map (unordered_map.h:142) +==10647== by 0x4EB1876: cr_state*> (actor_registry.cpp:189) +==10647== by 0x4EB1876: caf::stateful_actor::initialize() (stateful_actor.hpp:87) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,894 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3D014: allocate (new_allocator.h:104) +==10647== by 0xB3D014: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.174] (hashtable.h:779) +==10647== by 0xB3F1B6: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:889) +==10647== by 0xB4021A: unordered_map (unordered_map.h:168) +==10647== by 0xB4021A: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,895 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3D014: allocate (new_allocator.h:104) +==10647== by 0xB3D014: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.174] (hashtable.h:779) +==10647== by 0xB3F1B6: std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:889) +==10647== by 0xB4022A: unordered_map (unordered_map.h:168) +==10647== by 0xB4022A: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,896 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3D064: allocate (new_allocator.h:104) +==10647== by 0xB3D064: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.175] (hashtable.h:779) +==10647== by 0xB3F3D6: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:889) +==10647== by 0xB40240: unordered_map (unordered_map.h:168) +==10647== by 0xB40240: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 88 bytes in 1 blocks are possibly lost in loss record 1,897 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB74CDF: PartitionStorage::CheckAndAppendChunkList(unsigned int, bool) (PartitionStorage.cpp:409) +==10647== by 0xB74E77: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:320) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 89 bytes in 1 blocks are possibly lost in loss record 1,898 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AA17: std::string::append(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7A62E96: toString (UUID.cpp:137) +==10647== by 0x7A62E96: decaf::util::UUID::toString() const (UUID.cpp:195) +==10647== by 0x79324EE: activemq::wireformat::openwire::OpenWireFormat::OpenWireFormat(decaf::util::Properties const&) (OpenWireFormat.cpp:60) +==10647== by 0x7935351: activemq::wireformat::openwire::OpenWireFormatFactory::createWireFormat(decaf::util::Properties const&) (OpenWireFormatFactory.cpp:66) +==10647== by 0x78948CF: activemq::transport::AbstractTransportFactory::createWireFormat(decaf::util::Properties const&) (AbstractTransportFactory.cpp:48) +==10647== by 0x78F410F: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:73) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== by 0x78D5BAF: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:924) +==10647== +==10647== 95 bytes in 1 blocks are possibly lost in loss record 1,900 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79A1378: substr (basic_string.h:2208) +==10647== by 0x79A1378: decaf::internal::net::URIHelper::parseURI(std::string const&, bool) (URIHelper.cpp:99) +==10647== by 0x7A34BFB: decaf::net::URI::parseURI(std::string const&, bool) (URI.cpp:252) +==10647== by 0x7A34F80: decaf::net::URI::URI(std::string const&) (URI.cpp:53) +==10647== by 0x7921C56: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:296) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== +==10647== 96 bytes in 1 blocks are possibly lost in loss record 1,915 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x1074A7A: llvm::Pass* llvm::callDefaultCtor<(anonymous namespace)::MachineScheduler>() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF24EAC: llvm::TargetPassConfig::addPass(void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF253D3: llvm::TargetPassConfig::addOptimizedRegAlloc(llvm::FunctionPass*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF257F3: llvm::TargetPassConfig::addMachinePasses() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC904B: addPassesToGenerateCode(llvm::LLVMTargetMachine*, llvm::legacy::PassManagerBase&, bool, void const*, void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC9099: llvm::LLVMTargetMachine::addPassesToEmitMachineCode(llvm::legacy::PassManagerBase&, llvm::JITCodeEmitter&, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BC3C: llvm::JIT::JIT(llvm::Module*, llvm::TargetMachine&, llvm::TargetJITInfo&, llvm::JITMemoryManager*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BD0E: llvm::JIT::createJIT(llvm::Module*, std::string*, llvm::JITMemoryManager*, bool, llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x11FE6C6: llvm::EngineBuilder::create(llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2D6: create (ExecutionEngine.h:723) +==10647== by 0xBBB2D6: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== by 0xBBB5F4: CodeGenerator::getInstance() (CodeGenerator.cpp:28) +==10647== +==10647== 96 bytes in 1 blocks are possibly lost in loss record 1,916 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x1074920: llvm::MachineSchedContext::MachineSchedContext() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x1074A85: llvm::Pass* llvm::callDefaultCtor<(anonymous namespace)::MachineScheduler>() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF24EAC: llvm::TargetPassConfig::addPass(void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF253D3: llvm::TargetPassConfig::addOptimizedRegAlloc(llvm::FunctionPass*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xF257F3: llvm::TargetPassConfig::addMachinePasses() (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC904B: addPassesToGenerateCode(llvm::LLVMTargetMachine*, llvm::legacy::PassManagerBase&, bool, void const*, void const*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xEC9099: llvm::LLVMTargetMachine::addPassesToEmitMachineCode(llvm::legacy::PassManagerBase&, llvm::JITCodeEmitter&, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BC3C: llvm::JIT::JIT(llvm::Module*, llvm::TargetMachine&, llvm::TargetJITInfo&, llvm::JITMemoryManager*, bool) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xC1BD0E: llvm::JIT::createJIT(llvm::Module*, std::string*, llvm::JITMemoryManager*, bool, llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0x11FE6C6: llvm::EngineBuilder::create(llvm::TargetMachine*) (in /home/imdb/git/CLAIMS/build/claimsserver) +==10647== by 0xBBB2D6: create (ExecutionEngine.h:723) +==10647== by 0xBBB2D6: CodeGenerator::CodeGenerator() (CodeGenerator.cpp:66) +==10647== +==10647== 96 bytes in 3 blocks are possibly lost in loss record 1,917 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EAF46B: attach_functor (abstract_actor.hpp:67) +==10647== by 0x4EAF46B: caf::detail::actor_registry::put(unsigned int, caf::intrusive_ptr const&) (actor_registry.cpp:88) +==10647== by 0x4EAF59E: caf::detail::actor_registry::put(unsigned int, caf::actor_addr const&) (actor_registry.cpp:93) +==10647== by 0x51A683D: operator() (basp_broker.cpp:559) +==10647== by 0x51A683D: operator()&, caf::io::accept_handle&, short unsigned int&, caf::actor_addr&, std::set, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > > >&> (match_case.hpp:134) +==10647== by 0x51A683D: apply_args, 0l, 1l, 2l, 3l, 4l, caf::detail::pseudo_tuple, caf::io::accept_handle, short unsigned int, caf::actor_addr, std::set, std::allocator >, std::less, std::allocator > >, std::allocator, std::allocator > > > > > (apply_args.hpp:40) +==10647== by 0x51A683D: caf::trivial_match_case, caf::io::accept_handle, unsigned short, caf::actor_addr const&, std::set, std::allocator >&)#7}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x51B277A: operator() (abstract_broker.cpp:50) +==10647== by 0x51B277A: void caf::io::network::multiplexer::post(caf::io::abstract_broker::continuation)::impl::run() (multiplexer.hpp:149) +==10647== by 0x51B70D3: caf::io::network::default_multiplexer::handle_socket_event(int, int, caf::io::network::event_handler*) (default_multiplexer.cpp:691) +==10647== by 0x51B716C: caf::io::network::default_multiplexer::run() (default_multiplexer.cpp:326) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 96 bytes in 4 blocks are possibly lost in loss record 1,918 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC910D: OperateDate::duplicateOperator() const (data_type.h:788) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 96 bytes in 4 blocks are possibly lost in loss record 1,919 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC910D: OperateDate::duplicateOperator() const (data_type.h:788) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 96 bytes in 1 blocks are definitely lost in loss record 1,921 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB77FD4: ChunkStorage::CreateChunkReaderIterator() (ChunkStorage.cpp:187) +==10647== by 0xB74E9B: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:322) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 99 bytes in 1 blocks are possibly lost in loss record 1,922 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B41B: std::basic_string, std::allocator >::basic_string(std::string const&, unsigned long, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7921861: substr (basic_string.h:2208) +==10647== by 0x7921861: activemq::util::URISupport::splitComponents(std::string const&) (URISupport.cpp:344) +==10647== by 0x7921BEA: activemq::util::URISupport::parseComposite(decaf::net::URI const&, activemq::util::CompositeData&, std::string const&) (URISupport.cpp:293) +==10647== by 0x792231E: activemq::util::URISupport::parseComposite(decaf::net::URI const&) (URISupport.cpp:259) +==10647== by 0x78E1AAE: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:77) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== by 0x7742FD0: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:335) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== +==10647== 99 bytes in 3 blocks are possibly lost in loss record 1,923 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AF7B: std::basic_string, std::allocator >::basic_string(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB3AF9F: _Construct, const std::basic_string, std::allocator >&> (stl_construct.h:75) +==10647== by 0xB3AF9F: __uninit_copy<__gnu_cxx::__normal_iterator*, std::vector > >, std::basic_string*> (stl_uninitialized.h:75) +==10647== by 0xB3AF9F: uninitialized_copy<__gnu_cxx::__normal_iterator*, std::vector > >, std::basic_string*> (stl_uninitialized.h:117) +==10647== by 0xB3AF9F: __uninitialized_copy_a<__gnu_cxx::__normal_iterator*, std::vector > >, std::basic_string*, std::basic_string > (stl_uninitialized.h:258) +==10647== by 0xB3AF9F: std::vector >::vector(std::vector > const&) (stl_vector.h:316) +==10647== by 0xB3978D: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:178) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 107 bytes in 1 blocks are possibly lost in loss record 1,928 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9D5A5D: std::basic_string, std::allocator > std::operator+, std::allocator >(std::basic_string, std::allocator > const&, char const*) (basic_string.h:2406) +==10647== by 0x9D3E95: Config::initialize() (Config.cpp:164) +==10647== by 0x9D360E: Config::Config() (Config.cpp:118) +==10647== by 0x9D35A2: Config::getInstance() (Config.cpp:113) +==10647== by 0x97B558: main (Server.cpp:83) +==10647== +==10647== 110 bytes in 1 blocks are possibly lost in loss record 1,929 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xBB18F9: append (basic_string.h:1009) +==10647== by 0xBB18F9: operator+, std::allocator > (basic_string.h:2468) +==10647== by 0xBB18F9: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:905) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 117 bytes in 1 blocks are possibly lost in loss record 1,936 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x7900CE6: append (basic_string.h:1009) +==10647== by 0x7900CE6: operator+, std::allocator > (basic_string.h:2406) +==10647== by 0x7900CE6: activemq::util::IdGenerator::generateId() const (IdGenerator.cpp:103) +==10647== by 0x76FE85D: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1353) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 120 bytes in 1 blocks are possibly lost in loss record 1,951 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB4D04B: claims::physical_operator::PhysicalOperator::PhysicalOperator(unsigned int, unsigned int) (physical_operator.cpp:37) +==10647== by 0xB659F9: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 128 bytes in 2 blocks are possibly lost in loss record 1,975 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB17545: AstExprUnary::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_expr_node.cpp:300) +==10647== by 0xB0F65F: AstSelectStmt::GetLogicalPlanOfAggeration(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1682) +==10647== by 0xB0F7DA: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1753) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 144 bytes in 18 blocks are possibly lost in loss record 2,006 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9388F: allocate (new_allocator.h:104) +==10647== by 0xB9388F: _M_allocate (stl_vector.h:168) +==10647== by 0xB9388F: _M_allocate_and_copy > (stl_vector.h:1138) +==10647== by 0xB9388F: std::vector >::reserve(unsigned long) (vector.tcc:75) +==10647== by 0xB94CDE: operator() (collections_load_imp.hpp:126) +==10647== by 0xB94CDE: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:153) +==10647== by 0xB94CDE: load > (vector.hpp:73) +==10647== by 0xB94CDE: load > (vector.hpp:148) +==10647== by 0xB94CDE: invoke (split_free.hpp:58) +==10647== by 0xB94CDE: split_free > (split_free.hpp:74) +==10647== by 0xB94CDE: serialize > (vector.hpp:159) +==10647== by 0xB94CDE: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94CDE: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 144 bytes in 18 blocks are possibly lost in loss record 2,007 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9DEFF: allocate (new_allocator.h:104) +==10647== by 0xB9DEFF: _M_allocate (stl_vector.h:168) +==10647== by 0xB9DEFF: _M_allocate_and_copy > (stl_vector.h:1138) +==10647== by 0xB9DEFF: std::vector >::reserve(unsigned long) (vector.tcc:75) +==10647== by 0xB9E70C: operator() (collections_load_imp.hpp:126) +==10647== by 0xB9E70C: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:153) +==10647== by 0xB9E70C: load > (vector.hpp:73) +==10647== by 0xB9E70C: load > (vector.hpp:148) +==10647== by 0xB9E70C: invoke (split_free.hpp:58) +==10647== by 0xB9E70C: split_free > (split_free.hpp:74) +==10647== by 0xB9E70C: serialize > (vector.hpp:159) +==10647== by 0xB9E70C: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9E70C: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DC86: invoke > (iserializer.hpp:387) +==10647== by 0xB9DC86: invoke > (iserializer.hpp:439) +==10647== by 0xB9DC86: load > (iserializer.hpp:592) +==10647== by 0xB9DC86: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9DC86: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9DC86: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9DC86: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9DC86: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB9DC86: serialize (partitioner.h:322) +==10647== by 0xB9DC86: serialize (access.hpp:118) +==10647== by 0xB9DC86: serialize (serialization.hpp:69) +==10647== by 0xB9DC86: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DC86: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB958E9: invoke (iserializer.hpp:387) +==10647== by 0xB958E9: invoke (iserializer.hpp:439) +==10647== by 0xB958E9: load (iserializer.hpp:592) +==10647== by 0xB958E9: load_override (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB958E9: load (nvp.hpp:87) +==10647== by 0xB958E9: member_load > (access.hpp:101) +==10647== by 0xB958E9: invoke (split_member.hpp:54) +==10647== by 0xB958E9: split_member > (split_member.hpp:69) +==10647== by 0xB958E9: serialize (nvp.hpp:89) +==10647== by 0xB958E9: serialize > (access.hpp:118) +==10647== by 0xB958E9: serialize > (serialization.hpp:69) +==10647== by 0xB958E9: serialize_adl > (serialization.hpp:128) +==10647== by 0xB958E9: invoke > (iserializer.hpp:373) +==10647== by 0xB958E9: invoke > (iserializer.hpp:439) +==10647== by 0xB958E9: load > (iserializer.hpp:592) +==10647== by 0xB958E9: load_override > (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override > (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB958E9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 144 bytes in 18 blocks are possibly lost in loss record 2,008 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3AFDE: allocate (new_allocator.h:104) +==10647== by 0xB3AFDE: _M_allocate (stl_vector.h:168) +==10647== by 0xB3AFDE: _M_create_storage (stl_vector.h:181) +==10647== by 0xB3AFDE: _Vector_base (stl_vector.h:136) +==10647== by 0xB3AFDE: std::vector >::vector(std::vector > const&) (stl_vector.h:312) +==10647== by 0xBA5003: construct >, const std::vector, std::allocator >, std::allocator, std::allocator > > >&> (new_allocator.h:120) +==10647== by 0xBA5003: _S_construct >, const std::vector, std::allocator >, std::allocator, std::allocator > > >&> (alloc_traits.h:254) +==10647== by 0xBA5003: construct >, const std::vector, std::allocator >, std::allocator, std::allocator > > >&> (alloc_traits.h:393) +==10647== by 0xBA5003: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:408) +==10647== by 0xBA4C7D: push_back (stl_vector.h:911) +==10647== by 0xBA4C7D: claims::catalog::TableDescriptor::GetAllPartitionsPath() const (table.cpp:209) +==10647== by 0xBB7B93: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:60) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 144 bytes in 18 blocks are possibly lost in loss record 2,009 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB89E6: allocate (new_allocator.h:104) +==10647== by 0xBB89E6: _M_allocate (stl_vector.h:168) +==10647== by 0xBB89E6: _M_create_storage (stl_vector.h:181) +==10647== by 0xBB89E6: _Vector_base (stl_vector.h:136) +==10647== by 0xBB89E6: vector (stl_vector.h:312) +==10647== by 0xBB89E6: construct, const std::vector >&> (new_allocator.h:120) +==10647== by 0xBB89E6: _S_construct, const std::vector >&> (alloc_traits.h:254) +==10647== by 0xBB89E6: construct, const std::vector >&> (alloc_traits.h:393) +==10647== by 0xBB89E6: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:408) +==10647== by 0xBB8193: push_back (stl_vector.h:911) +==10647== by 0xBB8193: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:77) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 159 bytes in 1 blocks are possibly lost in loss record 2,016 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77ABBE: std::string::append(char const*, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x773D89A: append (basic_string.h:1009) +==10647== by 0x773D89A: operator+, std::allocator > (basic_string.h:2406) +==10647== by 0x773D89A: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:303) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== by 0x7741851: activemq::core::ActiveMQConnectionFactory::createActiveMQConnection(decaf::lang::Pointer const&, decaf::lang::Pointer const&) (ActiveMQConnectionFactory.cpp:381) +==10647== by 0x7743112: activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI const&, std::string const&, std::string const&, std::string const&) (ActiveMQConnectionFactory.cpp:345) +==10647== by 0xBBA83C: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:57) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== +==10647== 160 bytes in 10 blocks are possibly lost in loss record 2,022 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x76458CC: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x76458CC: Pointer (Pointer.h:79) +==10647== by 0x76458CC: ensureCapacity (ArrayList.h:137) +==10647== by 0x76458CC: ArrayList (ArrayList.h:50) +==10647== by 0x76458CC: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x76BD6A8: activemq::commands::ActiveMQTopic::ActiveMQTopic(std::string const&) (ActiveMQTopic.cpp:31) +==10647== by 0x78FC0B0: activemq::util::AdvisorySupport::getTempDestinationCompositeAdvisoryTopic() (AdvisorySupport.cpp:83) +==10647== by 0x778BB74: activemq::core::AdvisoryConsumer::AdvisoryConsumer(activemq::core::ActiveMQConnection*, decaf::lang::Pointer) (AdvisoryConsumer.cpp:68) +==10647== by 0x76FEAA0: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1364) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 160 bytes in 10 blocks are possibly lost in loss record 2,023 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x76458CC: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x76458CC: Pointer (Pointer.h:79) +==10647== by 0x76458CC: ensureCapacity (ArrayList.h:137) +==10647== by 0x76458CC: ArrayList (ArrayList.h:50) +==10647== by 0x76458CC: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 160 bytes in 10 blocks are possibly lost in loss record 2,024 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x764558C: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x764558C: Pointer (Pointer.h:79) +==10647== by 0x764558C: ensureCapacity (ArrayList.h:137) +==10647== by 0x764558C: ArrayList (ArrayList.h:50) +==10647== by 0x764558C: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7683FED: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:42) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 160 bytes in 10 blocks are possibly lost in loss record 2,025 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x764558C: AtomicRefCounter (AtomicRefCounter.h:41) +==10647== by 0x764558C: Pointer (Pointer.h:79) +==10647== by 0x764558C: ensureCapacity (ArrayList.h:137) +==10647== by 0x764558C: ArrayList (ArrayList.h:50) +==10647== by 0x764558C: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7944C2A: activemq::wireformat::openwire::marshal::generated::ActiveMQQueueMarshaller::createObject() const (ActiveMQQueueMarshaller.cpp:45) +==10647== by 0x7934081: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:400) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== by 0x796B014: activemq::wireformat::openwire::marshal::generated::MessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageMarshaller.cpp:58) +==10647== by 0x7947302: activemq::wireformat::openwire::marshal::generated::ActiveMQTextMessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQTextMessageMarshaller.cpp:58) +==10647== by 0x79340A7: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:411) +==10647== by 0x79394C5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalNestedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:121) +==10647== by 0x7967D30: activemq::wireformat::openwire::marshal::generated::MessageDispatchMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageDispatchMarshaller.cpp:67) +==10647== by 0x7932F6A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:295) +==10647== +==10647== 168 bytes in 7 blocks are possibly lost in loss record 2,035 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC901D: OperateInt::duplicateOperator() const (data_type.h:359) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 168 bytes in 7 blocks are possibly lost in loss record 2,036 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC901D: OperateInt::duplicateOperator() const (data_type.h:359) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 172 bytes in 4 blocks are possibly lost in loss record 2,037 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AA17: std::string::append(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79C0FAC: operator+, std::allocator > (basic_string.h:2369) +==10647== by 0x79C0FAC: decaf::internal::security::ServiceRegistry::addProvider(decaf::security::Provider const*) (ServiceRegistry.cpp:82) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 184 bytes in 1 blocks are possibly lost in loss record 2,048 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x77E4F91: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 192 bytes in 1 blocks are possibly lost in loss record 2,056 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x80C2A89: apr_pool_create_unmanaged_ex (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x7994C60: decaf::internal::AprPool::getAprPool() const (AprPool.cpp:71) +==10647== by 0x79ACAAA: decaf::internal::net::tcp::TcpSocket::create() (TcpSocket.cpp:157) +==10647== by 0x7A30259: decaf::net::Socket::ensureCreated() const (Socket.cpp:715) +==10647== by 0x7A31F59: decaf::net::Socket::setKeepAlive(bool) (Socket.cpp:461) +==10647== by 0x78F372E: activemq::transport::tcp::TcpTransport::configureSocket(decaf::net::Socket*) (TcpTransport.cpp:245) +==10647== by 0x78F29C7: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:156) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 192 bytes in 12 blocks are definitely lost in loss record 2,059 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB51BE8: createIterator (BlockStream.h:106) +==10647== by 0xB51BE8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:234) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 240 bytes in 1 blocks are possibly lost in loss record 2,089 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA32FF3: std::enable_if, std::string, unsigned short)#1}>, caf::trivial_match_case, StorageBudgetMessage const&)#2}>, caf::trivial_match_case)#3}>, caf::catch_all_match_case > > >::value, caf::intrusive_ptr, std::string, unsigned short)#1}, {lambda(caf::atom_constant<(caf::atom_value)69881078639402>, StorageBudgetMessage const&)#2}, caf::atom_constant<(caf::atom_value)262921145>, caf::trivial_match_case)#3}> const&> const> >::type caf::make_counted, std::string, unsigned short)#1}>, caf::trivial_match_case, StorageBudgetMessage const&)#2}>, caf::trivial_match_case)#3}>, caf::catch_all_match_case > >, std::tuple, std::string, unsigned short)#1}, {lambda(caf::atom_constant<(caf::atom_value)69881078639402>, StorageBudgetMessage const&)#2}, caf::atom_constant<(caf::atom_value)262921145>, caf::trivial_match_case)#3}> const&> const&>(std::tuple, std::string, unsigned short)#1}, {lambda(caf::atom_constant<(caf::atom_value)69881078639402>, StorageBudgetMessage const&)#2}, caf::atom_constant<(caf::atom_value)262921145>, caf::trivial_match_case)#3}> const&> const&) (make_counted.hpp:53) +==10647== by 0xA33280: make_behavior_eor, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&> (behavior_impl.hpp:161) +==10647== by 0xA33280: caf::intrusive_ptr, std::string, unsigned short)#1}>, caf::trivial_match_case, StorageBudgetMessage const&)#2}>, caf::trivial_match_case)#3}>, caf::catch_all_match_case > > > caf::detail::make_behavior_ra, std::string, unsigned short)#1}>, caf::trivial_match_case, StorageBudgetMessage const&)#2}>, caf::trivial_match_case)#3}>, caf::catch_all_match_case > >, {lambda(caf::atom_constant<(caf::atom_value)4466951458101943>, std::string, unsigned short)#1}, StorageBudgetMessage const&, caf::trivial_match_case, StorageBudgetMessage const&)#2}>, caf::trivial_match_case)#3}> >(caf::detail::tail_argument_token const&, {lambda(caf::atom_constant<(caf::atom_value)4466951458101943>, std::string, unsigned short)#1} const&, StorageBudgetMessage const& const&, caf::trivial_match_case, StorageBudgetMessage const&)#2}> const&, caf::trivial_match_case)#3}> const&) (behavior_impl.hpp:214) +==10647== by 0xA33433: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::MasterNodeActor::MainWork()::__lambda26, claims::MasterNodeActor::MainWork()::__lambda27, claims::MasterNodeActor::MainWork()::__lambda28> (behavior_impl.hpp:224) +==10647== by 0xA33433: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::MasterNodeActor::MainWork()::__lambda28, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::MasterNodeActor::MainWork()::__lambda26, claims::MasterNodeActor::MainWork()::__lambda27> (behavior_impl.hpp:224) +==10647== by 0xA33433: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::MasterNodeActor::MainWork()::__lambda27, claims::MasterNodeActor::MainWork()::__lambda28, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::MasterNodeActor::MainWork()::__lambda26> (behavior_impl.hpp:224) +==10647== by 0xA33433: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::MasterNodeActor::MainWork()::__lambda26, claims::MasterNodeActor::MainWork()::__lambda27, claims::MasterNodeActor::MainWork()::__lambda28, caf::catch_all_match_case, caf::detail::tail_argument_token> (behavior_impl.hpp:224) +==10647== by 0xA33433: make_behavior > (behavior_impl.hpp:244) +==10647== by 0xA33433: assign > (behavior.hpp:71) +==10647== by 0xA33433: behavior > (behavior.hpp:58) +==10647== by 0xA33433: MainWork (master_node.cpp:89) +==10647== by 0xA33433: claims::MasterNodeActor::make_behavior() (master_node.cpp:54) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 256 bytes in 1 blocks are possibly lost in loss record 2,102 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAD0D4B: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:182) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 272 bytes in 1 blocks are possibly lost in loss record 2,117 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7A5BB92: decaf::util::Properties::Properties() (Properties.cpp:115) +==10647== by 0x78F88F0: activemq::util::ActiveMQProperties::ActiveMQProperties() (ActiveMQProperties.cpp:26) +==10647== by 0x76459B5: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 288 bytes in 9 blocks are possibly lost in loss record 2,128 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC91FD: OperateDecimal::duplicateOperator() const (data_type.h:1260) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 288 bytes in 9 blocks are possibly lost in loss record 2,129 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC91FD: OperateDecimal::duplicateOperator() const (data_type.h:1260) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 328 bytes in 1 blocks are possibly lost in loss record 2,157 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x764588D: ensureCapacity (ArrayList.h:137) +==10647== by 0x764588D: ArrayList (ArrayList.h:50) +==10647== by 0x764588D: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x76BD6A8: activemq::commands::ActiveMQTopic::ActiveMQTopic(std::string const&) (ActiveMQTopic.cpp:31) +==10647== by 0x78FC0B0: activemq::util::AdvisorySupport::getTempDestinationCompositeAdvisoryTopic() (AdvisorySupport.cpp:83) +==10647== by 0x778BB74: activemq::core::AdvisoryConsumer::AdvisoryConsumer(activemq::core::ActiveMQConnection*, decaf::lang::Pointer) (AdvisoryConsumer.cpp:68) +==10647== by 0x76FEAA0: activemq::core::ActiveMQConnection::ensureConnectionInfoSent() (ActiveMQConnection.cpp:1364) +==10647== by 0x77010AD: activemq::core::ActiveMQConnection::start() (ActiveMQConnection.cpp:858) +==10647== by 0xBBA902: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:68) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 328 bytes in 1 blocks are possibly lost in loss record 2,158 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x764588D: ensureCapacity (ArrayList.h:137) +==10647== by 0x764588D: ArrayList (ArrayList.h:50) +==10647== by 0x764588D: activemq::commands::ActiveMQDestination::ActiveMQDestination(std::string const&) (ActiveMQDestination.cpp:83) +==10647== by 0x7684038: activemq::commands::ActiveMQQueue::ActiveMQQueue(std::string const&) (ActiveMQQueue.cpp:28) +==10647== by 0x77E4F9F: activemq::core::kernels::ActiveMQSessionKernel::createQueue(std::string const&) (ActiveMQSessionKernel.cpp:755) +==10647== by 0x777609D: activemq::core::ActiveMQSession::createQueue(std::string const&) (ActiveMQSession.cpp:151) +==10647== by 0xBBAAD2: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:85) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 328 bytes in 1 blocks are possibly lost in loss record 2,159 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7645549: ensureCapacity (ArrayList.h:137) +==10647== by 0x7645549: ArrayList (ArrayList.h:50) +==10647== by 0x7645549: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7683FED: activemq::commands::ActiveMQQueue::cloneDataStructure() const (ActiveMQQueue.cpp:42) +==10647== by 0x77EE71C: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:578) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== by 0xBAD3D1: claims::loader::MasterLoader::Work(void*) (master_loader.cpp:867) +==10647== by 0xBB19EC: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:950) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== +==10647== 328 bytes in 1 blocks are possibly lost in loss record 2,160 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x7645549: ensureCapacity (ArrayList.h:137) +==10647== by 0x7645549: ArrayList (ArrayList.h:50) +==10647== by 0x7645549: activemq::commands::ActiveMQDestination::ActiveMQDestination() (ActiveMQDestination.cpp:76) +==10647== by 0x7683F98: activemq::commands::ActiveMQQueue::ActiveMQQueue() (ActiveMQQueue.cpp:24) +==10647== by 0x7944C2A: activemq::wireformat::openwire::marshal::generated::ActiveMQQueueMarshaller::createObject() const (ActiveMQQueueMarshaller.cpp:45) +==10647== by 0x7934081: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:400) +==10647== by 0x7938AC5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalCachedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:51) +==10647== by 0x796B014: activemq::wireformat::openwire::marshal::generated::MessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageMarshaller.cpp:58) +==10647== by 0x7947302: activemq::wireformat::openwire::marshal::generated::ActiveMQTextMessageMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (ActiveMQTextMessageMarshaller.cpp:58) +==10647== by 0x79340A7: activemq::wireformat::openwire::OpenWireFormat::tightUnmarshalNestedObject(decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (OpenWireFormat.cpp:411) +==10647== by 0x79394C5: activemq::wireformat::openwire::marshal::BaseDataStreamMarshaller::tightUnmarshalNestedObject(activemq::wireformat::openwire::OpenWireFormat*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (BaseDataStreamMarshaller.cpp:121) +==10647== by 0x7967D30: activemq::wireformat::openwire::marshal::generated::MessageDispatchMarshaller::tightUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*, activemq::wireformat::openwire::utils::BooleanStream*) (MessageDispatchMarshaller.cpp:67) +==10647== by 0x7932F6A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:295) +==10647== +==10647== 352 bytes in 1 blocks are possibly lost in loss record 2,172 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EADC15: make_counted, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, const std::tuple, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&>&> (make_counted.hpp:53) +==10647== by 0x4EADC15: make_behavior_eor, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&> (behavior_impl.hpp:161) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case > (behavior_impl.hpp:214) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::catch_all_match_case, caf::detail::tail_argument_token, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case, caf::detail::tail_argument_token, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case, caf::detail::tail_argument_token, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case, caf::detail::tail_argument_token, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case, caf::detail::tail_argument_token, caf::detail::actor_registry::initialize()::__lambda14::__lambda16> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::detail::actor_registry::initialize()::__lambda14::__lambda16, caf::detail::actor_registry::initialize()::__lambda14::__lambda17, caf::detail::actor_registry::initialize()::__lambda14::__lambda18, caf::detail::actor_registry::initialize()::__lambda14::__lambda19, caf::detail::actor_registry::initialize()::__lambda14::__lambda20, caf::catch_all_match_case, caf::detail::tail_argument_token> (behavior_impl.hpp:224) +==10647== by 0x4EADC15: make_behavior > (behavior_impl.hpp:244) +==10647== by 0x4EADC15: assign > (behavior.hpp:71) +==10647== by 0x4EADC15: behavior > (behavior.hpp:58) +==10647== by 0x4EADC15: operator() (actor_registry.cpp:271) +==10647== by 0x4EADC15: apply_moved_args_prefixed, caf::stateful_actor*> (apply_args.hpp:58) +==10647== by 0x4EADC15: apply (init_fun_factory.hpp:57) +==10647== by 0x4EADC15: operator() (init_fun_factory.hpp:50) +==10647== by 0x4EADC15: std::_Function_handler, caf::detail::actor_registry::initialize()::{lambda(caf::stateful_actor*)#1}, std::shared_ptr >, true, true> >::_M_invoke(std::_Any_data const&, caf::local_actor*) (functional:2057) +==10647== by 0x4EBD764: operator() (functional:2471) +==10647== by 0x4EBD764: caf::event_based_actor::make_behavior() (event_based_actor.cpp:52) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 383 bytes in 9 blocks are possibly lost in loss record 2,180 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACAF70: char* std::string::_S_construct(char const*, char const*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xA77B5DC: std::basic_string, std::allocator >::basic_string(char const*, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x79F33ED: decaf::io::DataInputStream::readUTF() (DataInputStream.cpp:302) +==10647== by 0x7940096: activemq::wireformat::openwire::marshal::PrimitiveTypesMarshaller::unmarshalPrimitiveMap(decaf::io::DataInputStream&, activemq::util::PrimitiveMap&) (PrimitiveTypesMarshaller.cpp:328) +==10647== by 0x79402F1: activemq::wireformat::openwire::marshal::PrimitiveTypesMarshaller::unmarshal(activemq::util::PrimitiveMap*, std::vector > const&) (PrimitiveTypesMarshaller.cpp:79) +==10647== by 0x76EF2A4: activemq::commands::WireFormatInfo::afterUnmarshal(activemq::wireformat::WireFormat*) (WireFormatInfo.cpp:328) +==10647== by 0x797EC8E: activemq::wireformat::openwire::marshal::generated::WireFormatInfoMarshaller::looseUnmarshal(activemq::wireformat::openwire::OpenWireFormat*, activemq::commands::DataStructure*, decaf::io::DataInputStream*) (WireFormatInfoMarshaller.cpp:129) +==10647== by 0x7932F8A: activemq::wireformat::openwire::OpenWireFormat::doUnmarshal(decaf::io::DataInputStream*) (OpenWireFormat.cpp:297) +==10647== by 0x79332F5: activemq::wireformat::openwire::OpenWireFormat::unmarshal(activemq::transport::Transport const*, decaf::io::DataInputStream*) (OpenWireFormat.cpp:230) +==10647== by 0x7896CC0: activemq::transport::IOTransport::run() (IOTransport.cpp:271) +==10647== +==10647== 384 bytes in 16 blocks are possibly lost in loss record 2,185 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x9DD7E2: column_type::initialize() (data_type.h:1480) +==10647== by 0xA19CD0: void column_type::serialize(boost::archive::text_iarchive&, unsigned int) (data_type.h:1459) +==10647== by 0xA19BF5: void boost::serialization::access::serialize(boost::archive::text_iarchive&, column_type&, unsigned int) (access.hpp:118) +==10647== by 0xA19B80: void boost::serialization::serialize(boost::archive::text_iarchive&, column_type&, unsigned int) (serialization.hpp:69) +==10647== by 0xA199D8: void boost::serialization::serialize_adl(boost::archive::text_iarchive&, column_type&, unsigned int) (serialization.hpp:128) +==10647== by 0xA19828: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB951CA: invoke (iserializer.hpp:387) +==10647== by 0xB951CA: invoke (iserializer.hpp:439) +==10647== by 0xB951CA: load (iserializer.hpp:592) +==10647== by 0xB951CA: load_override (common_iarchive.hpp:66) +==10647== by 0xB951CA: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB951CA: load_override (text_iarchive.hpp:82) +==10647== by 0xB951CA: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB951CA: load (nvp.hpp:87) +==10647== by 0xB951CA: member_load > (access.hpp:101) +==10647== by 0xB951CA: invoke (split_member.hpp:54) +==10647== by 0xB951CA: split_member > (split_member.hpp:69) +==10647== by 0xB951CA: serialize (nvp.hpp:89) +==10647== by 0xB951CA: serialize > (access.hpp:118) +==10647== by 0xB951CA: serialize > (serialization.hpp:69) +==10647== by 0xB951CA: serialize_adl > (serialization.hpp:128) +==10647== by 0xB951CA: invoke > (iserializer.hpp:373) +==10647== by 0xB951CA: invoke > (iserializer.hpp:439) +==10647== by 0xB951CA: load > (iserializer.hpp:592) +==10647== by 0xB951CA: load_override > (common_iarchive.hpp:66) +==10647== by 0xB951CA: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB951CA: load_override > (text_iarchive.hpp:82) +==10647== by 0xB951CA: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB951CA: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB965DF: invoke (iserializer.hpp:524) +==10647== by 0xB965DF: load (iserializer.hpp:592) +==10647== by 0xB965DF: load_override (common_iarchive.hpp:66) +==10647== by 0xB965DF: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB965DF: load_override (text_iarchive.hpp:82) +==10647== by 0xB965DF: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB965DF: operator& (interface_iarchive.hpp:67) +==10647== by 0xB965DF: serialize (attribute.h:192) +==10647== by 0xB965DF: serialize (access.hpp:118) +==10647== by 0xB965DF: serialize (serialization.hpp:69) +==10647== by 0xB965DF: serialize_adl (serialization.hpp:128) +==10647== by 0xB965DF: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 400 bytes in 1 blocks are possibly lost in loss record 2,194 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA38B2D: std::enable_if)#1}>, caf::trivial_match_case, std::string)#2}>, caf::trivial_match_case, ExchangeID)#3}>, caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>, caf::trivial_match_case, claims::SlaveNodeActor::make_behavior()::{lambda(caf::atom_constant<(caf::atom_value)4393150880406061>, ExchangeID)#3})#5}>, caf::trivial_match_case, unsigned int const&, std::string const&, unsigned short const&)#6}>, caf::trivial_match_case, std::pair, int, std::string)#7}>, caf::catch_all_match_case > > >::value, caf::intrusive_ptr)#1}>, caf::trivial_match_case, std::string)#2}>, caf::trivial_match_case, ExchangeID)#3}>, caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>, caf::trivial_match_case, claims::SlaveNodeActor::make_behavior()::{lambda(caf::atom_constant<(caf::atom_value)4393150880406061>, ExchangeID)#3})#5}>, caf::trivial_match_case, unsigned int const&, std::string const&, unsigned short const&)#6}>, caf::trivial_match_case, std::pair, int, std::string)#7}>, caf::catch_all_match_case > > > >::type caf::make_counted)#1}>, caf::trivial_match_case, std::string)#2}>, caf::trivial_match_case, ExchangeID)#3}>, caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>, caf::trivial_match_case, claims::SlaveNodeActor::make_behavior()::{lambda(caf::atom_constant<(caf::atom_value)4393150880406061>, ExchangeID)#3})#5}>, caf::trivial_match_case, unsigned int const&, std::string const&, unsigned short const&)#6}>, caf::trivial_match_case, std::pair, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&> (behavior_impl.hpp:161) +==10647== by 0xA390A1: caf::intrusive_ptr)#1}>, caf::trivial_match_case, std::string)#2}>, caf::trivial_match_case, ExchangeID)#3}>, caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>, caf::trivial_match_case, claims::SlaveNodeActor::make_behavior()::{lambda(caf::atom_constant<(caf::atom_value)4393150880406061>, ExchangeID)#3})#5}>, caf::trivial_match_case, unsigned int const&, std::string const&, unsigned short const&)#6}>, caf::trivial_match_case, std::pair, int, std::string)#7}>, caf::catch_all_match_case > > > caf::detail::make_behavior_ra)#1}>, caf::trivial_match_case, std::string)#2}>, caf::trivial_match_case, ExchangeID)#3}>, caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>, caf::trivial_match_case, claims::SlaveNodeActor::make_behavior()::{lambda(caf::atom_constant<(caf::atom_value)4393150880406061>, ExchangeID)#3})#5}>, caf::trivial_match_case, unsigned int const&, std::string const&, unsigned short const&)#6}>, caf::trivial_match_case, std::pair, int, std::string)#7}>, caf::catch_all_match_case > >, {lambda(caf::atom_constant<(caf::atom_value)262921145>)#1}, caf::atom_constant<(caf::atom_value)286166843643074995>, caf::atom_constant<(caf::atom_value)4393150880406061>, caf::trivial_match_case, ExchangeID)#3}>, {lambda(caf::atom_constant<(caf::atom_value)68701015960812>, PartitionID, unsigned int, unsigned int)#4}, unsigned int const&, {lambda(caf::atom_constant<(caf::atom_value)18012049464726866538>, unsigned int const&, std::string const&, unsigned short const&)#6}, std::pair>(caf::detail::tail_argument_token const&, {lambda(caf::atom_constant<(caf::atom_value)262921145>)#1} const&, caf::atom_constant<(caf::atom_value)286166843643074995> const&, caf::atom_constant<(caf::atom_value)4393150880406061> const&, caf::trivial_match_case, ExchangeID)#3}> const&, {lambda(caf::atom_constant<(caf::atom_value)68701015960812>, PartitionID, unsigned int, unsigned int)#4} const&, unsigned int const& const&, {lambda(caf::atom_constant<(caf::atom_value)18012049464726866538>, unsigned int const&, std::string const&, unsigned short const&)#6} const&, std::pair const&) (behavior_impl.h +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::SlaveNodeActor::make_behavior()::__lambda26> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::SlaveNodeActor::make_behavior()::__lambda26, claims::SlaveNodeActor::make_behavior()::__lambda27, claims::SlaveNodeActor::make_behavior()::__lambda28, claims::SlaveNodeActor::make_behavior()::__lambda29, claims::SlaveNodeActor::make_behavior()::__lambda30, claims::SlaveNodeActor::make_behavior()::__lambda31, claims::SlaveNodeActor::make_behavior()::__lambda32, caf::catch_all_match_case, caf::detail::tail_argument_token> (behavior_impl.hpp:224) +==10647== by 0xA394B4: make_behavior > (behavior_impl.hpp:244) +==10647== by 0xA394B4: assign > (behavior.hpp:71) +==10647== by 0xA394B4: behavior > (behavior.hpp:58) +==10647== by 0xA394B4: claims::SlaveNodeActor::make_behavior() (slave_node.cpp:121) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,199 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4ECB599: thread > (thread:135) +==10647== by 0x4ECB599: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:580) +==10647== by 0x4EA3090: spawn_impl (spawn.hpp:67) +==10647== by 0x4EA3090: spawn_class (spawn.hpp:78) +==10647== by 0x4EA3090: spawn (spawn.hpp:122) +==10647== by 0x4EA3090: caf::scheduler::abstract_coordinator::initialize() (abstract_coordinator.cpp:329) +==10647== by 0x4EA5825: caf::scheduler::coordinator::initialize() (coordinator.hpp:62) +==10647== by 0x4EE9288: lazy_get (singletons.hpp:101) +==10647== by 0x4EE9288: caf::detail::singletons::get_scheduling_coordinator() (singletons.cpp:126) +==10647== by 0x4ECB624: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:593) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,200 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4ECB599: thread > (thread:135) +==10647== by 0x4ECB599: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:580) +==10647== by 0x4EA546F: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)28, caf::blocking_actor, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*)>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*))::{lambda(caf::blocking_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)28, caf::blocking_actor, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*)>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*))::{lambda(caf::blocking_actor*)#1}) (spawn.hpp:67) +==10647== by 0x4EA5595: spawn_class (spawn.hpp:78) +==10647== by 0x4EA5595: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)28, caf::blocking_actor, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*)>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*)) (spawn.hpp:98) +==10647== by 0x4EA30B7: spawn_functor<(caf::spawn_options)28, caf::empty_before_launch_callback, void (*)(caf::blocking_actor*)> (spawn.hpp:109) +==10647== by 0x4EA30B7: spawn<(caf::spawn_options)28, void (*)(caf::blocking_actor*)> (spawn.hpp:133) +==10647== by 0x4EA30B7: caf::scheduler::abstract_coordinator::initialize() (abstract_coordinator.cpp:330) +==10647== by 0x4EA5825: caf::scheduler::coordinator::initialize() (coordinator.hpp:62) +==10647== by 0x4EE9288: lazy_get (singletons.hpp:101) +==10647== by 0x4EE9288: caf::detail::singletons::get_scheduling_coordinator() (singletons.cpp:126) +==10647== by 0x4ECB624: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:593) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,201 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xBF3E1C: ThreadPool::Init(int) (thread_pool.cpp:59) +==10647== by 0x9D8FCA: Environment::initializeThreadPool() (Environment.cpp:388) +==10647== by 0x9D7049: Environment::Environment(bool) (Environment.cpp:92) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,202 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9EA311: std::thread::thread(void* (*&&)(void*), decltype(nullptr)&&) (thread:135) +==10647== by 0x9D833F: Environment::InitLoader() (Environment.cpp:267) +==10647== by 0x9D70DC: Environment::Environment(bool) (Environment.cpp:99) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,203 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x9EA311: std::thread::thread(void* (*&&)(void*), decltype(nullptr)&&) (thread:135) +==10647== by 0x9D8422: Environment::InitLoader() (Environment.cpp:274) +==10647== by 0x9D70DC: Environment::Environment(bool) (Environment.cpp:99) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,204 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x51BCC5B: thread (thread:135) +==10647== by 0x51BCC5B: caf::io::middleman::initialize() (middleman.cpp:260) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,205 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4ECB599: thread > (thread:135) +==10647== by 0x4ECB599: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:580) +==10647== by 0x51BD2A6: spawn_impl (spawn.hpp:67) +==10647== by 0x51BD2A6: spawn_class (spawn.hpp:78) +==10647== by 0x51BD2A6: spawn (spawn.hpp:122) +==10647== by 0x51BD2A6: caf::io::middleman::initialize() (middleman.cpp:281) +==10647== by 0x51BB24C: lazy_get (singletons.hpp:101) +==10647== by 0x51BB24C: get_plugin_singleton (singletons.hpp:82) +==10647== by 0x51BB24C: caf::io::middleman::instance() (middleman.cpp:241) +==10647== by 0x51BB2C8: caf::io::get_middleman_actor() (middleman.cpp:333) +==10647== by 0x51C6FCE: caf::io::publish_impl(unsigned short, caf::actor_addr, std::set, std::allocator >, char const*, bool) (publish.cpp:51) +==10647== by 0xBB1566: publish (publish.hpp:48) +==10647== by 0xBB1566: claims::loader::MasterLoader::ConnectWithSlaves() (master_loader.cpp:302) +==10647== by 0xBB1800: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:880) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,206 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xAD0267: ExpanderTracker::ExpanderTracker() (expander_tracker.cpp:37) +==10647== by 0xAD0304: ExpanderTracker::getInstance() (expander_tracker.cpp:49) +==10647== by 0x9D72A9: Environment::Environment(bool) (Environment.cpp:130) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,207 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xAB85DB: ClientListener::configure() (ClaimsServer.cpp:143) +==10647== by 0x9D8EE4: Environment::initializeClientListener() (Environment.cpp:371) +==10647== by 0x9D73DD: Environment::Environment(bool) (Environment.cpp:140) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,208 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xAB85F9: ClientListener::configure() (ClaimsServer.cpp:149) +==10647== by 0x9D8EE4: Environment::initializeClientListener() (Environment.cpp:371) +==10647== by 0x9D73DD: Environment::Environment(bool) (Environment.cpp:140) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,209 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D9A: decaf::lang::Thread::Thread(decaf::lang::Runnable*, std::string const&) (Thread.cpp:102) +==10647== by 0x7884376: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:70) +==10647== by 0x78DF8CE: activemq::transport::failover::FailoverTransportImpl::FailoverTransportImpl(activemq::transport::failover::FailoverTransport*) (FailoverTransport.cpp:163) +==10647== by 0x78D0F3B: activemq::transport::failover::FailoverTransport::FailoverTransport() (FailoverTransport.cpp:284) +==10647== by 0x78E1AC3: activemq::transport::failover::FailoverTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::util::Properties const&) (FailoverTransportFactory.cpp:78) +==10647== by 0x78E1590: activemq::transport::failover::FailoverTransportFactory::create(decaf::net::URI const&) (FailoverTransportFactory.cpp:46) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,210 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23BCB: decaf::lang::Thread::Thread() (Thread.cpp:87) +==10647== by 0x7A607E9: decaf::util::Timer::Timer() (Timer.cpp:49) +==10647== by 0x7A74384: decaf::util::concurrent::ExecutorKernel::ExecutorKernel(decaf::util::concurrent::ThreadPoolExecutor*, int, int, long long, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*, decaf::util::concurrent::RejectedExecutionHandler*) (ThreadPoolExecutor.cpp:373) +==10647== by 0x7A6B080: decaf::util::concurrent::ThreadPoolExecutor::ThreadPoolExecutor(int, int, long long, decaf::util::concurrent::TimeUnit const&, decaf::util::concurrent::BlockingQueue*, decaf::util::concurrent::ThreadFactory*) (ThreadPoolExecutor.cpp:1435) +==10647== by 0x773D77D: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:300) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,211 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D4F: decaf::lang::Thread::Thread(std::string const&) (Thread.cpp:97) +==10647== by 0x7A608BF: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608BF: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x788DD97: activemq::threads::Scheduler::doStart() (Scheduler.cpp:130) +==10647== by 0x791B165: activemq::util::ServiceSupport::start() (ServiceSupport.cpp:56) +==10647== by 0x773D985: activemq::core::ConnectionConfig::ConnectionConfig(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:304) +==10647== by 0x76F8CA3: activemq::core::ActiveMQConnection::ActiveMQConnection(decaf::lang::Pointer, decaf::lang::Pointer) (ActiveMQConnection.cpp:491) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,212 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D4F: decaf::lang::Thread::Thread(std::string const&) (Thread.cpp:97) +==10647== by 0x7A608BF: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608BF: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x78E63F2: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E63F2: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,213 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D4F: decaf::lang::Thread::Thread(std::string const&) (Thread.cpp:97) +==10647== by 0x7A608BF: TimerImpl (Timer.cpp:51) +==10647== by 0x7A608BF: decaf::util::Timer::Timer(std::string const&) (Timer.cpp:204) +==10647== by 0x78E6440: InactivityMonitorData (InactivityMonitor.cpp:123) +==10647== by 0x78E6440: activemq::transport::inactivity::InactivityMonitor::InactivityMonitor(decaf::lang::Pointer, decaf::util::Properties const&, decaf::lang::Pointer) (InactivityMonitor.cpp:215) +==10647== by 0x78F48F1: activemq::transport::tcp::TcpTransportFactory::doCreateComposite(decaf::net::URI const&, decaf::lang::Pointer, decaf::util::Properties const&) (TcpTransportFactory.cpp:99) +==10647== by 0x78F4178: activemq::transport::tcp::TcpTransportFactory::createComposite(decaf::net::URI const&) (TcpTransportFactory.cpp:76) +==10647== by 0x78D5362: activemq::transport::failover::FailoverTransport::createTransport(decaf::net::URI const&) const (FailoverTransport.cpp:1038) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,214 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D9A: decaf::lang::Thread::Thread(decaf::lang::Runnable*, std::string const&) (Thread.cpp:102) +==10647== by 0x789601F: activemq::transport::IOTransport::start() (IOTransport.cpp:173) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== by 0x78D5BFB: activemq::transport::failover::FailoverTransport::iterate() (FailoverTransport.cpp:928) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,215 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D9A: decaf::lang::Thread::Thread(decaf::lang::Runnable*, std::string const&) (Thread.cpp:102) +==10647== by 0x7884376: activemq::threads::CompositeTaskRunner::CompositeTaskRunner() (CompositeTaskRunner.cpp:70) +==10647== by 0x78E6B54: activemq::transport::inactivity::InactivityMonitor::startMonitorThreads() (InactivityMonitor.cpp:439) +==10647== by 0x78E88E8: activemq::transport::inactivity::InactivityMonitor::onCommand(decaf::lang::Pointer) (InactivityMonitor.cpp:325) +==10647== by 0x78973F1: activemq::transport::TransportFilter::onCommand(decaf::lang::Pointer) (TransportFilter.cpp:91) +==10647== by 0x7895A8B: activemq::transport::IOTransport::fire(decaf::lang::Pointer) (IOTransport.cpp:115) +==10647== +==10647== 416 bytes in 1 blocks are possibly lost in loss record 2,216 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0x79E1B8D: decaf::internal::util::concurrent::PlatformThread::createNewThread(unsigned long*, void* (*)(void*), void*, int, long long, long long*) (PlatformThread.cpp:359) +==10647== by 0x79DEB54: createThreadInstance (Threading.cpp:365) +==10647== by 0x79DEB54: decaf::internal::util::concurrent::Threading::createNewThread(decaf::lang::Thread*, char const*, long long) (Threading.cpp:920) +==10647== by 0x7A239D3: decaf::lang::Thread::initializeSelf(decaf::lang::Runnable*, std::string const&, long long) (Thread.cpp:123) +==10647== by 0x7A23D9A: decaf::lang::Thread::Thread(decaf::lang::Runnable*, std::string const&) (Thread.cpp:102) +==10647== by 0x788C485: activemq::threads::DedicatedTaskRunner::DedicatedTaskRunner(activemq::threads::Task*) (DedicatedTaskRunner.cpp:37) +==10647== by 0x777FBD3: activemq::core::ActiveMQSessionExecutor::wakeup() (ActiveMQSessionExecutor.cpp:113) +==10647== by 0x77EEAF0: activemq::core::kernels::ActiveMQSessionKernel::createConsumer(cms::Destination const*, std::string const&, bool) (ActiveMQSessionKernel.cpp:604) +==10647== by 0x77718E8: activemq::core::ActiveMQSession::createConsumer(cms::Destination const*) (ActiveMQSession.cpp:94) +==10647== by 0xBBAA08: claims::loader::AMQConsumer::run(claims::loader::MasterLoader*) (AMQ_consumer.cpp:90) +==10647== +==10647== 432 bytes in 18 blocks are possibly lost in loss record 2,221 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9517D: invoke (iserializer.hpp:253) +==10647== by 0xB9517D: invoke (iserializer.hpp:263) +==10647== by 0xB9517D: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB965DF: invoke (iserializer.hpp:524) +==10647== by 0xB965DF: load (iserializer.hpp:592) +==10647== by 0xB965DF: load_override (common_iarchive.hpp:66) +==10647== by 0xB965DF: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB965DF: load_override (text_iarchive.hpp:82) +==10647== by 0xB965DF: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB965DF: operator& (interface_iarchive.hpp:67) +==10647== by 0xB965DF: serialize (attribute.h:192) +==10647== by 0xB965DF: serialize (access.hpp:118) +==10647== by 0xB965DF: serialize (serialization.hpp:69) +==10647== by 0xB965DF: serialize_adl (serialization.hpp:128) +==10647== by 0xB965DF: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DE1F: invoke (iserializer.hpp:387) +==10647== by 0xB9DE1F: invoke (iserializer.hpp:439) +==10647== by 0xB9DE1F: load (iserializer.hpp:592) +==10647== by 0xB9DE1F: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DE1F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DE1F: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DE1F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DE1F: load (nvp.hpp:87) +==10647== by 0xB9DE1F: member_load > (access.hpp:101) +==10647== by 0xB9DE1F: invoke (split_member.hpp:54) +==10647== by 0xB9DE1F: split_member > (split_member.hpp:69) +==10647== by 0xB9DE1F: serialize (nvp.hpp:89) +==10647== by 0xB9DE1F: serialize > (access.hpp:118) +==10647== by 0xB9DE1F: serialize > (serialization.hpp:69) +==10647== by 0xB9DE1F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9DE1F: invoke > (iserializer.hpp:373) +==10647== by 0xB9DE1F: invoke > (iserializer.hpp:439) +==10647== by 0xB9DE1F: load > (iserializer.hpp:592) +==10647== by 0xB9DE1F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9DE1F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9DE1F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9DE1F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9DE1F: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DBF6: invoke (iserializer.hpp:524) +==10647== by 0xB9DBF6: load (iserializer.hpp:592) +==10647== by 0xB9DBF6: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DBF6: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DBF6: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DBF6: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DBF6: operator& (interface_iarchive.hpp:67) +==10647== by 0xB9DBF6: serialize (partitioner.h:322) +==10647== by 0xB9DBF6: serialize (access.hpp:118) +==10647== by 0xB9DBF6: serialize (serialization.hpp:69) +==10647== by 0xB9DBF6: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DBF6: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB958E9: invoke (iserializer.hpp:387) +==10647== by 0xB958E9: invoke (iserializer.hpp:439) +==10647== by 0xB958E9: load (iserializer.hpp:592) +==10647== by 0xB958E9: load_override (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB958E9: load (nvp.hpp:87) +==10647== by 0xB958E9: member_load > (access.hpp:101) +==10647== by 0xB958E9: invoke (split_member.hpp:54) +==10647== by 0xB958E9: split_member > (split_member.hpp:69) +==10647== by 0xB958E9: serialize (nvp.hpp:89) +==10647== by 0xB958E9: serialize > (access.hpp:118) +==10647== by 0xB958E9: serialize > (serialization.hpp:69) +==10647== by 0xB958E9: serialize_adl > (serialization.hpp:128) +==10647== by 0xB958E9: invoke > (iserializer.hpp:373) +==10647== by 0xB958E9: invoke > (iserializer.hpp:439) +==10647== by 0xB958E9: load > (iserializer.hpp:592) +==10647== by 0xB958E9: load_override > (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override > (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB958E9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 432 bytes in 18 blocks are possibly lost in loss record 2,222 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBA4FD9: allocate (new_allocator.h:104) +==10647== by 0xBA4FD9: _M_allocate (stl_vector.h:168) +==10647== by 0xBA4FD9: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:404) +==10647== by 0xBA4C7D: push_back (stl_vector.h:911) +==10647== by 0xBA4C7D: claims::catalog::TableDescriptor::GetAllPartitionsPath() const (table.cpp:209) +==10647== by 0xBB7B93: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:60) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 432 bytes in 18 blocks are possibly lost in loss record 2,223 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB8332: claims::common::FileHandleImpFactory::CreateFileHandleImp(claims::common::FilePlatform, std::string) (file_handle_imp_factory.h:57) +==10647== by 0xBB7CF8: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:69) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 432 bytes in 18 blocks are possibly lost in loss record 2,224 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB8838: allocate (new_allocator.h:104) +==10647== by 0xBB8838: _M_allocate (stl_vector.h:168) +==10647== by 0xBB8838: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:404) +==10647== by 0xBB8193: push_back (stl_vector.h:911) +==10647== by 0xBB8193: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:77) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 432 bytes in 18 blocks are possibly lost in loss record 2,225 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB8FBE: allocate (new_allocator.h:104) +==10647== by 0xBB8FBE: _M_allocate (stl_vector.h:168) +==10647== by 0xBB8FBE: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:404) +==10647== by 0xBB81BD: push_back (stl_vector.h:911) +==10647== by 0xBB81BD: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:78) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 440 bytes in 1 blocks are possibly lost in loss record 2,230 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xC04AFE: make_counted, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, const std::tuple, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&>&> (make_counted.hpp:53) +==10647== by 0xC04AFE: make_behavior_eor, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&> (behavior_impl.hpp:161) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case > (behavior_impl.hpp:214) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnServer::make_behavior()::__lambda37> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnServer::make_behavior()::__lambda37, claims::txn::TxnServer::make_behavior()::__lambda38, claims::txn::TxnServer::make_behavior()::__lambda39, claims::txn::TxnServer::make_behavior()::__lambda40, claims::txn::TxnServer::make_behavior()::__lambda41, claims::txn::TxnServer::make_behavior()::__lambda42, claims::txn::TxnServer::make_behavior()::__lambda43, claims::txn::TxnServer::make_behavior()::__lambda44, caf::catch_all_match_case, caf::detail::tail_argument_token> (behavior_impl.hpp:224) +==10647== by 0xC04AFE: make_behavior > (behavior_impl.hpp:244) +==10647== by 0xC04AFE: assign > (behavior.hpp:71) +==10647== by 0xC04AFE: behavior > (behavior.hpp:58) +==10647== by 0xC04AFE: claims::txn::TxnServer::make_behavior() (txn_server.cpp:296) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 448 bytes in 8 blocks are possibly lost in loss record 2,235 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB72B46: allocate (new_allocator.h:104) +==10647== by 0xB72B46: allocate (allocate.hpp:546) +==10647== by 0xB72B46: construct (buckets.hpp:405) +==10647== by 0xB72B46: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB72B46: operator[] (unique.hpp:347) +==10647== by 0xB72B46: operator[] (unordered_map.hpp:1185) +==10647== by 0xB72B46: MemoryChunkStore::ApplyChunk(ChunkID, void*&) (MemoryManager.cpp:89) +==10647== by 0xB7793F: ChunkStorage::ApplyMemory() (ChunkStorage.cpp:86) +==10647== by 0xB748E1: PartitionStorage::AddRtChunkWithMemoryApply(unsigned int, unsigned int const&) (PartitionStorage.cpp:145) +==10647== by 0xB78AFF: claims::loader::SlaveLoader::StoreDataInMemory(claims::loader::LoadPacket const&) (slave_loader.cpp:349) +==10647== by 0xB7A007: operator() (slave_loader.cpp:465) +==10647== by 0xB7A007: operator()&, claims::loader::LoadPacket*&> (match_case.hpp:134) +==10647== by 0xB7A007: apply_args, 0l, 1l, caf::detail::pseudo_tuple, claims::loader::LoadPacket*> > (apply_args.hpp:40) +==10647== by 0xB7A007: caf::trivial_match_case, claims::loader::LoadPacket*)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== +==10647== 504 bytes in 1 blocks are possibly lost in loss record 2,243 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAD45D1: allocate (new_allocator.h:104) +==10647== by 0xAD45D1: _M_allocate_node (stl_deque.h:533) +==10647== by 0xAD45D1: _M_create_nodes (stl_deque.h:627) +==10647== by 0xAD45D1: std::_Deque_base >::_M_initialize_map(unsigned long) (stl_deque.h:601) +==10647== by 0xAD0E44: _Deque_base (stl_deque.h:453) +==10647== by 0xAD0E44: deque (stl_deque.h:783) +==10647== by 0xAD0E44: ExpanderStatus (expander_tracker.h:133) +==10647== by 0xAD0E44: ExpanderTracker::registerNewExpander(MonitorableBuffer*, ExpandabilityShrinkability*) (expander_tracker.cpp:182) +==10647== by 0xB551B6: claims::physical_operator::Expander::Open(claims::SegmentExecStatus*, unsigned int const&) (expander.cpp:95) +==10647== by 0xB50021: claims::physical_operator::ResultCollector::CollectResult(void*) (result_collector.cpp:162) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 568 bytes in 18 blocks are possibly lost in loss record 2,261 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AD35: std::string::append(unsigned long, char) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x543DFB1: boost::archive::text_iarchive_impl::load(std::string&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9E9DD: load_primitive > (iserializer.hpp:107) +==10647== by 0xB9E9DD: invoke > (iserializer.hpp:362) +==10647== by 0xB9E9DD: invoke > (iserializer.hpp:439) +==10647== by 0xB9E9DD: load > (iserializer.hpp:592) +==10647== by 0xB9E9DD: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9E9DD: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9E9DD: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9E9DD: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9E9DD: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB9E9DD: serialize (partitioner.h:102) +==10647== by 0xB9E9DD: serialize (access.hpp:118) +==10647== by 0xB9E9DD: serialize (serialization.hpp:69) +==10647== by 0xB9E9DD: serialize_adl (serialization.hpp:128) +==10647== by 0xB9E9DD: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB998A7: invoke (iserializer.hpp:387) +==10647== by 0xB998A7: invoke (iserializer.hpp:439) +==10647== by 0xB998A7: load (iserializer.hpp:592) +==10647== by 0xB998A7: load_override (common_iarchive.hpp:66) +==10647== by 0xB998A7: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB998A7: load_override (text_iarchive.hpp:82) +==10647== by 0xB998A7: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB998A7: load (nvp.hpp:87) +==10647== by 0xB998A7: member_load > (access.hpp:101) +==10647== by 0xB998A7: invoke (split_member.hpp:54) +==10647== by 0xB998A7: split_member > (split_member.hpp:69) +==10647== by 0xB998A7: serialize (nvp.hpp:89) +==10647== by 0xB998A7: serialize > (access.hpp:118) +==10647== by 0xB998A7: serialize > (serialization.hpp:69) +==10647== by 0xB998A7: serialize_adl > (serialization.hpp:128) +==10647== by 0xB998A7: invoke > (iserializer.hpp:373) +==10647== by 0xB998A7: invoke > (iserializer.hpp:439) +==10647== by 0xB998A7: load > (iserializer.hpp:592) +==10647== by 0xB998A7: load_override > (common_iarchive.hpp:66) +==10647== by 0xB998A7: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB998A7: load_override > (text_iarchive.hpp:82) +==10647== by 0xB998A7: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB998A7: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9E778: invoke (iserializer.hpp:524) +==10647== by 0xB9E778: load (iserializer.hpp:592) +==10647== by 0xB9E778: load_override (common_iarchive.hpp:66) +==10647== by 0xB9E778: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9E778: load_override (text_iarchive.hpp:82) +==10647== by 0xB9E778: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9E778: load (nvp.hpp:87) +==10647== by 0xB9E778: member_load > (access.hpp:101) +==10647== by 0xB9E778: invoke (split_member.hpp:54) +==10647== by 0xB9E778: split_member > (split_member.hpp:69) +==10647== by 0xB9E778: serialize (nvp.hpp:89) +==10647== by 0xB9E778: serialize > (access.hpp:118) +==10647== by 0xB9E778: serialize > (serialization.hpp:69) +==10647== by 0xB9E778: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9E778: invoke > (iserializer.hpp:373) +==10647== by 0xB9E778: invoke > (iserializer.hpp:439) +==10647== by 0xB9E778: load > (iserializer.hpp:592) +==10647== by 0xB9E778: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9E778: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9E778: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9E778: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9E778: operator() (collections_load_imp.hpp:64) +==10647== by 0xB9E778: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9E778: load > (vector.hpp:73) +==10647== by 0xB9E778: load > (vector.hpp:148) +==10647== by 0xB9E778: invoke (split_free.hpp:58) +==10647== by 0xB9E778: split_free > (split_free.hpp:74) +==10647== by 0xB9E778: serialize > (vector.hpp:159) +==10647== by 0xB9E778: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9E778: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 576 bytes in 18 blocks are possibly lost in loss record 2,263 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9DDB9: invoke (iserializer.hpp:253) +==10647== by 0xB9DDB9: invoke (iserializer.hpp:263) +==10647== by 0xB9DDB9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DBF6: invoke (iserializer.hpp:524) +==10647== by 0xB9DBF6: load (iserializer.hpp:592) +==10647== by 0xB9DBF6: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DBF6: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DBF6: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DBF6: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DBF6: operator& (interface_iarchive.hpp:67) +==10647== by 0xB9DBF6: serialize (partitioner.h:322) +==10647== by 0xB9DBF6: serialize (access.hpp:118) +==10647== by 0xB9DBF6: serialize (serialization.hpp:69) +==10647== by 0xB9DBF6: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DBF6: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB958E9: invoke (iserializer.hpp:387) +==10647== by 0xB958E9: invoke (iserializer.hpp:439) +==10647== by 0xB958E9: load (iserializer.hpp:592) +==10647== by 0xB958E9: load_override (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB958E9: load (nvp.hpp:87) +==10647== by 0xB958E9: member_load > (access.hpp:101) +==10647== by 0xB958E9: invoke (split_member.hpp:54) +==10647== by 0xB958E9: split_member > (split_member.hpp:69) +==10647== by 0xB958E9: serialize (nvp.hpp:89) +==10647== by 0xB958E9: serialize > (access.hpp:118) +==10647== by 0xB958E9: serialize > (serialization.hpp:69) +==10647== by 0xB958E9: serialize_adl > (serialization.hpp:128) +==10647== by 0xB958E9: invoke > (iserializer.hpp:373) +==10647== by 0xB958E9: invoke > (iserializer.hpp:439) +==10647== by 0xB958E9: load > (iserializer.hpp:592) +==10647== by 0xB958E9: load_override > (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override > (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB958E9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 576 bytes in 18 blocks are possibly lost in loss record 2,264 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB8EA31: allocate (new_allocator.h:104) +==10647== by 0xB8EA31: allocate (allocate.hpp:546) +==10647== by 0xB8EA31: boost::unordered::detail::node_constructor > > >::construct() (buckets.hpp:405) +==10647== by 0xB911DB: construct_with_value, std::allocator >, claims::catalog::TableDescriptor*>&> (buckets.hpp:345) +==10647== by 0xB911DB: emplace_impl, std::allocator >, claims::catalog::TableDescriptor*>&> (unique.hpp:409) +==10647== by 0xB911DB: emplace, std::allocator >, claims::catalog::TableDescriptor*>&> (unique.hpp:380) +==10647== by 0xB911DB: emplace, std::allocator >, claims::catalog::TableDescriptor*>&> (unordered_map.hpp:238) +==10647== by 0xB911DB: insert (unordered_map.hpp:382) +==10647== by 0xB911DB: operator() (unordered_map.hpp:122) +==10647== by 0xB911DB: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB902F7: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB902F7: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB902F7: operator&, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:67) +==10647== by 0xB902F7: serialize (catalog.h:130) +==10647== by 0xB902F7: serialize (access.hpp:118) +==10647== by 0xB902F7: serialize (serialization.hpp:69) +==10647== by 0xB902F7: serialize_adl (serialization.hpp:128) +==10647== by 0xB902F7: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB84DB9: invoke (iserializer.hpp:387) +==10647== by 0xB84DB9: invoke (iserializer.hpp:439) +==10647== by 0xB84DB9: load (iserializer.hpp:592) +==10647== by 0xB84DB9: load_override (common_iarchive.hpp:66) +==10647== by 0xB84DB9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB84DB9: load_override (text_iarchive.hpp:82) +==10647== by 0xB84DB9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB84DB9: claims::catalog::Catalog::restoreCatalog() (catalog.cpp:283) +==10647== by 0x9D6F31: Environment::Environment(bool) (Environment.cpp:83) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 576 bytes in 18 blocks are possibly lost in loss record 2,265 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB919F9: allocate (new_allocator.h:104) +==10647== by 0xB919F9: allocate (allocate.hpp:546) +==10647== by 0xB919F9: construct (buckets.hpp:405) +==10647== by 0xB919F9: construct_with_value&> (buckets.hpp:345) +==10647== by 0xB919F9: emplace_impl&> (unique.hpp:409) +==10647== by 0xB919F9: emplace&> (unique.hpp:380) +==10647== by 0xB919F9: emplace&> (unordered_map.hpp:238) +==10647== by 0xB919F9: insert (unordered_map.hpp:382) +==10647== by 0xB919F9: operator() (unordered_map.hpp:122) +==10647== by 0xB919F9: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB84DB9: invoke (iserializer.hpp:387) +==10647== by 0xB84DB9: invoke (iserializer.hpp:439) +==10647== by 0xB84DB9: load (iserializer.hpp:592) +==10647== by 0xB84DB9: load_override (common_iarchive.hpp:66) +==10647== by 0xB84DB9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB84DB9: load_override (text_iarchive.hpp:82) +==10647== by 0xB84DB9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB84DB9: claims::catalog::Catalog::restoreCatalog() (catalog.cpp:283) +==10647== by 0x9D6F31: Environment::Environment(bool) (Environment.cpp:83) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 576 (288 direct, 288 indirect) bytes in 12 blocks are definitely lost in loss record 2,269 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBD5F8C: claims::common::ExprNode::ExprNodeToAttr(int, unsigned int) (expr_node.cpp:79) +==10647== by 0xB2B86F: claims::logical_operator::LogicalAggregation::GetAggAttrsAfterAgg() const (logical_aggregation.cpp:403) +==10647== by 0xB2C077: claims::logical_operator::LogicalAggregation::GetAttrsAfterAgg() const (logical_aggregation.cpp:387) +==10647== by 0xB2C539: claims::logical_operator::LogicalAggregation::GetPlanContext() (logical_aggregation.cpp:156) +==10647== by 0xB11342: AstColumn::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_select_stmt.cpp:1396) +==10647== by 0xB0EEDD: AstSelectStmt::GetLogicalPlanOfProject(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1733) +==10647== by 0xB0F7A9: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1771) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 576 (288 direct, 288 indirect) bytes in 12 blocks are definitely lost in loss record 2,270 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB2EB81: operator= (attribute.h:81) +==10647== by 0xB2EB81: claims::logical_operator::PlanPartitioner::operator=(claims::logical_operator::PlanPartitioner const&) (plan_partitioner.h:47) +==10647== by 0xB2C56F: claims::logical_operator::LogicalAggregation::GetPlanContext() (logical_aggregation.cpp:158) +==10647== by 0xB11342: AstColumn::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_select_stmt.cpp:1396) +==10647== by 0xB0EEDD: AstSelectStmt::GetLogicalPlanOfProject(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1733) +==10647== by 0xB0F7A9: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1771) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 576 (288 direct, 288 indirect) bytes in 12 blocks are definitely lost in loss record 2,271 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBD5F8C: claims::common::ExprNode::ExprNodeToAttr(int, unsigned int) (expr_node.cpp:79) +==10647== by 0xB3BC2D: claims::logical_operator::LogicalProject::GetPlanContext() (logical_project.cpp:145) +==10647== by 0xB39B79: claims::logical_operator::LogicalQueryPlanRoot::GetPlanContext() (logical_query_plan_root.cpp:196) +==10647== by 0xAEA77F: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:224) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 602 bytes in 18 blocks are possibly lost in loss record 2,277 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AD35: std::string::append(unsigned long, char) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x543DFB1: boost::archive::text_iarchive_impl::load(std::string&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB930F3: load_primitive > (iserializer.hpp:107) +==10647== by 0xB930F3: invoke > (iserializer.hpp:362) +==10647== by 0xB930F3: invoke > (iserializer.hpp:439) +==10647== by 0xB930F3: load > (iserializer.hpp:592) +==10647== by 0xB930F3: load_override > (common_iarchive.hpp:66) +==10647== by 0xB930F3: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB930F3: load_override > (text_iarchive.hpp:82) +==10647== by 0xB930F3: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB930F3: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB930F3: serialize (table.h:225) +==10647== by 0xB930F3: serialize (access.hpp:118) +==10647== by 0xB930F3: serialize (serialization.hpp:69) +==10647== by 0xB930F3: serialize_adl (serialization.hpp:128) +==10647== by 0xB930F3: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 602 bytes in 18 blocks are possibly lost in loss record 2,278 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AF7B: std::basic_string, std::allocator >::basic_string(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xB911F5: pair (stl_pair.h:127) +==10647== by 0xB911F5: construct, claims::catalog::TableDescriptor*>, const std::pair, std::allocator >, claims::catalog::TableDescriptor*>&> (new_allocator.h:120) +==10647== by 0xB911F5: construct, claims::catalog::TableDescriptor*>, const std::pair, std::allocator >, claims::catalog::TableDescriptor*>&> (allocate.hpp:567) +==10647== by 0xB911F5: call_construct, claims::catalog::TableDescriptor*> > >, std::pair, claims::catalog::TableDescriptor*>, const std::pair, std::allocator >, claims::catalog::TableDescriptor*>&> (allocate.hpp:774) +==10647== by 0xB911F5: construct_value_impl, claims::catalog::TableDescriptor*> > >, std::pair, claims::catalog::TableDescriptor*>, const std::pair, std::allocator >, claims::catalog::TableDescriptor*>&> (allocate.hpp:948) +==10647== by 0xB911F5: construct_with_value, std::allocator >, claims::catalog::TableDescriptor*>&> (buckets.hpp:346) +==10647== by 0xB911F5: emplace_impl, std::allocator >, claims::catalog::TableDescriptor*>&> (unique.hpp:409) +==10647== by 0xB911F5: emplace, std::allocator >, claims::catalog::TableDescriptor*>&> (unique.hpp:380) +==10647== by 0xB911F5: emplace, std::allocator >, claims::catalog::TableDescriptor*>&> (unordered_map.hpp:238) +==10647== by 0xB911F5: insert (unordered_map.hpp:382) +==10647== by 0xB911F5: operator() (unordered_map.hpp:122) +==10647== by 0xB911F5: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB902F7: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB902F7: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB902F7: operator&, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:67) +==10647== by 0xB902F7: serialize (catalog.h:130) +==10647== by 0xB902F7: serialize (access.hpp:118) +==10647== by 0xB902F7: serialize (serialization.hpp:69) +==10647== by 0xB902F7: serialize_adl (serialization.hpp:128) +==10647== by 0xB902F7: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB84DB9: invoke (iserializer.hpp:387) +==10647== by 0xB84DB9: invoke (iserializer.hpp:439) +==10647== by 0xB84DB9: load (iserializer.hpp:592) +==10647== by 0xB84DB9: load_override (common_iarchive.hpp:66) +==10647== by 0xB84DB9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB84DB9: load_override (text_iarchive.hpp:82) +==10647== by 0xB84DB9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB84DB9: claims::catalog::Catalog::restoreCatalog() (catalog.cpp:283) +==10647== by 0x9D6F31: Environment::Environment(bool) (Environment.cpp:83) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 696 bytes in 29 blocks are possibly lost in loss record 2,294 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC90DD: OperateString::duplicateOperator() const (data_type.h:681) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 696 bytes in 29 blocks are possibly lost in loss record 2,295 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC90DD: OperateString::duplicateOperator() const (data_type.h:681) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 704 bytes in 1 blocks are possibly lost in loss record 2,297 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3DF63: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 704 bytes in 8 blocks are possibly lost in loss record 2,298 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB74892: PartitionStorage::AddRtChunkWithMemoryApply(unsigned int, unsigned int const&) (PartitionStorage.cpp:143) +==10647== by 0xB78AFF: claims::loader::SlaveLoader::StoreDataInMemory(claims::loader::LoadPacket const&) (slave_loader.cpp:349) +==10647== by 0xB7A007: operator() (slave_loader.cpp:465) +==10647== by 0xB7A007: operator()&, claims::loader::LoadPacket*&> (match_case.hpp:134) +==10647== by 0xB7A007: apply_args, 0l, 1l, caf::detail::pseudo_tuple, claims::loader::LoadPacket*> > (apply_args.hpp:40) +==10647== by 0xB7A007: caf::trivial_match_case, claims::loader::LoadPacket*)#1}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 720 bytes in 18 blocks are possibly lost in loss record 2,300 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9784D: invoke (iserializer.hpp:253) +==10647== by 0xB9784D: invoke (iserializer.hpp:263) +==10647== by 0xB9784D: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DC3C: invoke (iserializer.hpp:524) +==10647== by 0xB9DC3C: load (iserializer.hpp:592) +==10647== by 0xB9DC3C: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DC3C: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DC3C: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DC3C: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DC3C: operator& (interface_iarchive.hpp:67) +==10647== by 0xB9DC3C: serialize (partitioner.h:322) +==10647== by 0xB9DC3C: serialize (access.hpp:118) +==10647== by 0xB9DC3C: serialize (serialization.hpp:69) +==10647== by 0xB9DC3C: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DC3C: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB958E9: invoke (iserializer.hpp:387) +==10647== by 0xB958E9: invoke (iserializer.hpp:439) +==10647== by 0xB958E9: load (iserializer.hpp:592) +==10647== by 0xB958E9: load_override (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB958E9: load (nvp.hpp:87) +==10647== by 0xB958E9: member_load > (access.hpp:101) +==10647== by 0xB958E9: invoke (split_member.hpp:54) +==10647== by 0xB958E9: split_member > (split_member.hpp:69) +==10647== by 0xB958E9: serialize (nvp.hpp:89) +==10647== by 0xB958E9: serialize > (access.hpp:118) +==10647== by 0xB958E9: serialize > (serialization.hpp:69) +==10647== by 0xB958E9: serialize_adl > (serialization.hpp:128) +==10647== by 0xB958E9: invoke > (iserializer.hpp:373) +==10647== by 0xB958E9: invoke > (iserializer.hpp:439) +==10647== by 0xB958E9: load > (iserializer.hpp:592) +==10647== by 0xB958E9: load_override > (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override > (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB958E9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 720 bytes in 18 blocks are possibly lost in loss record 2,301 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBB8F4E: allocate (new_allocator.h:104) +==10647== by 0xBB8F4E: _M_allocate (stl_vector.h:168) +==10647== by 0xBB8F4E: _M_create_storage (stl_vector.h:181) +==10647== by 0xBB8F4E: _Vector_base (stl_vector.h:136) +==10647== by 0xBB8F4E: std::vector >::vector(std::vector > const&) (stl_vector.h:312) +==10647== by 0xBB8FE8: construct, const std::vector >&> (new_allocator.h:120) +==10647== by 0xBB8FE8: _S_construct, const std::vector >&> (alloc_traits.h:254) +==10647== by 0xBB8FE8: construct, const std::vector >&> (alloc_traits.h:393) +==10647== by 0xBB8FE8: void std::vector >, std::allocator > > >::_M_emplace_back_aux > const&>(std::vector > const&) (vector.tcc:408) +==10647== by 0xBB81BD: push_back (stl_vector.h:911) +==10647== by 0xBB81BD: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:78) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 720 bytes in 18 blocks are possibly lost in loss record 2,302 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB6E7F9: allocate (new_allocator.h:104) +==10647== by 0xB6E7F9: allocate (allocate.hpp:546) +==10647== by 0xB6E7F9: construct (buckets.hpp:405) +==10647== by 0xB6E7F9: construct_with_value, boost::tuples::tuple > (buckets.hpp:345) +==10647== by 0xB6E7F9: boost::unordered::detail::table_impl >, PartitionID, PartitionStorage*, boost::hash, std::equal_to > >::operator[](PartitionID const&) (unique.hpp:347) +==10647== by 0xB6D818: operator[] (unordered_map.hpp:1185) +==10647== by 0xB6D818: BlockManager::AddPartition(PartitionID const&, unsigned int const&, unsigned int const&) (BlockManager.cpp:372) +==10647== by 0xA3A0E8: operator() (slave_node.cpp:92) +==10647== by 0xA3A0E8: operator()&, PartitionID&, unsigned int&, unsigned int&> (match_case.hpp:118) +==10647== by 0xA3A0E8: apply_args, 0l, 1l, 2l, 3l, caf::detail::pseudo_tuple, PartitionID, unsigned int, unsigned int> > (apply_args.hpp:40) +==10647== by 0xA3A0E8: caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 783 bytes in 18 blocks are possibly lost in loss record 2,315 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A953: std::string::reserve(unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77AD35: std::string::append(unsigned long, char) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x543DFB1: boost::archive::text_iarchive_impl::load(std::string&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9658E: load_primitive > (iserializer.hpp:107) +==10647== by 0xB9658E: invoke > (iserializer.hpp:362) +==10647== by 0xB9658E: invoke > (iserializer.hpp:439) +==10647== by 0xB9658E: load > (iserializer.hpp:592) +==10647== by 0xB9658E: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9658E: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9658E: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9658E: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9658E: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB9658E: serialize (attribute.h:192) +==10647== by 0xB9658E: serialize (access.hpp:118) +==10647== by 0xB9658E: serialize (serialization.hpp:69) +==10647== by 0xB9658E: serialize_adl (serialization.hpp:128) +==10647== by 0xB9658E: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DE1F: invoke (iserializer.hpp:387) +==10647== by 0xB9DE1F: invoke (iserializer.hpp:439) +==10647== by 0xB9DE1F: load (iserializer.hpp:592) +==10647== by 0xB9DE1F: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DE1F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DE1F: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DE1F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DE1F: load (nvp.hpp:87) +==10647== by 0xB9DE1F: member_load > (access.hpp:101) +==10647== by 0xB9DE1F: invoke (split_member.hpp:54) +==10647== by 0xB9DE1F: split_member > (split_member.hpp:69) +==10647== by 0xB9DE1F: serialize (nvp.hpp:89) +==10647== by 0xB9DE1F: serialize > (access.hpp:118) +==10647== by 0xB9DE1F: serialize > (serialization.hpp:69) +==10647== by 0xB9DE1F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9DE1F: invoke > (iserializer.hpp:373) +==10647== by 0xB9DE1F: invoke > (iserializer.hpp:439) +==10647== by 0xB9DE1F: load > (iserializer.hpp:592) +==10647== by 0xB9DE1F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9DE1F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9DE1F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9DE1F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9DE1F: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DBF6: invoke (iserializer.hpp:524) +==10647== by 0xB9DBF6: load (iserializer.hpp:592) +==10647== by 0xB9DBF6: load_override (common_iarchive.hpp:66) +==10647== by 0xB9DBF6: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9DBF6: load_override (text_iarchive.hpp:82) +==10647== by 0xB9DBF6: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9DBF6: operator& (interface_iarchive.hpp:67) +==10647== by 0xB9DBF6: serialize (partitioner.h:322) +==10647== by 0xB9DBF6: serialize (access.hpp:118) +==10647== by 0xB9DBF6: serialize (serialization.hpp:69) +==10647== by 0xB9DBF6: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DBF6: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 954 (480 direct, 474 indirect) bytes in 12 blocks are definitely lost in loss record 2,410 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAFF9E1: yyuserAction(int, int, yyGLRStackItem*, yyGLRStack*, YYSTYPE*, ParseResult*) (sql.ypp:743) +==10647== by 0xB05224: yydoAction(yyGLRStack*, unsigned long, int, YYSTYPE*, ParseResult*) (sql.tab.cpp:4896) +==10647== by 0xB05469: yyglrReduce(yyGLRStack*, unsigned long, int, bool, ParseResult*) (sql.tab.cpp:4960) +==10647== by 0xB06141: yyparse(ParseResult*) (sql.tab.cpp:5682) +==10647== by 0xAF6721: Parser::CreateRawAST(std::string, std::string&) (parser.cpp:57) +==10647== by 0xAF6807: Parser::Parser(std::string, std::string&) (parser.cpp:38) +==10647== by 0xAE85E5: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:122) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,008 bytes in 18 blocks are possibly lost in loss record 2,414 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9982D: invoke (iserializer.hpp:253) +==10647== by 0xB9982D: invoke (iserializer.hpp:263) +==10647== by 0xB9982D: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9E778: invoke (iserializer.hpp:524) +==10647== by 0xB9E778: load (iserializer.hpp:592) +==10647== by 0xB9E778: load_override (common_iarchive.hpp:66) +==10647== by 0xB9E778: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB9E778: load_override (text_iarchive.hpp:82) +==10647== by 0xB9E778: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB9E778: load (nvp.hpp:87) +==10647== by 0xB9E778: member_load > (access.hpp:101) +==10647== by 0xB9E778: invoke (split_member.hpp:54) +==10647== by 0xB9E778: split_member > (split_member.hpp:69) +==10647== by 0xB9E778: serialize (nvp.hpp:89) +==10647== by 0xB9E778: serialize > (access.hpp:118) +==10647== by 0xB9E778: serialize > (serialization.hpp:69) +==10647== by 0xB9E778: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9E778: invoke > (iserializer.hpp:373) +==10647== by 0xB9E778: invoke > (iserializer.hpp:439) +==10647== by 0xB9E778: load > (iserializer.hpp:592) +==10647== by 0xB9E778: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9E778: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9E778: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9E778: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9E778: operator() (collections_load_imp.hpp:64) +==10647== by 0xB9E778: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9E778: load > (vector.hpp:73) +==10647== by 0xB9E778: load > (vector.hpp:148) +==10647== by 0xB9E778: invoke (split_free.hpp:58) +==10647== by 0xB9E778: split_free > (split_free.hpp:74) +==10647== by 0xB9E778: serialize > (vector.hpp:159) +==10647== by 0xB9E778: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9E778: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB9DC86: invoke > (iserializer.hpp:387) +==10647== by 0xB9DC86: invoke > (iserializer.hpp:439) +==10647== by 0xB9DC86: load > (iserializer.hpp:592) +==10647== by 0xB9DC86: load_override > (common_iarchive.hpp:66) +==10647== by 0xB9DC86: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB9DC86: load_override > (text_iarchive.hpp:82) +==10647== by 0xB9DC86: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB9DC86: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB9DC86: serialize (partitioner.h:322) +==10647== by 0xB9DC86: serialize (access.hpp:118) +==10647== by 0xB9DC86: serialize (serialization.hpp:69) +==10647== by 0xB9DC86: serialize_adl (serialization.hpp:128) +==10647== by 0xB9DC86: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB958E9: invoke (iserializer.hpp:387) +==10647== by 0xB958E9: invoke (iserializer.hpp:439) +==10647== by 0xB958E9: load (iserializer.hpp:592) +==10647== by 0xB958E9: load_override (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB958E9: load (nvp.hpp:87) +==10647== by 0xB958E9: member_load > (access.hpp:101) +==10647== by 0xB958E9: invoke (split_member.hpp:54) +==10647== by 0xB958E9: split_member > (split_member.hpp:69) +==10647== by 0xB958E9: serialize (nvp.hpp:89) +==10647== by 0xB958E9: serialize > (access.hpp:118) +==10647== by 0xB958E9: serialize > (serialization.hpp:69) +==10647== by 0xB958E9: serialize_adl > (serialization.hpp:128) +==10647== by 0xB958E9: invoke > (iserializer.hpp:373) +==10647== by 0xB958E9: invoke > (iserializer.hpp:439) +==10647== by 0xB958E9: load > (iserializer.hpp:592) +==10647== by 0xB958E9: load_override > (common_iarchive.hpp:66) +==10647== by 0xB958E9: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB958E9: load_override > (text_iarchive.hpp:82) +==10647== by 0xB958E9: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB958E9: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== +==10647== 1,056 bytes in 11 blocks are definitely lost in loss record 2,426 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB78145: ChunkStorage::CreateChunkReaderIterator() (ChunkStorage.cpp:144) +==10647== by 0xB74E9B: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:322) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,056 bytes in 11 blocks are definitely lost in loss record 2,427 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB78145: ChunkStorage::CreateChunkReaderIterator() (ChunkStorage.cpp:144) +==10647== by 0xB74FB1: PartitionStorage::TxnPartitionReaderIterator::NextBlock(BlockStreamBase*&) (PartitionStorage.cpp:355) +==10647== by 0xB65009: claims::physical_operator::PhysicalProjectionScan::Next(claims::SegmentExecStatus*, BlockStreamBase*) (physical_projection_scan.cpp:207) +==10647== by 0xB51BB8: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:231) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,200 bytes in 50 blocks are possibly lost in loss record 2,431 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC90AD: OperateULong::duplicateOperator() const (data_type.h:587) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 1,200 bytes in 50 blocks are possibly lost in loss record 2,432 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBC90AD: OperateULong::duplicateOperator() const (data_type.h:587) +==10647== by 0xAE5495: column_type (data_type.h:1394) +==10647== by 0xAE5495: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 1,248 bytes in 3 blocks are possibly lost in loss record 2,433 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xACBECF: Daemon::Daemon() (Daemon.cpp:43) +==10647== by 0xACBF8C: Daemon::getInstance() (Daemon.cpp:32) +==10647== by 0xABB53C: ClientListener::sendHandler(void*) (ClaimsServer.cpp:738) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,296 bytes in 18 blocks are possibly lost in loss record 2,434 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9587D: invoke (iserializer.hpp:253) +==10647== by 0xB9587D: invoke (iserializer.hpp:263) +==10647== by 0xB9587D: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99DA5: invoke (iserializer.hpp:524) +==10647== by 0xB99DA5: load (iserializer.hpp:592) +==10647== by 0xB99DA5: load_override (common_iarchive.hpp:66) +==10647== by 0xB99DA5: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB99DA5: load_override (text_iarchive.hpp:82) +==10647== by 0xB99DA5: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB99DA5: operator& (interface_iarchive.hpp:67) +==10647== by 0xB99DA5: serialize (projection.h:118) +==10647== by 0xB99DA5: serialize (access.hpp:118) +==10647== by 0xB99DA5: serialize (serialization.hpp:69) +==10647== by 0xB99DA5: serialize_adl (serialization.hpp:128) +==10647== by 0xB99DA5: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== +==10647== 1,306 bytes in 18 blocks are possibly lost in loss record 2,440 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xACB820: char* std::string::_S_construct(char*, char*, std::allocator const&, std::forward_iterator_tag) (basic_string.tcc:138) +==10647== by 0xBD0084: _S_construct_aux (basic_string.h:1725) +==10647== by 0xBD0084: _S_construct (basic_string.h:1746) +==10647== by 0xBD0084: basic_string (basic_string.tcc:229) +==10647== by 0xBD0084: str (sstream:133) +==10647== by 0xBD0084: str (sstream:472) +==10647== by 0xBD0084: PartitionID::getPathAndName() const (ids.cpp:16) +==10647== by 0xBA4BB9: claims::catalog::TableDescriptor::GetAllPartitionsPath() const (table.cpp:207) +==10647== by 0xBB7B93: claims::loader::TableFileConnector::TableFileConnector(claims::common::FilePlatform, claims::catalog::TableDescriptor*, claims::common::FileOpenFlag) (table_file_connector.cpp:60) +==10647== by 0xBA3866: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 1,392 (768 direct, 624 indirect) bytes in 12 blocks are definitely lost in loss record 2,442 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB37D79: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3B9E2: claims::logical_operator::LogicalProject::GetPlanContext() (logical_project.cpp:92) +==10647== by 0xB39B79: claims::logical_operator::LogicalQueryPlanRoot::GetPlanContext() (logical_query_plan_root.cpp:196) +==10647== by 0xAEA77F: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:224) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,392 (768 direct, 624 indirect) bytes in 12 blocks are definitely lost in loss record 2,443 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB37D79: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3BF8C: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:178) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,392 (768 direct, 624 indirect) bytes in 12 blocks are definitely lost in loss record 2,444 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB37D79: claims::logical_operator::LogicalOperator::GetSchema(std::vector > const&) const (logical_operator.cpp:51) +==10647== by 0xB3BF9B: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:179) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,664 bytes in 4 blocks are possibly lost in loss record 2,452 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4ECB599: thread > (thread:135) +==10647== by 0x4ECB599: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:580) +==10647== by 0xC062E6: spawn_impl (spawn.hpp:67) +==10647== by 0xC062E6: spawn_class (spawn.hpp:78) +==10647== by 0xC062E6: spawn (spawn.hpp:122) +==10647== by 0xC062E6: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:305) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 1,728 bytes in 18 blocks are possibly lost in loss record 2,456 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB920AD: invoke (iserializer.hpp:253) +==10647== by 0xB920AD: invoke (iserializer.hpp:263) +==10647== by 0xB920AD: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB902F7: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB902F7: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB902F7: operator&, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:67) +==10647== by 0xB902F7: serialize (catalog.h:130) +==10647== by 0xB902F7: serialize (access.hpp:118) +==10647== by 0xB902F7: serialize (serialization.hpp:69) +==10647== by 0xB902F7: serialize_adl (serialization.hpp:128) +==10647== by 0xB902F7: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB84DB9: invoke (iserializer.hpp:387) +==10647== by 0xB84DB9: invoke (iserializer.hpp:439) +==10647== by 0xB84DB9: load (iserializer.hpp:592) +==10647== by 0xB84DB9: load_override (common_iarchive.hpp:66) +==10647== by 0xB84DB9: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB84DB9: load_override (text_iarchive.hpp:82) +==10647== by 0xB84DB9: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB84DB9: claims::catalog::Catalog::restoreCatalog() (catalog.cpp:283) +==10647== by 0x9D6F31: Environment::Environment(bool) (Environment.cpp:83) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 1,760 bytes in 4 blocks are possibly lost in loss record 2,457 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xC056FF: make_counted, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, const std::tuple, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&>&> (make_counted.hpp:53) +==10647== by 0xC056FF: make_behavior_eor, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, const caf::catch_all_match_case&> (behavior_impl.hpp:161) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case > (behavior_impl.hpp:214) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token, claims::txn::TxnCore::make_behavior()::__lambda26> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior_ra, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::trivial_match_case, caf::catch_all_match_case > >, claims::txn::TxnCore::make_behavior()::__lambda26, claims::txn::TxnCore::make_behavior()::__lambda27, claims::txn::TxnCore::make_behavior()::__lambda28, claims::txn::TxnCore::make_behavior()::__lambda29, claims::txn::TxnCore::make_behavior()::__lambda30, claims::txn::TxnCore::make_behavior()::__lambda33, claims::txn::TxnCore::make_behavior()::__lambda34, claims::txn::TxnCore::make_behavior()::__lambda35, caf::catch_all_match_case, caf::detail::tail_argument_token> (behavior_impl.hpp:224) +==10647== by 0xC056FF: make_behavior > (behavior_impl.hpp:244) +==10647== by 0xC056FF: assign > (behavior.hpp:71) +==10647== by 0xC056FF: behavior > (behavior.hpp:58) +==10647== by 0xC056FF: claims::txn::TxnCore::make_behavior() (txn_server.cpp:222) +==10647== by 0x4EBD6AF: caf::event_based_actor::initialize() (event_based_actor.cpp:38) +==10647== by 0x4ECCF98: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:699) +==10647== by 0x4ECB9FE: operator() (local_actor.cpp:572) +==10647== by 0x4ECB9FE: _M_invoke<0ul> (functional:1732) +==10647== by 0x4ECB9FE: operator() (functional:1720) +==10647== by 0x4ECB9FE: std::thread::_Impl)#1} (caf::intrusive_ptr)> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 1,848 (1,056 direct, 792 indirect) bytes in 12 blocks are definitely lost in loss record 2,460 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB1167D: AstColumn::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_select_stmt.cpp:1421) +==10647== by 0xB0EEDD: AstSelectStmt::GetLogicalPlanOfProject(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1733) +==10647== by 0xB0F7A9: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1771) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 2,304 bytes in 18 blocks are possibly lost in loss record 2,469 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB6D7F9: BlockManager::AddPartition(PartitionID const&, unsigned int const&, unsigned int const&) (BlockManager.cpp:373) +==10647== by 0xA3A0E8: operator() (slave_node.cpp:92) +==10647== by 0xA3A0E8: operator()&, PartitionID&, unsigned int&, unsigned int&> (match_case.hpp:118) +==10647== by 0xA3A0E8: apply_args, 0l, 1l, 2l, 3l, caf::detail::pseudo_tuple, PartitionID, unsigned int, unsigned int> > (apply_args.hpp:40) +==10647== by 0xA3A0E8: caf::trivial_match_case, PartitionID, unsigned int, unsigned int)#4}>::invoke(caf::optional&, caf::optional&) (match_case.hpp:214) +==10647== by 0x4EB7F9C: caf::detail::behavior_impl::invoke(caf::message&) (behavior_impl.cpp:82) +==10647== by 0x4ECC202: operator() (behavior.hpp:97) +==10647== by 0x4ECC202: caf::local_actor::invoke_message(std::unique_ptr&, caf::behavior&, caf::message_id) (local_actor.cpp:470) +==10647== by 0x4ECC632: caf::local_actor::exec_event(std::unique_ptr&) (local_actor.cpp:776) +==10647== by 0x4ECCE7A: caf::local_actor::resume(caf::execution_unit*, unsigned long) (local_actor.cpp:715) +==10647== by 0x4EA48D2: run (worker.hpp:123) +==10647== by 0x4EA48D2: operator() (worker.hpp:56) +==10647== by 0x4EA48D2: _M_invoke<> (functional:1732) +==10647== by 0x4EA48D2: operator() (functional:1720) +==10647== by 0x4EA48D2: std::thread::_Impl::start()::{lambda()#1} ()> >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 2,376 bytes in 99 blocks are possibly lost in loss record 2,470 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAE5469: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 2,376 bytes in 99 blocks are possibly lost in loss record 2,471 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAE5469: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:72) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 2,592 bytes in 18 blocks are possibly lost in loss record 2,475 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBA3842: claims::catalog::TableDescriptor::InitFileConnector() (table.cpp:76) +==10647== by 0xB931AB: serialize (table.h:228) +==10647== by 0xB931AB: serialize (access.hpp:118) +==10647== by 0xB931AB: serialize (serialization.hpp:69) +==10647== by 0xB931AB: serialize_adl (serialization.hpp:128) +==10647== by 0xB931AB: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB902F7: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB902F7: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB902F7: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB902F7: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB902F7: operator&, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:67) +==10647== by 0xB902F7: serialize (catalog.h:130) +==10647== by 0xB902F7: serialize (access.hpp:118) +==10647== by 0xB902F7: serialize (serialization.hpp:69) +==10647== by 0xB902F7: serialize_adl (serialization.hpp:128) +==10647== by 0xB902F7: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 2,688 (768 direct, 1,920 indirect) bytes in 12 blocks are definitely lost in loss record 2,479 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB31291: claims::logical_operator::PlanContext::GetSchema() const (plan_context.cpp:72) +==10647== by 0xB2C3FE: claims::logical_operator::LogicalAggregation::GetPlanContext() (logical_aggregation.cpp:134) +==10647== by 0xB11342: AstColumn::GetLogicalPlan(claims::common::ExprNode*&, claims::logical_operator::LogicalOperator*, claims::logical_operator::LogicalOperator*) (ast_select_stmt.cpp:1396) +==10647== by 0xB0EEDD: AstSelectStmt::GetLogicalPlanOfProject(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1733) +==10647== by 0xB0F7A9: AstSelectStmt::GetLogicalPlan(claims::logical_operator::LogicalOperator*&) (ast_select_stmt.cpp:1771) +==10647== by 0xAEA6EC: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:212) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 2,719 (88 direct, 2,631 indirect) bytes in 1 blocks are definitely lost in loss record 2,480 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3D064: allocate (new_allocator.h:104) +==10647== by 0xB3D064: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_M_allocate_buckets(unsigned long) [clone .isra.175] (hashtable.h:779) +==10647== by 0xB3F3D6: std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::_Hashtable(std::_Hashtable, std::allocator > > >, std::allocator, std::allocator > > > >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits > const&) (hashtable.h:889) +==10647== by 0xB4020E: unordered_map (unordered_map.h:168) +==10647== by 0xB4020E: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 2,784 (1,920 direct, 864 indirect) bytes in 12 blocks are definitely lost in loss record 2,483 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xAF6E9E: yylex_init_extra(void*, void**) (lex.yy.c:4414) +==10647== by 0xAF66B8: Parser::CreateRawAST(std::string, std::string&) (parser.cpp:48) +==10647== by 0xAF6807: Parser::Parser(std::string, std::string&) (parser.cpp:38) +==10647== by 0xAE85E5: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:122) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 2,880 bytes in 18 blocks are possibly lost in loss record 2,485 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB94A5D: invoke (iserializer.hpp:253) +==10647== by 0xB94A5D: invoke (iserializer.hpp:263) +==10647== by 0xB94A5D: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:305) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== +==10647== 3,168 bytes in 18 blocks are possibly lost in loss record 2,494 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9373D: allocate (new_allocator.h:104) +==10647== by 0xB9373D: _M_allocate (stl_vector.h:168) +==10647== by 0xB9373D: _M_allocate_and_copy (stl_vector.h:1138) +==10647== by 0xB9373D: std::vector >::reserve(unsigned long) (vector.tcc:75) +==10647== by 0xB94832: operator() (collections_load_imp.hpp:126) +==10647== by 0xB94832: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:153) +==10647== by 0xB94832: load > (vector.hpp:73) +==10647== by 0xB94832: load > (vector.hpp:148) +==10647== by 0xB94832: invoke (split_free.hpp:58) +==10647== by 0xB94832: split_free > (split_free.hpp:74) +==10647== by 0xB94832: serialize > (vector.hpp:159) +==10647== by 0xB94832: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94832: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:387) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: load (nvp.hpp:87) +==10647== by 0xB910E1: member_load, claims::catalog::TableDescriptor*> > > (access.hpp:101) +==10647== by 0xB910E1: invoke (split_member.hpp:54) +==10647== by 0xB910E1: split_member, claims::catalog::TableDescriptor*> > > (split_member.hpp:69) +==10647== by 0xB910E1: serialize (nvp.hpp:89) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (access.hpp:118) +==10647== by 0xB910E1: serialize, claims::catalog::TableDescriptor*> > > (serialization.hpp:69) +==10647== by 0xB910E1: serialize_adl, claims::catalog::TableDescriptor*> > > (serialization.hpp:128) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:373) +==10647== by 0xB910E1: invoke, claims::catalog::TableDescriptor*> > > (iserializer.hpp:439) +==10647== by 0xB910E1: load, claims::catalog::TableDescriptor*> > > (iserializer.hpp:592) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (common_iarchive.hpp:66) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (basic_text_iarchive.hpp:65) +==10647== by 0xB910E1: load_override, claims::catalog::TableDescriptor*> > > (text_iarchive.hpp:82) +==10647== by 0xB910E1: operator>>, claims::catalog::TableDescriptor*> > > (interface_iarchive.hpp:60) +==10647== by 0xB910E1: operator() (unordered_map.hpp:120) +==10647== by 0xB910E1: void boost::serialization::stl::load_unordered_collection, std::equal_to, std::allocator > >, boost::serialization::stl::archive_input_unordered_map, std::equal_to, std::allocator > > > >(boost::archive::text_iarchive&, boost::unordered::unordered_map, std::equal_to, std::allocator > >&) (unordered_map.hpp:59) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 3,328 bytes in 8 blocks are possibly lost in loss record 2,508 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xA771486: std::thread::_M_start_thread(std::shared_ptr) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0x4EA5A78: thread::start() [with Policy = caf::policy::work_stealing]::__lambda9> (thread:135) +==10647== by 0x4EA5A78: start (worker.hpp:54) +==10647== by 0x4EA5A78: caf::scheduler::coordinator::initialize() (coordinator.hpp:71) +==10647== by 0x4EE9288: lazy_get (singletons.hpp:101) +==10647== by 0x4EE9288: caf::detail::singletons::get_scheduling_coordinator() (singletons.cpp:126) +==10647== by 0x4ECB624: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:593) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== by 0x9D6FCD: Environment::Environment(bool) (Environment.cpp:87) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 3,658 (960 direct, 2,698 indirect) bytes in 12 blocks are definitely lost in loss record 2,509 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBD9972: claims::common::ExprUnary::ExprCopy() (expr_unary.cpp:85) +==10647== by 0xB518CF: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:158) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 4,130 bytes in 97 blocks are possibly lost in loss record 2,519 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77B01B: std::string::assign(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xAE5446: operator= (basic_string.h:547) +==10647== by 0xAE5446: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:59) +==10647== by 0xB94867: construct (new_allocator.h:120) +==10647== by 0xB94867: _S_construct (alloc_traits.h:254) +==10647== by 0xB94867: construct (alloc_traits.h:393) +==10647== by 0xB94867: push_back (stl_vector.h:905) +==10647== by 0xB94867: operator() (collections_load_imp.hpp:65) +==10647== by 0xB94867: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94867: load > (vector.hpp:73) +==10647== by 0xB94867: load > (vector.hpp:148) +==10647== by 0xB94867: invoke (split_free.hpp:58) +==10647== by 0xB94867: split_free > (split_free.hpp:74) +==10647== by 0xB94867: serialize > (vector.hpp:159) +==10647== by 0xB94867: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94867: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93125: invoke > (iserializer.hpp:387) +==10647== by 0xB93125: invoke > (iserializer.hpp:439) +==10647== by 0xB93125: load > (iserializer.hpp:592) +==10647== by 0xB93125: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93125: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93125: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93125: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93125: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93125: serialize (table.h:225) +==10647== by 0xB93125: serialize (access.hpp:118) +==10647== by 0xB93125: serialize (serialization.hpp:69) +==10647== by 0xB93125: serialize_adl (serialization.hpp:128) +==10647== by 0xB93125: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB920FB: invoke (iserializer.hpp:387) +==10647== by 0xB920FB: invoke (iserializer.hpp:439) +==10647== by 0xB920FB: load (iserializer.hpp:592) +==10647== by 0xB920FB: load_override (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB920FB: load (nvp.hpp:87) +==10647== by 0xB920FB: member_load > (access.hpp:101) +==10647== by 0xB920FB: invoke (split_member.hpp:54) +==10647== by 0xB920FB: split_member > (split_member.hpp:69) +==10647== by 0xB920FB: serialize (nvp.hpp:89) +==10647== by 0xB920FB: serialize > (access.hpp:118) +==10647== by 0xB920FB: serialize > (serialization.hpp:69) +==10647== by 0xB920FB: serialize_adl > (serialization.hpp:128) +==10647== by 0xB920FB: invoke > (iserializer.hpp:373) +==10647== by 0xB920FB: invoke > (iserializer.hpp:439) +==10647== by 0xB920FB: load > (iserializer.hpp:592) +==10647== by 0xB920FB: load_override > (common_iarchive.hpp:66) +==10647== by 0xB920FB: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB920FB: load_override > (text_iarchive.hpp:82) +==10647== by 0xB920FB: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB920FB: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB92AFC: invoke (iserializer.hpp:524) +==10647== by 0xB92AFC: load (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: load (nvp.hpp:87) +==10647== by 0xB92AFC: member_load > (access.hpp:101) +==10647== by 0xB92AFC: invoke (split_member.hpp:54) +==10647== by 0xB92AFC: split_member > (split_member.hpp:69) +==10647== by 0xB92AFC: serialize (nvp.hpp:89) +==10647== by 0xB92AFC: serialize > (access.hpp:118) +==10647== by 0xB92AFC: serialize > (serialization.hpp:69) +==10647== by 0xB92AFC: serialize_adl > (serialization.hpp:128) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:373) +==10647== by 0xB92AFC: invoke > (iserializer.hpp:439) +==10647== by 0xB92AFC: load > (iserializer.hpp:592) +==10647== by 0xB92AFC: load_override > (common_iarchive.hpp:66) +==10647== by 0xB92AFC: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB92AFC: load_override > (text_iarchive.hpp:82) +==10647== by 0xB92AFC: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB92AFC: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB92AFC: serialize, claims::catalog::TableDescriptor*> (utility.hpp:43) +==10647== by 0xB92AFC: serialize_adl, claims::catalog::TableDescriptor*> > (serialization.hpp:128) +==10647== by 0xB92AFC: boost::archive::detail::iserializer >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 4,220 bytes in 99 blocks are possibly lost in loss record 2,520 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA779C68: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77A8AA: std::string::_Rep::_M_clone(std::allocator const&, unsigned long) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA77B01B: std::string::assign(std::string const&) (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xAE5446: operator= (basic_string.h:547) +==10647== by 0xAE5446: claims::catalog::Attribute::Attribute(claims::catalog::Attribute const&) (attribute.h:59) +==10647== by 0xB9B47B: Column (column.h:45) +==10647== by 0xB9B47B: construct (new_allocator.h:120) +==10647== by 0xB9B47B: _S_construct (alloc_traits.h:254) +==10647== by 0xB9B47B: construct (alloc_traits.h:393) +==10647== by 0xB9B47B: push_back (stl_vector.h:905) +==10647== by 0xB9B47B: operator() (collections_load_imp.hpp:65) +==10647== by 0xB9B47B: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB9B47B: load > (vector.hpp:73) +==10647== by 0xB9B47B: load > (vector.hpp:148) +==10647== by 0xB9B47B: invoke (split_free.hpp:58) +==10647== by 0xB9B47B: split_free > (split_free.hpp:74) +==10647== by 0xB9B47B: serialize > (vector.hpp:159) +==10647== by 0xB9B47B: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B47B: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== +==10647== 4,524 (1,632 direct, 2,892 indirect) bytes in 12 blocks are definitely lost in loss record 2,521 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB39C0E: claims::logical_operator::LogicalQueryPlanRoot::GetPlanContext() (logical_query_plan_root.cpp:200) +==10647== by 0xAEA77F: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:224) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 4,752 bytes in 18 blocks are possibly lost in loss record 2,524 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB9B0A6: allocate (new_allocator.h:104) +==10647== by 0xB9B0A6: _M_allocate (stl_vector.h:168) +==10647== by 0xB9B0A6: _M_allocate_and_copy (stl_vector.h:1138) +==10647== by 0xB9B0A6: std::vector >::reserve(unsigned long) (vector.tcc:75) +==10647== by 0xB9B439: operator() (collections_load_imp.hpp:126) +==10647== by 0xB9B439: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:153) +==10647== by 0xB9B439: load > (vector.hpp:73) +==10647== by 0xB9B439: load > (vector.hpp:148) +==10647== by 0xB9B439: invoke (split_free.hpp:58) +==10647== by 0xB9B439: split_free > (split_free.hpp:74) +==10647== by 0xB9B439: serialize > (vector.hpp:159) +==10647== by 0xB9B439: serialize_adl > (serialization.hpp:128) +==10647== by 0xB9B439: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB99D52: invoke > (iserializer.hpp:387) +==10647== by 0xB99D52: invoke > (iserializer.hpp:439) +==10647== by 0xB99D52: load > (iserializer.hpp:592) +==10647== by 0xB99D52: load_override > (common_iarchive.hpp:66) +==10647== by 0xB99D52: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB99D52: load_override > (text_iarchive.hpp:82) +==10647== by 0xB99D52: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB99D52: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB99D52: serialize (projection.h:118) +==10647== by 0xB99D52: serialize (access.hpp:118) +==10647== by 0xB99D52: serialize (serialization.hpp:69) +==10647== by 0xB99D52: serialize_adl (serialization.hpp:128) +==10647== by 0xB99D52: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94B16: invoke (iserializer.hpp:387) +==10647== by 0xB94B16: invoke (iserializer.hpp:439) +==10647== by 0xB94B16: load (iserializer.hpp:592) +==10647== by 0xB94B16: load_override (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94B16: load (nvp.hpp:87) +==10647== by 0xB94B16: member_load > (access.hpp:101) +==10647== by 0xB94B16: invoke (split_member.hpp:54) +==10647== by 0xB94B16: split_member > (split_member.hpp:69) +==10647== by 0xB94B16: serialize (nvp.hpp:89) +==10647== by 0xB94B16: serialize > (access.hpp:118) +==10647== by 0xB94B16: serialize > (serialization.hpp:69) +==10647== by 0xB94B16: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94B16: invoke > (iserializer.hpp:373) +==10647== by 0xB94B16: invoke > (iserializer.hpp:439) +==10647== by 0xB94B16: load > (iserializer.hpp:592) +==10647== by 0xB94B16: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94B16: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94B16: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94B16: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94B16: boost::archive::detail::pointer_iserializer::load_object_ptr(boost::archive::detail::basic_iarchive&, void*&, unsigned int) const (iserializer.hpp:331) +==10647== by 0x5434CD0: boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive::detail::basic_iarchive&, void*&, boost::archive::detail::basic_pointer_iserializer const*, boost::archive::detail::basic_pointer_iserializer const* (*)(boost::serialization::extended_type_info const&)) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB94D4F: invoke (iserializer.hpp:524) +==10647== by 0xB94D4F: load (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: load (nvp.hpp:87) +==10647== by 0xB94D4F: member_load > (access.hpp:101) +==10647== by 0xB94D4F: invoke (split_member.hpp:54) +==10647== by 0xB94D4F: split_member > (split_member.hpp:69) +==10647== by 0xB94D4F: serialize (nvp.hpp:89) +==10647== by 0xB94D4F: serialize > (access.hpp:118) +==10647== by 0xB94D4F: serialize > (serialization.hpp:69) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:373) +==10647== by 0xB94D4F: invoke > (iserializer.hpp:439) +==10647== by 0xB94D4F: load > (iserializer.hpp:592) +==10647== by 0xB94D4F: load_override > (common_iarchive.hpp:66) +==10647== by 0xB94D4F: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB94D4F: load_override > (text_iarchive.hpp:82) +==10647== by 0xB94D4F: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB94D4F: operator() (collections_load_imp.hpp:64) +==10647== by 0xB94D4F: load_collection, boost::serialization::stl::archive_input_seq >, boost::serialization::stl::reserve_imp > > (collections_load_imp.hpp:158) +==10647== by 0xB94D4F: load > (vector.hpp:73) +==10647== by 0xB94D4F: load > (vector.hpp:148) +==10647== by 0xB94D4F: invoke (split_free.hpp:58) +==10647== by 0xB94D4F: split_free > (split_free.hpp:74) +==10647== by 0xB94D4F: serialize > (vector.hpp:159) +==10647== by 0xB94D4F: serialize_adl > (serialization.hpp:128) +==10647== by 0xB94D4F: boost::archive::detail::iserializer > >::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434017: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== by 0xB93165: invoke > (iserializer.hpp:387) +==10647== by 0xB93165: invoke > (iserializer.hpp:439) +==10647== by 0xB93165: load > (iserializer.hpp:592) +==10647== by 0xB93165: load_override > (common_iarchive.hpp:66) +==10647== by 0xB93165: load_override > (basic_text_iarchive.hpp:65) +==10647== by 0xB93165: load_override > (text_iarchive.hpp:82) +==10647== by 0xB93165: operator>> > (interface_iarchive.hpp:60) +==10647== by 0xB93165: operator& > (interface_iarchive.hpp:67) +==10647== by 0xB93165: serialize (table.h:225) +==10647== by 0xB93165: serialize (access.hpp:118) +==10647== by 0xB93165: serialize (serialization.hpp:69) +==10647== by 0xB93165: serialize_adl (serialization.hpp:128) +==10647== by 0xB93165: boost::archive::detail::iserializer::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const (iserializer.hpp:188) +==10647== by 0x5434151: boost::archive::detail::basic_iarchive::load_object(void*, boost::archive::detail::basic_iserializer const&) (in /home/imdb/Thirdparty/boost_1_53_0/stage/lib/libboost_serialization.so.1.53.0) +==10647== +==10647== 5,438 (96 direct, 5,342 indirect) bytes in 2 blocks are definitely lost in loss record 2,527 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F63A: allocate (new_allocator.h:104) +==10647== by 0xB3F63A: _M_get_node (stl_tree.h:370) +==10647== by 0xB3F63A: _M_create_node&> (stl_tree.h:403) +==10647== by 0xB3F63A: _M_clone_node (stl_tree.h:429) +==10647== by 0xB3F63A: std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_copy(std::_Rb_tree_node > const*, std::_Rb_tree_node >*) (stl_tree.h:1087) +==10647== by 0xB4032D: _Rb_tree (stl_tree.h:659) +==10647== by 0xB4032D: map (stl_map.h:181) +==10647== by 0xB4032D: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 8,192 bytes in 1 blocks are possibly lost in loss record 2,541 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x80C2791: apr_pool_create_ex (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x80C2FB6: apr_pool_initialize (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x80C45FE: apr_initialize (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x7994E6D: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:72) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== +==10647== 8,192 bytes in 1 blocks are possibly lost in loss record 2,542 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x80C2791: apr_pool_create_ex (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x80C4610: apr_initialize (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x7994E6D: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:72) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 8,192 bytes in 1 blocks are possibly lost in loss record 2,543 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x80C2791: apr_pool_create_ex (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x7994E7F: decaf::lang::Runtime::initializeRuntime(int, char**) (DecafRuntime.cpp:73) +==10647== by 0x780FE38: activemq::library::ActiveMQCPP::initializeLibrary(int, char**) (ActiveMQCPP.cpp:57) +==10647== by 0xBB189B: claims::loader::MasterLoader::StartMasterLoader(void*) (master_loader.cpp:883) +==10647== by 0xA24A86: void* std::_Bind_simple::_M_invoke<0ul>(std::_Index_tuple<0ul>) (functional:1732) +==10647== by 0xA227FC: std::_Bind_simple::operator()() (functional:1720) +==10647== by 0xA1E7B5: std::thread::_Impl >::_M_run() (thread:115) +==10647== by 0xA77121F: ??? (in /usr/lib64/libstdc++.so.6.0.19) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 8,192 bytes in 1 blocks are possibly lost in loss record 2,544 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x80C2A4D: apr_pool_create_unmanaged_ex (in /usr/lib64/libapr-1.so.0.4.8) +==10647== by 0x7994C60: decaf::internal::AprPool::getAprPool() const (AprPool.cpp:71) +==10647== by 0x79ACAAA: decaf::internal::net::tcp::TcpSocket::create() (TcpSocket.cpp:157) +==10647== by 0x7A30259: decaf::net::Socket::ensureCreated() const (Socket.cpp:715) +==10647== by 0x7A31F59: decaf::net::Socket::setKeepAlive(bool) (Socket.cpp:461) +==10647== by 0x78F372E: activemq::transport::tcp::TcpTransport::configureSocket(decaf::net::Socket*) (TcpTransport.cpp:245) +==10647== by 0x78F29C7: activemq::transport::tcp::TcpTransport::connect() (TcpTransport.cpp:156) +==10647== by 0x78F343C: activemq::transport::tcp::TcpTransport::beforeNextIsStarted() (TcpTransport.cpp:115) +==10647== by 0x7897843: activemq::transport::TransportFilter::start() (TransportFilter.cpp:160) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== by 0x7897856: activemq::transport::TransportFilter::start() (TransportFilter.cpp:161) +==10647== +==10647== 10,104 bytes in 1 blocks are possibly lost in loss record 2,550 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4E9DB71: caf::detail::basic_memory_cache::new_embedded_storage() (memory.hpp:164) +==10647== by 0x4EA3014: create (memory.hpp:202) +==10647== by 0x4EA3014: make_counted (make_counted.hpp:41) +==10647== by 0x4EA3014: spawn_impl (spawn.hpp:57) +==10647== by 0x4EA3014: spawn_class (spawn.hpp:78) +==10647== by 0x4EA3014: spawn (spawn.hpp:122) +==10647== by 0x4EA3014: caf::scheduler::abstract_coordinator::initialize() (abstract_coordinator.cpp:329) +==10647== by 0x4EA5825: caf::scheduler::coordinator::initialize() (coordinator.hpp:62) +==10647== by 0x4EE9288: lazy_get (singletons.hpp:101) +==10647== by 0x4EE9288: caf::detail::singletons::get_scheduling_coordinator() (singletons.cpp:126) +==10647== by 0x4ECB624: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:593) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== by 0x9D6FCD: Environment::Environment(bool) (Environment.cpp:87) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 10,104 bytes in 1 blocks are possibly lost in loss record 2,551 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xC0A071: caf::detail::basic_memory_cache::new_embedded_storage() (memory.hpp:164) +==10647== by 0xC0BA95: create (memory.hpp:202) +==10647== by 0xC0BA95: make_counted (make_counted.hpp:41) +==10647== by 0xC0BA95: caf::intrusive_ptr caf::spawn_impl(caf::execution_unit*, caf::empty_before_launch_callback) (spawn.hpp:57) +==10647== by 0xC0620D: spawn_class (spawn.hpp:78) +==10647== by 0xC0620D: spawn (spawn.hpp:122) +==10647== by 0xC0620D: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:303) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 10,264 bytes in 1 blocks are possibly lost in loss record 2,552 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA31C59: caf::detail::basic_memory_cache::new_embedded_storage() (memory.hpp:164) +==10647== by 0xA2FF54: create (memory.hpp:202) +==10647== by 0xA2FF54: make_counted (make_counted.hpp:41) +==10647== by 0xA2FF54: spawn_impl (spawn.hpp:57) +==10647== by 0xA2FF54: spawn_class (spawn.hpp:78) +==10647== by 0xA2FF54: spawn (spawn.hpp:122) +==10647== by 0xA2FF54: claims::MasterNode::CreateActor() (master_node.cpp:115) +==10647== by 0xA3035B: claims::MasterNode::MasterNode() (master_node.cpp:105) +==10647== by 0xA303B4: claims::MasterNode::GetInstance() (master_node.cpp:95) +==10647== by 0x9D8238: Environment::InitMembership() (Environment.cpp:255) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 10,264 bytes in 1 blocks are possibly lost in loss record 2,553 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xA37739: caf::detail::basic_memory_cache::new_embedded_storage() (memory.hpp:164) +==10647== by 0xA380DA: create (memory.hpp:202) +==10647== by 0xA380DA: make_counted (make_counted.hpp:41) +==10647== by 0xA380DA: caf::intrusive_ptr caf::spawn_impl(caf::execution_unit*, caf::empty_before_launch_callback, claims::SlaveNode* const&&) (spawn.hpp:57) +==10647== by 0xA34EED: spawn_class (spawn.hpp:78) +==10647== by 0xA34EED: spawn (spawn.hpp:122) +==10647== by 0xA34EED: claims::SlaveNode::CreateActor() (slave_node.cpp:164) +==10647== by 0xA354FD: claims::SlaveNode::SlaveNode() (slave_node.cpp:155) +==10647== by 0xA35554: claims::SlaveNode::GetInstance() (slave_node.cpp:129) +==10647== by 0x9D8252: Environment::InitMembership() (Environment.cpp:258) +==10647== by 0x9D7172: Environment::Environment(bool) (Environment.cpp:115) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 10,876 (256 direct, 10,620 indirect) bytes in 4 blocks are definitely lost in loss record 2,555 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB3F750: allocate (new_allocator.h:104) +==10647== by 0xB3F750: _M_get_node (stl_tree.h:370) +==10647== by 0xB3F750: std::_Rb_tree_node, std::allocator > > > >* std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_create_node, std::allocator > > > const&>(std::pair, std::allocator > > > const&) (stl_tree.h:403) +==10647== by 0xB3F889: _M_clone_node (stl_tree.h:429) +==10647== by 0xB3F889: std::_Rb_tree, std::allocator > > >, std::_Select1st, std::allocator > > > >, std::less, std::allocator, std::allocator > > > > >::_M_copy(std::_Rb_tree_node, std::allocator > > > > const*, std::_Rb_tree_node, std::allocator > > > >*) (stl_tree.h:1087) +==10647== by 0xB40295: _Rb_tree (stl_tree.h:659) +==10647== by 0xB40295: map (stl_map.h:181) +==10647== by 0xB40295: claims::txn::Query::Query(claims::txn::Query const&) (txn.hpp:293) +==10647== by 0xB65A46: State (physical_projection_scan.h:102) +==10647== by 0xB65A46: claims::physical_operator::PhysicalProjectionScan::PhysicalProjectionScan(claims::physical_operator::PhysicalProjectionScan::State) (physical_projection_scan.cpp:53) +==10647== by 0xB3DF71: claims::logical_operator::LogicalScan::GetPhysicalPlan(unsigned int const&) (logical_scan.cpp:214) +==10647== by 0xB2CB66: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:307) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== +==10647== 11,224 bytes in 1 blocks are possibly lost in loss record 2,556 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EB5191: caf::detail::basic_memory_cache >::new_embedded_storage() (memory.hpp:164) +==10647== by 0x4EB5B40: create > (memory.hpp:202) +==10647== by 0x4EB5B40: make_counted > (make_counted.hpp:41) +==10647== by 0x4EB5B40: spawn_impl, (caf::spawn_options)72, caf::spawn_functor_impl(caf::execution_unit*, BeforeLaunch, F, Ts&& ...) [with caf::spawn_options Os = (caf::spawn_options)72; C = caf::stateful_actor; BeforeLaunch = caf::empty_before_launch_callback; F = caf::behavior (*)(caf::stateful_actor*); Ts = {}]::__lambda8> (spawn.hpp:57) +==10647== by 0x4EB5B40: spawn_class, (caf::spawn_options)72, caf::spawn_functor_impl(caf::execution_unit*, BeforeLaunch, F, Ts&& ...) [with caf::spawn_options Os = (caf::spawn_options)72; C = caf::stateful_actor; BeforeLaunch = caf::empty_before_launch_callback; F = caf::behavior (*)(caf::stateful_actor*); Ts = {}]::__lambda8> (spawn.hpp:78) +==10647== by 0x4EB5B40: spawn_functor_impl<(caf::spawn_options)72, caf::stateful_actor, caf::empty_before_launch_callback, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:98) +==10647== by 0x4EB5B40: spawn_functor<(caf::spawn_options)72, caf::empty_before_launch_callback, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:109) +==10647== by 0x4EB5B40: spawn<(caf::spawn_options)72, caf::behavior (*)(caf::stateful_actor*)> (spawn.hpp:133) +==10647== by 0x4EB5B40: caf::experimental::spawn_announce_actor_type_server() (announce_actor_type.cpp:70) +==10647== by 0x4EAF6B4: caf::detail::actor_registry::initialize() (actor_registry.cpp:277) +==10647== by 0x4EE9082: lazy_get&, std::mutex&) [with T = caf::detail::actor_registry]::__lambda3> (singletons.hpp:101) +==10647== by 0x4EE9082: lazy_get (singletons.hpp:110) +==10647== by 0x4EE9082: caf::detail::singletons::get_actor_registry() (singletons.cpp:107) +==10647== by 0x4E9C094: caf::abstract_actor::is_registered(bool) (abstract_actor.cpp:125) +==10647== by 0x4ECB4F2: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:558) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== by 0x9D6FCD: Environment::Environment(bool) (Environment.cpp:87) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== +==10647== 11,384 bytes in 1 blocks are possibly lost in loss record 2,557 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xC0A1E1: caf::detail::basic_memory_cache::new_embedded_storage() (memory.hpp:164) +==10647== by 0xC06359: create (memory.hpp:202) +==10647== by 0xC06359: make_counted (make_counted.hpp:41) +==10647== by 0xC06359: spawn_impl (spawn.hpp:57) +==10647== by 0xC06359: spawn_class (spawn.hpp:78) +==10647== by 0xC06359: spawn (spawn.hpp:122) +==10647== by 0xC06359: claims::txn::TxnServer::Init(int, int) (txn_server.cpp:305) +==10647== by 0x9D865F: Environment::InitTxnManager() (Environment.cpp:284) +==10647== by 0x9D72F3: Environment::Environment(bool) (Environment.cpp:133) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 12,344 bytes in 1 blocks are possibly lost in loss record 2,560 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4EACBF1: caf::detail::basic_memory_cache >::new_embedded_storage() (memory.hpp:164) +==10647== by 0x4EAF78B: create > (memory.hpp:202) +==10647== by 0x4EAF78B: make_counted > (make_counted.hpp:41) +==10647== by 0x4EAF78B: spawn_impl, (caf::spawn_options)72, caf::spawn_functor_impl(caf::execution_unit*, BeforeLaunch, F, Ts&& ...) [with caf::spawn_options Os = (caf::spawn_options)72; C = caf::stateful_actor; BeforeLaunch = caf::empty_before_launch_callback; F = caf::detail::actor_registry::initialize()::__lambda14; Ts = {}]::__lambda6> (spawn.hpp:57) +==10647== by 0x4EAF78B: spawn_class, (caf::spawn_options)72, caf::spawn_functor_impl(caf::execution_unit*, BeforeLaunch, F, Ts&& ...) [with caf::spawn_options Os = (caf::spawn_options)72; C = caf::stateful_actor; BeforeLaunch = caf::empty_before_launch_callback; F = caf::detail::actor_registry::initialize()::__lambda14; Ts = {}]::__lambda6> (spawn.hpp:78) +==10647== by 0x4EAF78B: spawn_functor_impl<(caf::spawn_options)72, caf::stateful_actor, caf::empty_before_launch_callback, caf::detail::actor_registry::initialize()::__lambda14> (spawn.hpp:98) +==10647== by 0x4EAF78B: spawn_functor<(caf::spawn_options)72, caf::empty_before_launch_callback, caf::detail::actor_registry::initialize()::__lambda14> (spawn.hpp:109) +==10647== by 0x4EAF78B: spawn<(caf::spawn_options)72, caf::detail::actor_registry::initialize()::__lambda14> (spawn.hpp:133) +==10647== by 0x4EAF78B: caf::detail::actor_registry::initialize() (actor_registry.cpp:278) +==10647== by 0x4EE9082: lazy_get&, std::mutex&) [with T = caf::detail::actor_registry]::__lambda3> (singletons.hpp:101) +==10647== by 0x4EE9082: lazy_get (singletons.hpp:110) +==10647== by 0x4EE9082: caf::detail::singletons::get_actor_registry() (singletons.cpp:107) +==10647== by 0x4E9C094: caf::abstract_actor::is_registered(bool) (abstract_actor.cpp:125) +==10647== by 0x4ECB4F2: caf::local_actor::launch(caf::execution_unit*, bool, bool) (local_actor.cpp:558) +==10647== by 0xB2ACED: caf::intrusive_ptr caf::spawn_impl caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}>(caf::execution_unit*, caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&)::{lambda(caf::event_based_actor*)#1}) (spawn.hpp:67) +==10647== by 0xB2AE5A: spawn_class (spawn.hpp:78) +==10647== by 0xB2AE5A: caf::intrusive_ptr caf::spawn_functor_impl<(caf::spawn_options)0, caf::event_based_actor, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const>(caf::execution_unit*, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const&&) (spawn.hpp:98) +==10647== by 0xB2A474: spawn_functor<(caf::spawn_options)0, caf::empty_before_launch_callback, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:109) +==10647== by 0xB2A474: spawn<(caf::spawn_options)0, void (*)(caf::event_based_actor*, claims::StmtExecTracker*), claims::StmtExecTracker* const> (spawn.hpp:133) +==10647== by 0xB2A474: claims::StmtExecTracker::StmtExecTracker() (stmt_exec_tracker.cpp:45) +==10647== by 0x9D6FCD: Environment::Environment(bool) (Environment.cpp:87) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 13,257 bytes in 1 blocks are possibly lost in loss record 2,561 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBDAE51: Malloc (memory_handle.h:43) +==10647== by 0xBDAE51: claims::common::DiskFileHandleImp::ReadTotalFile(void*&, unsigned long*) (disk_file_handle_imp.cpp:157) +==10647== by 0xB84CF6: LoadTotalFile (single_file_connector.h:103) +==10647== by 0xB84CF6: claims::catalog::Catalog::restoreCatalog() (catalog.cpp:274) +==10647== by 0x9D6F31: Environment::Environment(bool) (Environment.cpp:83) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 31,561 (6,336 direct, 25,225 indirect) bytes in 12 blocks are definitely lost in loss record 2,570 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB2CC07: claims::logical_operator::LogicalAggregation::GetPhysicalPlan(unsigned int const&) (logical_aggregation.cpp:316) +==10647== by 0xB3BF3A: claims::logical_operator::LogicalProject::GetPhysicalPlan(unsigned int const&) (logical_project.cpp:172) +==10647== by 0xB39306: claims::logical_operator::LogicalQueryPlanRoot::GetPhysicalPlan(unsigned int const&) (logical_query_plan_root.cpp:101) +==10647== by 0xAEA83A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:239) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 41,600 bytes in 100 blocks are possibly lost in loss record 2,572 of 2,588 +==10647== at 0x4C2B974: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0x4011E84: _dl_allocate_tls (in /usr/lib64/ld-2.17.so) +==10647== by 0xA4A8990: pthread_create@@GLIBC_2.2.5 (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xBF3E81: ThreadPool::Init(int) (thread_pool.cpp:65) +==10647== by 0x9D8FCA: Environment::initializeThreadPool() (Environment.cpp:388) +==10647== by 0x9D7049: Environment::Environment(bool) (Environment.cpp:92) +==10647== by 0x9D78DB: Environment::getInstance(bool) (Environment.cpp:187) +==10647== by 0x97B5B8: main (Server.cpp:106) +==10647== +==10647== 102,400 bytes in 1 blocks are possibly lost in loss record 2,573 of 2,588 +==10647== at 0x4C2A7AA: operator new[](unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xABADBC: ClientListener::receiveHandler(void*) (ClaimsServer.cpp:178) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 592,641 (1,008 direct, 591,633 indirect) bytes in 9 blocks are definitely lost in loss record 2,579 of 2,588 +==10647== at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xB4F64C: claims::physical_operator::ResultCollector::Open(claims::SegmentExecStatus*, unsigned int const&) (result_collector.cpp:91) +==10647== by 0xAEA98A: claims::stmt_handler::SelectExec::Execute() (select_exec.cpp:265) +==10647== by 0xAE8B9E: claims::stmt_handler::StmtHandler::Execute(ExecutedResult*) (stmt_handler.cpp:148) +==10647== by 0xACC0C9: Daemon::worker(void*) (Daemon.cpp:107) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== 786,384 bytes in 12 blocks are definitely lost in loss record 2,581 of 2,588 +==10647== at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) +==10647== by 0xBD0E3F: Block::Block(unsigned int) (Block.cpp:18) +==10647== by 0xBD16DF: BlockStreamBase (BlockStream.h:57) +==10647== by 0xBD16DF: BlockStreamFix::BlockStreamFix(unsigned int, unsigned int) (BlockStream.cpp:15) +==10647== by 0xBD1ADC: BlockStreamBase::createBlock(Schema const* const&, unsigned int) (BlockStream.cpp:34) +==10647== by 0xB51B4A: claims::physical_operator::PhysicalAggregation::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_aggregation.cpp:222) +==10647== by 0xB57EBB: claims::physical_operator::PhysicalProject::Open(claims::SegmentExecStatus*, unsigned int const&) (physical_project.cpp:80) +==10647== by 0xB55AC5: claims::physical_operator::Expander::ExpandedWork(void*) (expander.cpp:221) +==10647== by 0xBF481B: ThreadPool::HandleTask(ThreadPool*) (thread_pool.cpp:139) +==10647== by 0xBF48E2: ThreadPool::ThreadExec(void*) (thread_pool.cpp:157) +==10647== by 0xA4A7DF4: start_thread (in /usr/lib64/libpthread-2.17.so) +==10647== by 0xADBC1AC: clone (in /usr/lib64/libc-2.17.so) +==10647== +==10647== LEAK SUMMARY: +==10647== definitely lost: 806,612 bytes in 231 blocks +==10647== indirectly lost: 647,827 bytes in 1,024 blocks +==10647== possibly lost: 349,218 bytes in 1,660 blocks +==10647== still reachable: 3,358,139,411 bytes in 142,501 blocks +==10647== suppressed: 0 bytes in 0 blocks +==10647== Reachable blocks (those to which a pointer was found) are not shown. +==10647== To see them, rerun with: --leak-check=full --show-leak-kinds=all +==10647== +==10647== For counts of detected and suppressed errors, rerun with: -v +==10647== Use --track-origins=yes to see where uninitialised values come from +==10647== ERROR SUMMARY: 10000423 errors from 429 contexts (suppressed: 2 from 2) diff --git a/node_manager/master_node.cpp b/node_manager/master_node.cpp index 9fca1758a..6a2b245a6 100644 --- a/node_manager/master_node.cpp +++ b/node_manager/master_node.cpp @@ -39,12 +39,19 @@ #include "../common/error_define.h" #include "../common/ids.h" #include "../common/Message.h" +#include "../loader/load_packet.h" #include "../Environment.h" +#include "../txn_manager/txn.hpp" using caf::io::remote_actor; using caf::make_message; using std::make_pair; using claims::common::rConRemoteActorError; using namespace claims::catalog; +using claims::loader::AddBlockAtom; +using claims::txn::GetTableIdFromGlobalPartId; +using claims::txn::GetProjectionIdFromGlobalPartId; +using claims::txn::GetPartitionIdFromGlobalPartId; + namespace claims { MasterNode* MasterNode::instance_ = 0; class MasterNodeActor : public event_based_actor { @@ -58,102 +65,105 @@ class MasterNodeActor : public event_based_actor { behavior MainWork() { return { [=](RegisterAtom, string ip, uint16_t port) -> caf::message { - /* To check if slave node is Reregister - * because some reason may let slave node resend RegisterAtom to master. - * like network shake, or slave is restarted but master node doesn't check - * this condition by heatbeat. - */ + /* To check if slave node is Reregister + * because some reason may let slave node resend RegisterAtom to + * master. + * like network shake, or slave is restarted but master node doesn't + * check + * this condition by heatbeat. + */ unsigned int tmp_node_id = -1; bool is_reregister = false; - for(auto it = master_node_->node_id_to_addr_.begin(); - it != master_node_->node_id_to_addr_.end();++it) - { - if((it->second.first == ip)) - { + for (auto it = master_node_->node_id_to_addr_.begin(); + it != master_node_->node_id_to_addr_.end(); ++it) { + if ((it->second.first == ip)) { is_reregister = true; tmp_node_id = it->first; } } - if(is_reregister) - { - //find this slave is reregister, so remove old slave node info. - master_node_->RemoveOneNode(tmp_node_id,master_node_); + if (is_reregister) { + // find this slave is reregister, so remove old slave node info. + master_node_->RemoveOneNode(tmp_node_id, master_node_); master_node_->node_id_to_heartbeat_.erase(tmp_node_id); Environment::getInstance() - ->getResourceManagerMaster() - ->UnRegisterSlave(tmp_node_id); - LOG(INFO)<<"master remove old node :"<getResourceManagerMaster() + ->UnRegisterSlave(tmp_node_id); + LOG(INFO) << "master remove old node :" << tmp_node_id << "info" + << endl; } - //add new slavenode info. + // add new slavenode info. unsigned id = master_node_->AddOneNode(ip, port); Environment::getInstance() ->getResourceManagerMaster() ->RegisterNewSlave(id); - LOG(INFO)<<"master Register slave node :"<"<" << std::endl; // Sync node list of master. master_node_->SyncNodeList(master_node_); return make_message(OkAtom::value, id, *((BaseNode*)master_node_)); }, - [=](HeartBeatAtom, unsigned int node_id_, string address_, uint16_t port_) -> caf::message { + [=](HeartBeatAtom, unsigned int node_id_, string address_, + uint16_t port_) -> caf::message { auto it = master_node_->node_id_to_heartbeat_.find(node_id_); //有可能再重启后两个不同的ip使用相同的nodeID 所以要避免 if (it != master_node_->node_id_to_heartbeat_.end() && - !(master_node_->node_id_to_addr_.find(node_id_)->second.first.compare(address_))){ - //clear heartbeat count. - it->second = 0; - return make_message(OkAtom::value); - }else{ - LOG(INFO)<<"get heartbeat and register request from "<node_id_to_addr_.find(node_id_) + ->second.first.compare(address_))) { + // clear heartbeat count. + it->second = 0; + return make_message(OkAtom::value); + } else { + LOG(INFO) << "get heartbeat and register request from " << address_ + << ", " << port_ << std::endl; unsigned id = master_node_->AddOneNode(address_, port_); Environment::getInstance() - ->getResourceManagerMaster() - ->RegisterNewSlave(id); - LOG(INFO)<<"master Register slave node :"<BroastNodeInfo(id,address_,port_); + ->getResourceManagerMaster() + ->RegisterNewSlave(id); + LOG(INFO) << "master Register slave node :" << id << endl; + master_node_->BroastNodeInfo(id, address_, port_); return make_message(OkAtom::value, id, *((BaseNode*)master_node_)); } }, - [=](Updatelist){ + [=](Updatelist) { bool is_losted = false; - if(master_node_->node_id_to_heartbeat_.size() > 0){ - for (auto it = master_node_->node_id_to_heartbeat_.begin();it != master_node_->node_id_to_heartbeat_.end();) - { - //Heartbeat count++ - it->second++; - { - if (it->second >= kMaxTryTimes){ - is_losted = true; - LOG(WARNING) <<"master : lost hearbeat from ( node "<first<<")"<first; - auto tmp_it = it; - it++; - master_node_->node_id_to_heartbeat_.erase(tmp_it); - master_node_->RemoveOneNode(node_id, master_node_); - Environment::getInstance() - ->getResourceManagerMaster() - ->UnRegisterSlave(node_id); - LOG(INFO)<<"master unRegister old node :"<node_id_to_heartbeat_.size() > 0) { + for (auto it = master_node_->node_id_to_heartbeat_.begin(); + it != master_node_->node_id_to_heartbeat_.end();) { + // Heartbeat count++ + it->second++; + { + if (it->second >= kMaxTryTimes) { + is_losted = true; + LOG(WARNING) << "master : lost hearbeat from ( node " + << it->first << ")" << endl; + auto node_id = it->first; + auto tmp_it = it; + it++; + master_node_->node_id_to_heartbeat_.erase(tmp_it); + master_node_->RemoveOneNode(node_id, master_node_); + Environment::getInstance() + ->getResourceManagerMaster() + ->UnRegisterSlave(node_id); + LOG(INFO) << "master unRegister old node :" << node_id + << "info" << endl; + } else { + it++; + } + } } } - if(is_losted){ - master_node_->SyncNodeList(master_node_); - is_losted=false; + if (is_losted) { + master_node_->SyncNodeList(master_node_); + is_losted = false; } - delayed_send(this, std::chrono::seconds(kTimeout/5), Updatelist::value); + delayed_send(this, std::chrono::seconds(kTimeout / 5), + Updatelist::value); }, - [&](StorageBudgetAtom, const StorageBudgetMessage& message) { - Environment::getInstance() - ->getResourceManagerMaster() - ->RegisterDiskBuget(message.nodeid, message.disk_budget); - Environment::getInstance() - ->getResourceManagerMaster() - ->RegisterMemoryBuget(message.nodeid, message.memory_budget); - LOG(INFO) << "receive storage budget message!! node: " - << message.nodeid << " : disk = " << message.disk_budget - << " , mem = " << message.memory_budget << endl; - return make_message(OkAtom::value); + [=](AddBlockAtom, uint64_t part_id, int block_num) -> caf::message { + cout << "try to add block on partition:" << part_id << " block nums " + << block_num << endl; + RetCode ret = master_node_->AddBlock(part_id, block_num); + return make_message(ret); }, [&](StorageBudgetAtom, const StorageBudgetMessage& message) -> caf::message { @@ -174,10 +184,9 @@ class MasterNodeActor : public event_based_actor { quit(); }, caf::others >> [=]() { - LOG(WARNING) << "master node receives unknown message" - << endl; - } - }; + LOG(WARNING) << "master node receives unknown message" + << endl; + }}; } MasterNode* master_node_; }; @@ -208,11 +217,11 @@ void MasterNode::CreateActor() { caf::io::publish(master_actor_, get_node_port(), nullptr, 1); LOG(INFO) << "master ip port" << get_node_port() << " publish succeed!"; caf::scoped_actor self; - self->send(master_actor_,Updatelist::value); + self->send(master_actor_, Updatelist::value); } catch (caf::bind_failure& e) { - LOG(ERROR) << "the specified port " << get_node_port() << " is used!"; + PLOG(ERROR) << "the specified port " << get_node_port() << " is used!"; } catch (caf::network_error& e) { - LOG(ERROR) << "connection error in publishing master actor port"; + PLOG(ERROR) << "connection error in publishing master actor port"; } } void MasterNode::PrintNodeList() { @@ -235,10 +244,10 @@ RetCode MasterNode::BroastNodeInfo(const unsigned int& node_id, unsigned int MasterNode::AddOneNode(string node_ip, uint16_t node_port) { lock_.acquire(); unsigned int node_id; - //If a slave has same ip with master, it get ID equals 0 - if (node_ip == get_node_ip()){ + // If a slave has same ip with master, it get ID equals 0 + if (node_ip == get_node_ip()) { node_id = 0; - }else{ + } else { node_id = ++node_id_gen_; } node_id_to_addr_.insert( @@ -252,9 +261,9 @@ unsigned int MasterNode::AddOneNode(string node_ip, uint16_t node_port) { << " ) and create remote actor failed!!"; assert(false); } - LOG(INFO) << "register one node( " << node_id << " < " << node_ip - << " " << node_port << " > )" << std::endl; - //BroastNodeInfo((unsigned int)node_id, node_ip, node_port); + LOG(INFO) << "register one node( " << node_id << " < " << node_ip << " " + << node_port << " > )" << std::endl; + // BroastNodeInfo((unsigned int)node_id, node_ip, node_port); lock_.release(); return node_id; } @@ -262,29 +271,30 @@ unsigned int MasterNode::AddOneNode(string node_ip, uint16_t node_port) { * * * */ -void MasterNode::RemoveOneNode(unsigned int node_id, MasterNode* master_node){ +void MasterNode::RemoveOneNode(unsigned int node_id, MasterNode* master_node) { master_node->lock_.acquire(); master_node->node_id_to_addr_.erase(node_id); master_node->node_id_to_actor_.erase(node_id); master_node->lock_.release(); - //clear the partition info of removed node. + // clear the partition info of removed node. Catalog* catalog = Catalog::getInstance(); - vector table_id_list = catalog->GetAllTablesID(); - for (auto table_id : table_id_list){ + vector table_id_list = catalog->getAllTableIDs(); + for (auto table_id : table_id_list) { TableDescriptor* table = catalog->getTable(table_id); - if(table != NULL){ - vector* projection_list = table ->GetProjectionList(); - if(projection_list != NULL) - { - for(auto projection : *projection_list){ + if (table != NULL) { + vector* projection_list = + table->GetProjectionList(); + if (projection_list != NULL) { + for (auto projection : *projection_list) { Partitioner* partitioner = projection->getPartitioner(); - if(partitioner != NULL){ - vector partition_info_list = partitioner->getPartitionList(); - if(partition_info_list.size() != 0){ - for(auto partition_info : partition_info_list){ - if(partition_info->get_location() == node_id){ - LOG(INFO)< partition_info_list = + partitioner->getPartitionList(); + if (partition_info_list.size() != 0) { + for (auto partition_info : partition_info_list) { + if (partition_info->get_location() == node_id) { + LOG(INFO) << node_id << "'s partition is unbinding" << endl; partition_info->unbind_all_blocks(); } } @@ -295,17 +305,18 @@ void MasterNode::RemoveOneNode(unsigned int node_id, MasterNode* master_node){ } } } -void MasterNode::SyncNodeList(MasterNode* master_node) -{ - try{ - caf::scoped_actor self; - for (auto it = master_node->node_id_to_addr_.begin(); it != master_node->node_id_to_addr_.end(); ++it) - { - self->send(master_node->node_id_to_actor_.at(it->first), SyncNodeInfo::value,*((BaseNode*)master_node)); - LOG(INFO)<<" node info changed ,start sync to node: "<first<node_id_to_addr_.begin(); + it != master_node->node_id_to_addr_.end(); ++it) { + self->send(master_node->node_id_to_actor_.at(it->first), + SyncNodeInfo::value, *((BaseNode*)master_node)); + LOG(INFO) << " node info changed ,start sync to node: " << it->first + << endl; + } + } catch (caf::network_error& e) { + LOG(INFO) << "sync failure" << endl; } } void MasterNode::FinishAllNode() { @@ -316,4 +327,20 @@ void MasterNode::FinishAllNode() { } self->send(master_actor_, ExitAtom::value); } + +RetCode MasterNode::AddBlock(int g_part_id, int block_num) { + /* cout << "try to add block on patition:" << part_id << " block num" + << block_num << endl;*/ + auto cata = Environment::getInstance()->getCatalog(); + auto table_id = GetTableIdFromGlobalPartId(g_part_id); + auto proj_id = GetProjectionIdFromGlobalPartId(g_part_id); + auto part_id = GetPartitionIdFromGlobalPartId(g_part_id); + + auto table = cata->getTable(table_id); + auto proj = table->getProjectoin(proj_id); + proj->getPartitioner()->addPartitionBlocks(part_id, block_num); + cout << "add " << block_num << " on part " << part_id << endl; + return cata->saveCatalog(); +} + } // namespace claims diff --git a/node_manager/master_node.h b/node_manager/master_node.h index 00ee2fab2..23985b92b 100644 --- a/node_manager/master_node.h +++ b/node_manager/master_node.h @@ -63,6 +63,8 @@ class MasterNode : public BaseNode { void RemoveOneNode(unsigned int node_id, MasterNode* master_node); RetCode BroastNodeInfo(const unsigned int& node_id, const string& node_ip, const uint16_t& node_port); + RetCode AddBlock(int part_id, int block_num); + MasterNode(); MasterNode(string node_ip, uint16_t node_port); diff --git a/node_manager/slave_node.cpp b/node_manager/slave_node.cpp index 71f05e87b..7e6ddf0dd 100644 --- a/node_manager/slave_node.cpp +++ b/node_manager/slave_node.cpp @@ -25,26 +25,26 @@ * Description: * */ +#include +#include #include #include #include #include +#include +#include #include "./slave_node.h" - -#include -#include - #include "../common/Message.h" -#include "caf/io/all.hpp" - #include "./base_node.h" +#include "../common/error_define.h" #include "../common/ids.h" +#include "../Config.h" #include "../Environment.h" +#include "../loader/load_packet.h" #include "../storage/StorageLevel.h" +#include "caf/io/all.hpp" #include "caf/all.hpp" -#include -#include -#include "../common/error_define.h" +using caf::actor; using caf::io::remote_actor; using caf::make_message; using caf::message; @@ -53,6 +53,8 @@ using std::unordered_map; using claims::common::rConRemoteActorError; using claims::common::rRegisterToMasterTimeOut; using claims::common::rRegisterToMasterError; +using claims::loader::RegNodeAtom; +using claims::loader::AddBlockAtom; namespace claims { SlaveNode* SlaveNode::instance_ = 0; class SlaveNodeActor : public event_based_actor { @@ -108,20 +110,21 @@ class SlaveNodeActor : public event_based_actor { [=](BroadcastNodeAtom, const unsigned int& node_id, const string& node_ip, const uint16_t& node_port) { LOG(INFO) << "receive broadcast message~!" << endl; - //check if this node is Reregister node + // check if this node is Reregister node unsigned int tmp_node_id; bool is_reregister = false; - for(auto it = slave_node_->node_id_to_addr_.begin(); - it != slave_node_->node_id_to_addr_.end(); ++it){ - if(it->second.first == node_ip){ + for (auto it = slave_node_->node_id_to_addr_.begin(); + it != slave_node_->node_id_to_addr_.end(); ++it) { + if (it->second.first == node_ip) { is_reregister = true; tmp_node_id = it->first; } } - if(is_reregister){ + if (is_reregister) { slave_node_->node_id_to_addr_.erase(tmp_node_id); slave_node_->node_id_to_actor_.erase(tmp_node_id); - LOG(INFO)<<"slave "<get_node_id()<<"remove old node :"<get_node_id() + << "remove old node :" << tmp_node_id << "info" << endl; } slave_node_->AddOneNode(node_id, node_ip, node_port); }, @@ -140,102 +143,116 @@ class SlaveNodeActor : public event_based_actor { } return make_message(OkAtom::value); }, - [=](HeartBeatAtom){ - try{ - slave_node_->master_actor_= caf::io::remote_actor(slave_node_->master_addr_.first, - slave_node_->master_addr_.second); - sync_send(slave_node_->master_actor_, HeartBeatAtom::value, slave_node_->get_node_id(), - slave_node_->node_addr_.first,slave_node_->node_addr_.second).then( - [=](OkAtom){ - slave_node_->heartbeat_count_ = 0; - }, - [=](OkAtom ,unsigned int node_id,const BaseNode& node){ - /* - * In this condition, master is down, and restart quickly. - * The slave node is still send heartbeat. - * master will give is a new id like reregister. - */ - slave_node_->set_node_id(node_id); - Environment::getInstance()->setNodeID(node_id); - slave_node_->node_id_to_addr_.clear(); - slave_node_->node_id_to_actor_.clear(); - slave_node_->node_id_to_addr_.insert(node.node_id_to_addr_.begin(), - node.node_id_to_addr_.end()); - for (auto it = slave_node_->node_id_to_addr_.begin(); - it != slave_node_->node_id_to_addr_.end(); ++it) { - auto actor = - remote_actor(it->second.first, it->second.second); - slave_node_->node_id_to_actor_.insert(make_pair(it->first, actor)); - } - LOG(INFO) << "register node succeed in heartbeart stage! insert " - << node.node_id_to_addr_.size() << " nodes"; - slave_node_->heartbeat_count_ = 0; - BlockManager::getInstance()->initialize(); - } - ); - }catch(caf::network_error& e){ - LOG(WARNING) << "node"<get_node_id() - <<"can't send heartbeart to master"<get_node_id() - <<"occur bind failure"<master_actor_ = + caf::io::remote_actor(slave_node_->master_addr_.first, + slave_node_->master_addr_.second); + sync_send(slave_node_->master_actor_, HeartBeatAtom::value, + slave_node_->get_node_id(), slave_node_->node_addr_.first, + slave_node_->node_addr_.second) + .then([=](OkAtom) { slave_node_->heartbeat_count_ = 0; }, + [=](OkAtom, unsigned int node_id, const BaseNode& node) { + /* + * In this condition, master is down, and restart + * quickly. + * The slave node is still send heartbeat. + * master will give is a new id like reregister. + */ + slave_node_->set_node_id(node_id); + Environment::getInstance()->setNodeID(node_id); + slave_node_->node_id_to_addr_.clear(); + slave_node_->node_id_to_actor_.clear(); + slave_node_->node_id_to_addr_.insert( + node.node_id_to_addr_.begin(), + node.node_id_to_addr_.end()); + for (auto it = slave_node_->node_id_to_addr_.begin(); + it != slave_node_->node_id_to_addr_.end(); ++it) { + auto actor = + remote_actor(it->second.first, it->second.second); + slave_node_->node_id_to_actor_.insert( + make_pair(it->first, actor)); + } + LOG(INFO) << "register node succeed in heartbeart " + "stage! insert " + << node.node_id_to_addr_.size() << " nodes"; + slave_node_->heartbeat_count_ = 0; + BlockManager::getInstance()->initialize(); + }); + } catch (caf::network_error& e) { + LOG(WARNING) << "node" << slave_node_->get_node_id() + << "can't send heartbeart to master" << endl; + } catch (caf::bind_failure& e) { + LOG(WARNING) << "node" << slave_node_->get_node_id() + << "occur bind failure" << endl; } slave_node_->heartbeat_count_++; - if(slave_node_->heartbeat_count_ > kTimeout*2){ + if (slave_node_->heartbeat_count_ > kTimeout * 2) { // slave lost master. - LOG(INFO)<<"slave"<node_id_<<"lost heartbeat from master, start register again"<node_id_<<"lost heartbeat from master, start register again"<node_id_ + << "lost heartbeat from master, start register again" + << endl; + std::cout << "slave" << slave_node_->node_id_ + << "lost heartbeat from master, start register again" + << endl; bool is_success = false; - become( - caf::keep_behavior, - [=, &is_success](RegisterAtom){ - auto ret = slave_node_->RegisterToMaster(false); - if (ret == rSuccess){ - LOG(INFO)<<"reregister successfully , now the node id is "<get_node_id()<get_node_id()<initialize(); - is_success = true; - unbecome(); - }else{ - //when slave Register fails, - caf::scoped_actor self; - delayed_send(this,std::chrono::seconds(kTimeout),RegisterAtom::value); - LOG(WARNING)<<"register fail, slave will register in 5 seconds"<RegisterToMaster(false); + if (ret == rSuccess) { + LOG(INFO) << "reregister successfully , now the node id is " + << slave_node_->get_node_id() << endl; + std::cout << "reregister successfully , now the node id is " + << slave_node_->get_node_id() << endl; + // report storage message to new master + BlockManager::getInstance()->initialize(); + is_success = true; + unbecome(); + } else { + // when slave Register fails, + caf::scoped_actor self; + delayed_send(this, std::chrono::seconds(kTimeout), + RegisterAtom::value); + LOG(WARNING) + << "register fail, slave will register in 5 seconds" + << endl; + std::cerr << "register fail, slave will register in 5 seconds" + << endl; + } + }); + if (!is_success) { caf::scoped_actor self; - self->send(this,RegisterAtom::value); + self->send(this, RegisterAtom::value); } } - delayed_send(this, std::chrono::seconds(kTimeout/5), HeartBeatAtom::value); + delayed_send(this, std::chrono::seconds(kTimeout / 5), + HeartBeatAtom::value); }, - [=](SyncNodeInfo, const BaseNode& node){ + [=](SyncNodeInfo, const BaseNode& node) { slave_node_->node_id_to_addr_.clear(); slave_node_->node_id_to_actor_.clear(); slave_node_->node_id_to_addr_.insert(node.node_id_to_addr_.begin(), - node.node_id_to_addr_.end()); + node.node_id_to_addr_.end()); for (auto it = slave_node_->node_id_to_addr_.begin(); - it != slave_node_->node_id_to_addr_.end(); ++it) { + it != slave_node_->node_id_to_addr_.end(); ++it) { try { - auto actor = - remote_actor(it->second.first, it->second.second); - slave_node_->node_id_to_actor_.insert(make_pair(it->first, actor)); - }catch (caf::network_error& e) { - LOG(WARNING) << "cann't connect to node ( " <first<< " , "<second.first << - it->second.second<< " ) and create remote actor failed!!"; + auto actor = remote_actor(it->second.first, it->second.second); + slave_node_->node_id_to_actor_.insert( + make_pair(it->first, actor)); + } catch (caf::network_error& e) { + LOG(WARNING) << "cann't connect to node ( " << it->first << " , " + << it->second.first << it->second.second + << " ) and create remote actor failed!!"; } } - LOG(INFO) <<"node"<get_node_id() - <<"update nodelist info successfully, now size is"<node_id_to_addr_.size()<get_node_id() + << "update nodelist info successfully, now size is" + << slave_node_->node_id_to_addr_.size() << endl; }, - [=](OkAtom){ - }, - caf::others >> - [=]() { LOG(WARNING) << "unknown message at slave node!!!" << endl; } + [=](OkAtom) {}, + caf::others >> [=]() { + LOG(WARNING) << "unknown message at slave node!!!" + << endl; + } }; } @@ -323,9 +340,10 @@ void SlaveNode::CreateActor() { RetCode SlaveNode::RegisterToMaster(bool isFirstRegister) { RetCode ret = rSuccess; caf::scoped_actor self; - LOG(INFO)<<"slave just RegisterToMaster!!"<sync_send(master_actor_, RegisterAtom::value, get_node_ip(), get_node_port()) .await([=](OkAtom, const unsigned int& id, const BaseNode& node) { @@ -344,12 +362,13 @@ RetCode SlaveNode::RegisterToMaster(bool isFirstRegister) { } LOG(INFO) << "register node succeed! insert " << node.node_id_to_addr_.size() << " nodes"; - if(isFirstRegister){ + if (isFirstRegister) { caf::scoped_actor self1; - auto slave_self = caf::io::remote_actor(get_node_ip(), get_node_port()); - self1->send(slave_self,HeartBeatAtom::value); + auto slave_self = + caf::io::remote_actor(get_node_ip(), get_node_port()); + self1->send(slave_self, HeartBeatAtom::value); } - }, + }, [&](const caf::sync_exited_msg& msg) { LOG(WARNING) << "register link fail"; }, @@ -363,16 +382,62 @@ RetCode SlaveNode::RegisterToMaster(bool isFirstRegister) { LOG(WARNING) << "cann't connect to " << master_addr_.first << " , " << master_addr_.second << " in register"; } + + // register to master loader + { + int retry_max_time = 10; + int time = 0; + caf::actor master_actor; + try { + master_actor = + remote_actor(Config::master_loader_ip, Config::master_loader_port); + } catch (exception& e) { + LOG(ERROR) << "register to master loader fail"; + } + while (1) { + try { + caf::scoped_actor self; + self->sync_send(master_actor, RegNodeAtom::value, + NodeAddress(get_node_ip(), to_string(get_node_port())), + (int)node_id_).await([&](int r) { + LOG(INFO) << "sent node info and received response"; + }); + break; + } catch (exception& e) { + cout << "new remote actor " << Config::master_loader_ip << "," + << Config::master_loader_port << "failed for " << ++time + << " time. " << e.what() << endl; + usleep(100 * 1000); + if (time >= retry_max_time) return false; + } + } + } + + return ret; +} + +RetCode SlaveNode::AddBlocks(uint64_t part_id, int block_num) { + RetCode ret = rSuccess; + try { + // cout << "try slave send add block on part:" << part_id << endl; + caf::scoped_actor self; + self->sync_send(master_actor_, AddBlockAtom::value, part_id, block_num) + .await([&](int r) { ret = r; }); + } catch (exception& e) { + cout << "slave send add block on part:" << part_id << " fail" << endl; + } + return ret; } -}/* namespace claims */ +} /* namespace claims */ -//RetCode SlaveNode::reRegisterToMaster() { +// RetCode SlaveNode::reRegisterToMaster() { // RetCode ret = rSuccess; // caf::scoped_actor self; // LOG(INFO)<<"slave reRegisterToMaster!!"<sync_send(master_actor_, RegisterAtom::value, get_node_ip(), // get_node_port()) // .await([=](OkAtom, const unsigned int& id, const BaseNode& node) { diff --git a/node_manager/slave_node.h b/node_manager/slave_node.h index e4459936f..7dc1d1230 100644 --- a/node_manager/slave_node.h +++ b/node_manager/slave_node.h @@ -47,11 +47,15 @@ class SlaveNode : public BaseNode { SlaveNode(string node_ip, uint16_t node_port); void CreateActor(); virtual ~SlaveNode(); + RetCode RegisterToMaster(bool isFirstRegister); RetCode reRegisterToMaster(); + RetCode AddBlocks(uint64_t part, int block_num); + static SlaveNode* GetInstance(); RetCode AddOneNode(const unsigned int& node_id, const string& node_ip, const uint16_t& node_port); + private: static SlaveNode* instance_; unsigned int heartbeat_count_; diff --git a/physical_operator/physical_projection_scan.cpp b/physical_operator/physical_projection_scan.cpp index 3b1cc2ef2..b45ecd721 100644 --- a/physical_operator/physical_projection_scan.cpp +++ b/physical_operator/physical_projection_scan.cpp @@ -46,7 +46,7 @@ using claims::common::rNoPartitionIdScan; using claims::common::rSuccess; using claims::common::rCodegenFailed; - +using claims::txn::GetGlobalPartId; namespace claims { namespace physical_operator { PhysicalProjectionScan::PhysicalProjectionScan(State state) @@ -102,8 +102,24 @@ bool PhysicalProjectionScan::Open(SegmentExecStatus* const exec_status, .c_str() << CStrError(rNoPartitionIdScan) << std::endl; SetReturnStatus(false); } else { - partition_reader_iterator_ = - partition_handle_->CreateAtomicReaderIterator(); + auto table_id = state_.projection_id_.table_id; + auto proj_id = state_.projection_id_.projection_off; + auto part_id = kPartitionOffset; + auto global_part_id = GetGlobalPartId(table_id, proj_id, part_id); + auto cp = state_.query_.scan_cp_list_[global_part_id]; + // cout << "table:" << table_id << ",proj:" << proj_id + // << ",part_id:" << part_id << ",cp:" << cp << endl; + partition_reader_iterator_ = partition_handle_->CreateTxnReaderIterator( + cp, state_.query_.scan_snapshot_[global_part_id]); + cout << "version:" << state_.query_.ts_ << ",part:" << global_part_id + << ",checkpoint :" + << "block:" << cp / BLOCK_SIZE << "," << cp % BLOCK_SIZE << endl; + for (auto& part : state_.query_.scan_snapshot_[global_part_id]) + cout << "[<" << part.first / BLOCK_SIZE << "," + << part.first % BLOCK_SIZE << ">," << part.second << "]"; + cout << endl; + // partition_reader_iterator_ = + // partition_handle_->CreateAtomicReaderIterator(); SetReturnStatus(true); } diff --git a/physical_operator/physical_projection_scan.h b/physical_operator/physical_projection_scan.h index de5ecbe9b..e1a973899 100644 --- a/physical_operator/physical_projection_scan.h +++ b/physical_operator/physical_projection_scan.h @@ -49,7 +49,8 @@ #include "../storage/PartitionStorage.h" #include "../physical_operator/physical_operator.h" #include "../common/ExpandedThreadTracker.h" - +#include "../txn_manager/txn.hpp" +using claims::txn::Query; namespace claims { namespace physical_operator { @@ -111,10 +112,11 @@ class PhysicalProjectionScan : public PhysicalOperator { ProjectionID projection_id_; unsigned block_size_; float sample_rate_; + Query query_; friend class boost::serialization::access; template void serialize(Archive& ar, const unsigned int version) { - ar& schema_& projection_id_& block_size_& sample_rate_; + ar& schema_& projection_id_& block_size_& sample_rate_& query_; } }; PhysicalProjectionScan(State state); @@ -138,6 +140,10 @@ class PhysicalProjectionScan : public PhysicalOperator { bool Close(SegmentExecStatus* const exec_status); void Print(); RetCode GetAllSegments(stack* all_segments); + void SetTxnInfo(const Query& query) { + state_.query_ = query; + state_.query_.GenTxnInfo(); + } private: bool PassSample() const; diff --git a/stmt_handler/delete_stmt_exec.cpp b/stmt_handler/delete_stmt_exec.cpp index e56988f5a..cd6bc9f99 100644 --- a/stmt_handler/delete_stmt_exec.cpp +++ b/stmt_handler/delete_stmt_exec.cpp @@ -34,14 +34,14 @@ #include "../common/Block/BlockStream.h" #include "../common/Block/ResultSet.h" -#include "../loader/data_injector.h" #include "../catalog/table.h" #include "../catalog/projection.h" #include "../Daemon/Daemon.h" #include "../sql_parser/ast_node/ast_select_stmt.h" #include "../stmt_handler/select_exec.h" #include "../common/error_define.h" -using claims::loader::DataInjector; +#include "../loader/data_ingestion.h" +using claims::loader::DataIngestion; using std::endl; using std::string; using std::vector; @@ -265,8 +265,8 @@ void DeleteStmtExec::InsertDeletedDataIntoTableDEL( delete tuple_it; } - DataInjector* injector = new DataInjector(table_del); - injector->InsertFromString(ostr.str(), exec_result); + DataIngestion* injestion = new DataIngestion(table_del); + injestion->InsertFromString(ostr.str(), exec_result); // HdfsLoader* Hl = new HdfsLoader(tabledel); // string tmp = ostr.str(); // Hl->append(ostr.str()); diff --git a/stmt_handler/drop_table_exec.cpp b/stmt_handler/drop_table_exec.cpp index a7b853013..4ca0c4400 100644 --- a/stmt_handler/drop_table_exec.cpp +++ b/stmt_handler/drop_table_exec.cpp @@ -36,9 +36,10 @@ #include "../common/error_define.h" #include "../Config.h" #include "../Environment.h" -#include "../loader/data_injector.h" #include "../loader/table_file_connector.h" #include "../stmt_handler/drop_table_exec.h" + +#include "../loader/data_ingestion.h" using claims::common::FilePlatform; using claims::loader::TableFileConnector; using claims::catalog::Catalog; diff --git a/stmt_handler/insert_exec.cpp b/stmt_handler/insert_exec.cpp index 302d46c8f..931ffd33c 100644 --- a/stmt_handler/insert_exec.cpp +++ b/stmt_handler/insert_exec.cpp @@ -33,13 +33,13 @@ #include "../catalog/table.h" #include "../catalog/catalog.h" #include "../Environment.h" -#include "../loader/data_injector.h" #include "../common/error_define.h" +#include "../loader/data_ingestion.h" using claims::catalog::Catalog; using claims::common::rSuccess; using claims::common::FileOpenFlag; -using claims::loader::DataInjector; +using claims::loader::DataIngestion; using claims::common::rNotSupport; using claims::catalog::TableDescriptor; using claims::common::rTableNotExisted; @@ -315,9 +315,9 @@ RetCode InsertExec::Execute(ExecutedResult *exec_result) { if (!is_correct_) return claims::common::rFailure; - DataInjector *injector = new DataInjector(table); + DataIngestion *injestion = new DataIngestion(table); // str() will copy string buffer without the last '\n' - ret = injector->InsertFromString(ostr.str() + "\n", exec_result); + ret = injestion->InsertFromString(ostr.str() + "\n", exec_result); if (rSuccess == ret) { ostr.clear(); ostr.str(""); @@ -329,7 +329,7 @@ RetCode InsertExec::Execute(ExecutedResult *exec_result) { << table->getTableName() << endl; exec_result->SetError("failed to insert tuples into table "); } - DELETE_PTR(injector); + DELETE_PTR(injestion); Environment::getInstance()->getCatalog()->saveCatalog(); } diff --git a/stmt_handler/load_exec.cpp b/stmt_handler/load_exec.cpp index 574fa253f..165b078b6 100644 --- a/stmt_handler/load_exec.cpp +++ b/stmt_handler/load_exec.cpp @@ -31,9 +31,9 @@ #include #include "../stmt_handler/load_exec.h" #include "../Environment.h" -#include "../loader/data_injector.h" +#include "../loader/data_ingestion.h" using std::vector; -using claims::loader::DataInjector; +using claims::loader::DataIngestion; namespace claims { namespace stmt_handler { #define NEWRESULT @@ -119,11 +119,11 @@ RetCode LoadExec::Execute(ExecutedResult *exec_result) { GETCURRENTTIME(start_time); // LOG(INFO) << buf << std::endl; #ifdef NEW_LOADER - DataInjector *injector = - new DataInjector(table, column_separator, tuple_separator); - // cout << endl << "load mode is: " << load_ast_->mode_; - ret = injector->LoadFromFile(path_names, + DataIngestion *injestion = + new DataIngestion(table, column_separator, tuple_separator); + ret = injestion->LoadFromFile(path_names, + static_cast(load_ast_->mode_), exec_result, load_ast_->sample_); double load_time_ms = GetElapsedTime(start_time); @@ -142,7 +142,7 @@ RetCode LoadExec::Execute(ExecutedResult *exec_result) { oss << "load data successfully (" << load_time_ms / 1000.0 << " sec) "; exec_result->SetResult(oss.str(), NULL); } - DELETE_PTR(injector); + DELETE_PTR(injestion); #else Hdfsloader *loader = new Hdfsloader(column_separator[0], tuple_separator[0], path_names, table, diff --git a/stmt_handler/select_exec.cpp b/stmt_handler/select_exec.cpp index ddb048506..9e5912798 100644 --- a/stmt_handler/select_exec.cpp +++ b/stmt_handler/select_exec.cpp @@ -48,6 +48,8 @@ #include "../physical_operator/physical_nest_loop_join.h" #include "../physical_operator/physical_operator_base.h" #include "../stmt_handler/stmt_handler.h" +#include "../txn_manager/txn.hpp" +#include "../txn_manager/txn_client.hpp" #include "caf/io/all.hpp" using caf::io::remote_actor; using claims::logical_operator::LogicalQueryPlanRoot; @@ -63,6 +65,9 @@ using std::string; using std::cout; using std::make_pair; using claims::common::rStmtCancelled; +using claims::txn::Query; +using claims::txn::QueryReq; +using claims::txn::TxnClient; namespace claims { namespace stmt_handler { @@ -180,7 +185,16 @@ RetCode SelectExec::Execute() { logic_plan->Print(); cout << "--------------begin physical plan -------------------" << endl; #endif + /** + * Add Txn information for plan + */ + QueryReq request; + Query query; + logic_plan->GetTxnInfo(request); + TxnClient::BeginQuery(request, query); + logic_plan->SetTxnInfo(query); + // cout << request.ToString() << endl; PhysicalOperatorBase* physical_plan = logic_plan->GetPhysicalPlan(64 * 1024); #ifndef PRINTCONTEXT physical_plan->Print(); @@ -292,7 +306,8 @@ void* SelectExec::SendAllSegments(void* arg) { LOG(INFO) << "sending plan of " << select_exec->get_stmt_exec_status()->get_query_id() - << " , " << segment_id << "succeed!!!" << endl; + << " , " << segment_id << " , partition:" << i + << " succeed!!!" << endl; } } else { LOG(ERROR) << "asking upper exchange failed!" << endl; diff --git a/stmt_handler/update_stmt_exec.cpp b/stmt_handler/update_stmt_exec.cpp index a2feef39a..df729be29 100644 --- a/stmt_handler/update_stmt_exec.cpp +++ b/stmt_handler/update_stmt_exec.cpp @@ -35,14 +35,14 @@ #include "../common/Block/BlockStream.h" #include "../common/Block/ResultSet.h" -#include "../loader/data_injector.h" +#include "../loader/data_ingestion.h" #include "../catalog/table.h" #include "../catalog/projection.h" #include "../Daemon/Daemon.h" #include "../sql_parser/ast_node/ast_select_stmt.h" #include "../stmt_handler/select_exec.h" #include "../common/error_define.h" -using claims::loader::DataInjector; +using claims::loader::DataIngestion; using std::endl; using std::string; using std::vector; @@ -235,7 +235,7 @@ void UpdateStmtExec::InsertUpdatedDataIntoTable(string table_name, return; } - DataInjector* injector = new DataInjector(table); + DataIngestion* injector = new DataIngestion(table); injector->InsertFromString(ostr.str(), exec_result); Environment::getInstance()->getCatalog()->saveCatalog(); } diff --git a/storage/BlockManager.cpp b/storage/BlockManager.cpp index 761bfe267..ca43be7ae 100755 --- a/storage/BlockManager.cpp +++ b/storage/BlockManager.cpp @@ -4,8 +4,10 @@ * Created on: 2013-10-11 * Author: casa */ -#include #include "BlockManager.h" + +#include +#include #include #include "../common/file_handle/hdfs_connector.h" #include "../Environment.h" @@ -15,11 +17,12 @@ #include "../Config.h" #include "../common/error_define.h" #include "../common/error_no.h" +// #include "../utility/lock_guard.h" using claims::common::rLoadFromHdfsOpenFailed; using claims::common::rLoadFromDiskOpenFailed; using claims::common::rUnbindPartitionFailed; using claims::common::HdfsConnector; - +// using claims::utility::LockGuard; BlockManager* BlockManager::blockmanager_ = NULL; BlockManager* BlockManager::getInstance() { @@ -297,7 +300,7 @@ int BlockManager::LoadFromHdfs(const ChunkID& chunk_id, void* const& desc, int BlockManager::LoadFromDisk(const ChunkID& chunk_id, void* const& desc, const unsigned& length) const { int ret = 0; - unsigned offset = chunk_id.chunk_off; + uint64_t offset = chunk_id.chunk_off; int fd = FileOpen(chunk_id.partition_id.getPathAndName().c_str(), O_RDONLY); if (fd == -1) { // logging_->elog("Fail to open file [%s].Reason:%s", @@ -312,10 +315,9 @@ int BlockManager::LoadFromDisk(const ChunkID& chunk_id, void* const& desc, DLOG(INFO) << "file [" << chunk_id.partition_id.getPathAndName().c_str() << "] is opened for offset [" << offset << "]" << endl; } - long int file_length = lseek(fd, 0, SEEK_END); - - long start_pos = CHUNK_SIZE * offset; + uint64_t file_length = lseek(fd, 0, SEEK_END); + uint64_t start_pos = CHUNK_SIZE * offset; // logging_->log("start_pos=%ld**********\n", start_pos); DLOG(INFO) << "start_pos=" << start_pos << "*********" << endl; @@ -340,7 +342,8 @@ string BlockManager::askForMatch(string filename, BlockManagerId bmi) { // return file_proj_[filename.c_str()]; } -bool BlockManager::ContainsPartition(const PartitionID& part) const { +bool BlockManager::ContainsPartition(const PartitionID& part) { + LockGuard guard(lock); boost::unordered_map::const_iterator it = partition_id_to_storage_.find(part); return !(it == partition_id_to_storage_.cend()); @@ -380,6 +383,7 @@ bool BlockManager::AddPartition(const PartitionID& partition_id, } bool BlockManager::RemovePartition(const PartitionID& partition_id) { + LockGuard guard(lock); boost::unordered_map::iterator it = partition_id_to_storage_.find(partition_id); if (it == partition_id_to_storage_.cend()) { @@ -394,7 +398,10 @@ bool BlockManager::RemovePartition(const PartitionID& partition_id) { } PartitionStorage* BlockManager::GetPartitionHandle( - const PartitionID& partition_id) const { + const PartitionID& partition_id) { + LockGuard guard(lock); + DLOG(INFO) << "partid2storage size is:" << partition_id_to_storage_.size(); + DLOG(INFO) << "going to find storage [" << partition_id.getName() << "]"; boost::unordered_map::const_iterator it = partition_id_to_storage_.find(partition_id); if (it == partition_id_to_storage_.cend()) { @@ -402,3 +409,13 @@ PartitionStorage* BlockManager::GetPartitionHandle( } return it->second; } + +vector BlockManager::GetAllPartition() { + LockGuard guard(lock); + vector part_list; + for (auto itr = partition_id_to_storage_.begin(); + itr != partition_id_to_storage_.end(); itr++) { + part_list.push_back(itr->first); + } + return part_list; +} diff --git a/storage/BlockManager.h b/storage/BlockManager.h index 13ce8a294..297d18d9a 100755 --- a/storage/BlockManager.h +++ b/storage/BlockManager.h @@ -9,12 +9,12 @@ #define BLOCKMANAGER_H_ #include +#include +#include #include #include #include #include -#include -#include "hdfs.h" #include "MemoryManager.h" #include "DiskStore.h" #include "BlockManagerId.h" @@ -23,9 +23,11 @@ #include "../common/ids.h" #include "../common/Message.h" #include "../common/Logging.h" +#include "../txn_manager/txn.hpp" #include "../utility/lock.h" using namespace std; - +using claims::txn::UInt64; +using claims::txn::PStrip; struct ChunkInfo { ChunkID chunkId; void *hook; @@ -88,11 +90,14 @@ class BlockManager { /* poc测试 */ BlockManagerId *getId(); string askForMatch(string filename, BlockManagerId bmi); - bool ContainsPartition(const PartitionID &part) const; + bool ContainsPartition(const PartitionID &part); bool AddPartition(const PartitionID &, const unsigned &number_of_chunks, const StorageLevel &desirable_storage_level); bool RemovePartition(const PartitionID &); - PartitionStorage *GetPartitionHandle(const PartitionID &partition_id) const; + PartitionStorage *GetPartitionHandle(const PartitionID &partition_id); + + vector GetAllPartition(); + UInt64 MergeHisToRt(PartitionID, const vector &strip_list, UInt64 rt); private: BlockManager(); diff --git a/storage/ChunkStorage.cpp b/storage/ChunkStorage.cpp index e67048566..35fdc01c3 100755 --- a/storage/ChunkStorage.cpp +++ b/storage/ChunkStorage.cpp @@ -27,16 +27,17 @@ * */ #include -#include "ChunkStorage.h" +#include +#include "./BlockManager.h" +#include "./ChunkStorage.h" +#include "../common/error_define.h" +#include "../common/error_no.h" #include "../common/file_handle/hdfs_connector.h" -#include "BlockManager.h" +#include "../Config.h" #include "../Debug.h" -#include "../utility/warmup.h" #include "../utility/rdtsc.h" -#include "../Config.h" -#include "../common/error_define.h" -#include "../common/error_no.h" - +#include "../utility/warmup.h" +#include "../loader/slave_loader.cpp" using claims::common::CStrError; using claims::common::rUnkownStroageLevel; using claims::common::rFailOpenFileInDiskChunkReaderIterator; @@ -44,6 +45,7 @@ using claims::common::rFailReadOneBlockInDiskChunkReaderIterator; using claims::common::rFailOpenHDFSFileInStorage; using claims::common::rFailSetStartOffsetInStorage; using claims::common::HdfsConnector; +using claims::loader::SlaveLoader; bool ChunkReaderIterator::NextBlock() { lock_.acquire(); if (this->cur_block_ >= this->number_of_blocks_) { @@ -55,17 +57,68 @@ bool ChunkReaderIterator::NextBlock() { return true; } -ChunkStorage::ChunkStorage(const ChunkID& chunk_id, const unsigned& block_size, - const StorageLevel& desirable_storage_level) +ChunkStorage::ChunkStorage(const ChunkID& chunk_id, const unsigned block_size, + const StorageLevel desirable_storage_level) : chunk_id_(chunk_id), block_size_(block_size), desirable_storage_level_(desirable_storage_level), current_storage_level_(HDFS), chunk_size_(CHUNK_SIZE) {} +ChunkStorage::ChunkStorage(const ChunkID& chunk_id, const unsigned block_size, + const StorageLevel desirable_storage_level, + const StorageLevel current_storage_level) + : chunk_id_(chunk_id), + block_size_(block_size), + desirable_storage_level_(desirable_storage_level), + current_storage_level_(current_storage_level), + chunk_size_(CHUNK_SIZE) {} + ChunkStorage::~ChunkStorage() { - // TODO(wangli): Auto-generated destructor stub + // TODO(wangli): Auto-generated destructor stub } + +// apply memory for chunk size for writing later by slave loader +RetCode ChunkStorage::ApplyMemory() { + RetCode ret = claims::common::rSuccess; + HdfsInMemoryChunk chunk_info; + chunk_info.length = CHUNK_SIZE; + if (BlockManager::getInstance()->getMemoryChunkStore()->ApplyChunk( + chunk_id_, chunk_info.hook)) { + /* there is enough memory storage space, so the storage level can be + * shifted.*/ + current_storage_level_ = MEMORY; + + /* + * set each block tail to "zero" in new chunk + */ + for (auto offset = BLOCK_SIZE; offset <= CHUNK_SIZE; offset += BLOCK_SIZE) { + *reinterpret_cast(chunk_info.hook + offset - + sizeof(unsigned)) = 0; + } + + /* cout << "Success to apply mem chunk:" + << chunk_id_.partition_id.partition_off << "," << + chunk_id_.chunk_off + << endl;*/ + /* update the chunk info in the Chunk store in case that the + * chunk_info is updated.*/ + BlockManager::getInstance()->getMemoryChunkStore()->UpdateChunkInfo( + chunk_id_, chunk_info); + } else { + /* + * The storage memory is full, some swap algorithm is needed here. + * TODO: swap algorithm. + */ + /* cout << "Failed to apply mem chunk:" << + chunk_id_.partition_id.partition_off + << "," << chunk_id_.chunk_off << endl;*/ + ret = claims::common::rNoMemory; + assert(false); + } + return ret; +} + /** * The function create the chunk iterator. Meantime, according to the storage * level, create the chunk reader iterator in which storage level. It is a @@ -75,6 +128,7 @@ ChunkStorage::~ChunkStorage() { ChunkReaderIterator* ChunkStorage::CreateChunkReaderIterator() { lock_.acquire(); ChunkReaderIterator* ret; + HdfsInMemoryChunk chunk_info; if (current_storage_level_ == MEMORY && !BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( @@ -88,7 +142,7 @@ ChunkReaderIterator* ChunkStorage::CreateChunkReaderIterator() { if (BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( chunk_id_, chunk_info)) ret = new InMemoryChunkReaderItetaor(chunk_info.hook, chunk_info.length, - chunk_info.length / block_size_, + CHUNK_SIZE / BLOCK_SIZE, block_size_, chunk_id_); else ret = NULL; @@ -129,6 +183,7 @@ ChunkReaderIterator* ChunkStorage::CreateChunkReaderIterator() { * chunk_info is updated.*/ BlockManager::getInstance()->getMemoryChunkStore()->UpdateChunkInfo( chunk_id_, chunk_info); + // printf("%lx current is set to memory!\n"); ret = new InMemoryChunkReaderItetaor( chunk_info.hook, chunk_info.length, chunk_info.length / block_size_, block_size_, chunk_id_); @@ -391,6 +446,8 @@ void ChunkReaderIterator::InMemeryBlockAccessor::GetBlock( int tuple_count = *(unsigned*)((char*)target_block_start_address_ + block->getSerializedBlockSize() - sizeof(unsigned)); + DLOG(INFO) << "Get Block whose tuple counts is:" << tuple_count + << ", start address is:" << target_block_start_address_; dynamic_cast(block)->setTuplesInBlock(tuple_count); // ((BlockStreamFix*)block)->free_ = // (char*)block->getBlock() + @@ -411,3 +468,59 @@ void ChunkReaderIterator::InHDFSBlockAccessor::GetBlock( printf("InHDFSBlockAccessor::getBlock() is not implemented!\n"); assert(false); } + +uint64_t InMemoryChunkWriterIterator::Write(const void* const buffer_to_write, + uint64_t length_to_write) { + DLOG(INFO) << "current block id is:" << block_id_ + << ", block size is:" << block_size_; + void* block_offset = chunk_offset_ + block_id_ * block_size_; + assert(block_offset < chunk_offset_ + CHUNK_SIZE && + "this block is not in this chunk"); + + unsigned* tuple_count_in_block = reinterpret_cast( + block_offset + block_size_ - sizeof(unsigned)); + int left_space = block_size_ - sizeof(unsigned) - pos_in_block_; + int can_store_tuple_count = left_space / tuple_size_; + + // int can_store_tuple_count = + // (block_size_ - sizeof(unsigned)) / tuple_size_ - + // *tuple_count_in_block; + assert(can_store_tuple_count >= 0); + DLOG(INFO) << "block whose id is " << block_id_ << " stored " + << *tuple_count_in_block << " tuple and leaf " + << can_store_tuple_count + << " tuple space. and tuple size is:" << tuple_size_; + + /// there are space to store data + if (can_store_tuple_count > 0) { + int actual_written_tuple_count = length_to_write > left_space + ? can_store_tuple_count + : length_to_write / tuple_size_; + DLOG(INFO) << "memcpy " << actual_written_tuple_count + << " tuples to memory whose start pos is " + << block_offset + pos_in_block_ + << ". buffer to write: " << buffer_to_write; + memcpy(block_offset + pos_in_block_, buffer_to_write, + actual_written_tuple_count * tuple_size_); + /* for (auto p = 0; p < actual_written_tuple_count; p++) { + for (auto c = 1; c < schema_->getncolumns(); c++) + SlaveLoader::logfile + << schema_->getColumnValue(buffer_to_write + p * tuple_size_, c) + << "|"; + SlaveLoader::logfile << schema_->getTupleMaxSize() << endl; + }*/ + /* + SlaveLoader::logfile << block_id_ << "," << pos_in_block_ << "," + << pos_in_block_ + + actual_written_tuple_count* tuple_size_ << + endl; + */ + + DLOG(INFO) << "copy " << actual_written_tuple_count * tuple_size_ + << " bytes into block:" << block_id_; + + __sync_add_and_fetch(tuple_count_in_block, actual_written_tuple_count); + return actual_written_tuple_count * tuple_size_; + } + return 0; +} diff --git a/storage/ChunkStorage.h b/storage/ChunkStorage.h index 9aca62f45..0a945fada 100755 --- a/storage/ChunkStorage.h +++ b/storage/ChunkStorage.h @@ -29,9 +29,12 @@ #ifndef CHUNKSTORAGE_H_ #define CHUNKSTORAGE_H_ -#include #include +#include +#include + #include "./StorageLevel.h" +#include "../common/error_define.h" #include "../utility/lock.h" #include "../common/ids.h" #include "../common/Block/BlockStream.h" @@ -181,6 +184,7 @@ class InMemoryChunkReaderItetaor : public ChunkReaderIterator { const unsigned& block_size, const ChunkID& chunk_id); virtual ~InMemoryChunkReaderItetaor(); + void* getChunk() { return start_; } /** * @brief Method description: Just judge whether the cursor of block arrived @@ -268,14 +272,52 @@ class HDFSChunkReaderIterator : public ChunkReaderIterator { hdfsFile hdfs_fd_; }; +class InMemoryChunkWriterIterator { + public: + InMemoryChunkWriterIterator(void* chunk_offset, uint64_t chunk_size, + uint64_t block_id, uint64_t block_size, + uint64_t pos_in_block, uint64_t tuple_size, + Schema* schema) + : chunk_offset_(chunk_offset), + chunk_size_(chunk_size), + block_id_(block_id), + block_size_(block_size), + pos_in_block_(pos_in_block), + tuple_size_(tuple_size), + schema_(schema) {} + + public: + uint64_t Write(const void* const buffer_to_write, uint64_t length_to_write); + + bool NextBlock() { + if (++block_id_ > (chunk_size_ / block_size_ - 1)) return false; + pos_in_block_ = 0; + return true; + } + uint64_t GetBlockId() const { return block_id_; } + uint64_t GetBlockPos() const { return pos_in_block_; } + + private: + void* chunk_offset_; + uint64_t chunk_size_; + uint64_t block_id_; + uint64_t block_size_; + uint64_t pos_in_block_; + uint64_t tuple_size_; + Schema* schema_; +}; class ChunkStorage { public: /** * Considering that how block size effects the performance is to be tested, * here we leave a parameter block_size for the performance test concern. */ - ChunkStorage(const ChunkID& chunk_id, const unsigned& block_size, - const StorageLevel& desirable_storage_level); + ChunkStorage(const ChunkID& chunk_id, const unsigned block_size, + const StorageLevel desirable_storage_level); + + ChunkStorage(const ChunkID& chunk_id, const unsigned block_size, + const StorageLevel desirable_storage_level, + const StorageLevel current_storage_level); virtual ~ChunkStorage(); @@ -289,15 +331,18 @@ class ChunkStorage { ChunkID GetChunkID() { return chunk_id_; } - void SetCurrentStorageLevel(const StorageLevel& current_storage_level) { + void SetCurrentStorageLevel(const StorageLevel current_storage_level) { current_storage_level_ = current_storage_level; } + RetCode ApplyMemory(); + StorageLevel GetStorgeLevel() const { current_storage_level_; } + private: unsigned block_size_; unsigned chunk_size_; StorageLevel desirable_storage_level_; - StorageLevel current_storage_level_; + atomic current_storage_level_; ChunkID chunk_id_; Lock lock_; }; diff --git a/storage/MemoryManager.cpp b/storage/MemoryManager.cpp index 76309f205..91ecd9162 100644 --- a/storage/MemoryManager.cpp +++ b/storage/MemoryManager.cpp @@ -88,6 +88,8 @@ bool MemoryChunkStore::ApplyChunk(ChunkID chunk_id, void*& start_address) { if (NULL != (start_address = chunk_pool_.malloc())) { chunk_list_[chunk_id] = HdfsInMemoryChunk(start_address, CHUNK_SIZE); lock_.release(); + cout << "apply meme chunk:" << chunk_id.partition_id.partition_off << "," + << chunk_id.chunk_off << ", pool size:" << chunk_list_.size() << endl; return true; } else { ELOG(rMemoryPoolMallocFail, "Error occurs when memalign!"); diff --git a/storage/PartitionStorage.cpp b/storage/PartitionStorage.cpp index 6729a8f55..a06f3bd4f 100755 --- a/storage/PartitionStorage.cpp +++ b/storage/PartitionStorage.cpp @@ -28,10 +28,35 @@ */ #include "PartitionStorage.h" -#include "../Debug.h" + +#include +#include +#include +#include "../common/error_define.h" +// #include "../Debug.h" #include "./MemoryManager.h" +#include "../common/memory_handle.h" #include "../Config.h" #include "../Resource/BufferManager.h" +#include "../storage/BlockManager.h" +#include "../common/file_handle/file_handle_imp.h" +#include "../common/file_handle/hdfs_file_handle_imp.h" +#include "../common/file_handle/file_handle_imp_factory.h" +#include "../utility/resource_guard.h" +using claims::common::rSuccess; +using claims::common::FileHandleImpFactory; +using claims::common::FileHandleImp; +using claims::common::kHdfs; +using claims::common::kDisk; +using claims::utility::LockGuard; +using claims::common::rGetFileHandleFail; +using claims::common::rGetMemoryHandleFail; + +ofstream logfile; +ofstream qylog; +int qylog_count = 0; +ofstream mvlog; +int mvlog_count = 0; /** * According to number_of_chunks, construct chunk from partition and add into @@ -45,6 +70,7 @@ PartitionStorage::PartitionStorage(const PartitionID& partition_id, const StorageLevel& storage_level) : partition_id_(partition_id), number_of_chunks_(number_of_chunks), + number_of_rt_chunks_(0), desirable_storage_level_(storage_level) { if (number_of_chunks_ * CHUNK_SIZE / 1024 / 1024 > BufferManager::getInstance()->getStorageMemoryBudegeInMilibyte() * @@ -52,20 +78,97 @@ PartitionStorage::PartitionStorage(const PartitionID& partition_id, MemoryChunkStore::GetInstance()->SetFreeAlgorithm(0); else MemoryChunkStore::GetInstance()->SetFreeAlgorithm(1); - for (unsigned i = 0; i < number_of_chunks_; i++) { - chunk_list_.push_back(new ChunkStorage( - ChunkID(partition_id_, i), BLOCK_SIZE, desirable_storage_level_)); - } + /* for (unsigned i = 0; i < number_of_chunks_; i++) { + chunk_list_.push_back(new ChunkStorage( + ChunkID(partition_id_, i), BLOCK_SIZE, desirable_storage_level_)); + rt_chunk_list_.push_back(new ChunkStorage( + ChunkID(partition_id_, i, true), BLOCK_SIZE, + desirable_storage_level_)); + }*/ + // CheckAndAppendChunkList(number_of_chunks_, false); + // CheckAndAppendChunkList(number_of_chunks_, true); + // cout << "*******chunk_list_" << chunk_list_.size() << endl; + // cout << "open ps log" << endl; + // if (!logfile.is_open()) logfile.open("ps_log.txt"); + if (!qylog.is_open()) qylog.open("qy_log.txt"); + if (!mvlog.is_open()) mvlog.open("mv_log.txt"); } PartitionStorage::~PartitionStorage() { for (unsigned i = 0; i < chunk_list_.size(); i++) { - chunk_list_[i]->~ChunkStorage(); + DELETE_PTR(chunk_list_[i]); } chunk_list_.clear(); + // cout << "close ps log" << endl; + // logfile.close(); +} + +void PartitionStorage::AddNewRTChunk() { + LockGuard guard(write_lock_); + number_of_rt_chunks_++; +} + +void PartitionStorage::AddNewHisChunk() { + LockGuard guard(write_lock_); + number_of_chunks_++; +} + +RetCode PartitionStorage::AddHisChunkWithMemoryApply( + unsigned expected_number_of_chunks, const StorageLevel& storage_level) { + RetCode ret = rSuccess; + LockGuard guard(write_lock_); + // cout << "1..." << endl; + if (chunk_list_.size() >= expected_number_of_chunks) return ret; + DLOG(INFO) << "now chunk number:" << number_of_chunks_ + << ". expected chunk num:" << expected_number_of_chunks; + if (chunk_list_.size() >= expected_number_of_chunks) return ret; + for (unsigned i = chunk_list_.size(); i < expected_number_of_chunks; i++) { + ChunkStorage* chunk = + new ChunkStorage(ChunkID(partition_id_, i), BLOCK_SIZE, storage_level); + chunk_list_.push_back(chunk); + EXEC_AND_DLOG(ret, chunk_list_[i]->ApplyMemory(), + "applied memory for chunk(" << partition_id_.getName() << "," + << i << ")", + "failed to apply memory for chunk(" << partition_id_.getName() + << "," << i << ")"); + assert(ret == rSuccess); + // cout << "2...." << ret << endl; + } + + number_of_chunks_ = expected_number_of_chunks; + assert(chunk_list_.size() == number_of_chunks_); + + return ret; } -void PartitionStorage::AddNewChunk() { number_of_chunks_++; } +RetCode PartitionStorage::AddRtChunkWithMemoryApply( + unsigned expected_number_of_chunks, const StorageLevel& storage_level) { + RetCode ret = rSuccess; + LockGuard guard(write_lock_); + // cout << "******-1*****" << endl; + if (number_of_rt_chunks_ >= expected_number_of_chunks) return ret; + DLOG(INFO) << "now rt chunk number:" << number_of_rt_chunks_ + << ". expected rt chunk num:" << expected_number_of_chunks; + // cout << "******0*****" << endl; + + if (number_of_rt_chunks_ >= expected_number_of_chunks) return ret; + + for (unsigned i = number_of_rt_chunks_; i < expected_number_of_chunks; i++) { + ChunkStorage* chunk = new ChunkStorage(ChunkID(partition_id_, i, true), + BLOCK_SIZE, storage_level); + rt_chunk_list_.push_back(chunk); + EXEC_AND_DLOG(ret, chunk->ApplyMemory(), "applied memory for rt chunk(" + << partition_id_.getName() + << "," << i << ")", + "failed to apply memory for rt chunk(" + << partition_id_.getName() << "," << i << ")"); + } + + number_of_rt_chunks_ = expected_number_of_chunks; + assert(rt_chunk_list_.size() == number_of_rt_chunks_); + + return ret; +} /** * when appending data, the last chunk may be dirty so set storage level as HDFS @@ -75,14 +178,18 @@ void PartitionStorage::AddNewChunk() { number_of_chunks_++; } void PartitionStorage::UpdateChunksWithInsertOrAppend( const PartitionID& partition_id, const unsigned& number_of_chunks, const StorageLevel& storage_level) { + LockGuard guard(write_lock_); if (!chunk_list_.empty()) { MemoryChunkStore::GetInstance()->ReturnChunk( chunk_list_.back()->GetChunkID()); chunk_list_.back()->SetCurrentStorageLevel(HDFS); } - for (unsigned i = number_of_chunks_; i < number_of_chunks; i++) + for (unsigned i = number_of_chunks_; i < number_of_chunks; i++) { chunk_list_.push_back( new ChunkStorage(ChunkID(partition_id, i), BLOCK_SIZE, storage_level)); + /* rt_chunk_list_.push_back(new ChunkStorage(ChunkID(partition_id, i, true), + BLOCK_SIZE, storage_level));*/ + } number_of_chunks_ = number_of_chunks; } @@ -92,6 +199,7 @@ void PartitionStorage::UpdateChunksWithInsertOrAppend( * call back actual method. */ void PartitionStorage::RemoveAllChunks(const PartitionID& partition_id) { + LockGuard guard(write_lock_); if (!chunk_list_.empty()) { vector::iterator iter = chunk_list_.begin(); MemoryChunkStore* mcs = MemoryChunkStore::GetInstance(); @@ -119,6 +227,7 @@ PartitionStorage::PartitionReaderIterator::PartitionReaderIterator( PartitionStorage::PartitionReaderIterator::~PartitionReaderIterator() {} ChunkReaderIterator* PartitionStorage::PartitionReaderIterator::NextChunk() { + // LockGuard guard(ps_->write_lock_); if (chunk_cur_ < ps_->number_of_chunks_) return ps_->chunk_list_[chunk_cur_++]->CreateChunkReaderIterator(); else @@ -130,12 +239,11 @@ PartitionStorage::AtomicPartitionReaderIterator:: ChunkReaderIterator* PartitionStorage::AtomicPartitionReaderIterator::NextChunk() { - ChunkReaderIterator* ret = NULL; + LockGuard guard(ps_->write_lock_); if (chunk_cur_ < ps_->number_of_chunks_) - ret = ps_->chunk_list_[chunk_cur_++]->CreateChunkReaderIterator(); + return ps_->chunk_list_[chunk_cur_++]->CreateChunkReaderIterator(); else - ret = NULL; - return ret; + return NULL; } bool PartitionStorage::PartitionReaderIterator::NextBlock( @@ -169,7 +277,7 @@ bool PartitionStorage::AtomicPartitionReaderIterator::NextBlock( delete chunk_it_; chunk_it_ = NULL; } - if ((chunk_it_ = PartitionReaderIterator::NextChunk()) > 0) { + if ((chunk_it_ = NextChunk()) > 0) { lock_.release(); return NextBlock(block); } else { @@ -178,3 +286,299 @@ bool PartitionStorage::AtomicPartitionReaderIterator::NextBlock( } } } + +PartitionStorage::TxnPartitionReaderIterator::TxnPartitionReaderIterator( + PartitionStorage* partition_storage, uint64_t his_cp, + const vector& rt_strip_list) + : PartitionReaderIterator(partition_storage), + last_his_block_(his_cp / BLOCK_SIZE), + block_cur_(0), + chunk_cur_(-1), + rt_block_index_(0), + rt_chunk_cur_(-1), + rt_chunk_it_(nullptr) { + for (auto& strip : rt_strip_list) { + auto begin = strip.first; + auto end = begin + strip.second; + while (begin < end) { + auto block = begin / BLOCK_SIZE; + auto len = (static_cast(block) + 1) * BLOCK_SIZE <= end + ? (static_cast(block) + 1) * BLOCK_SIZE - begin + : end - begin; + rt_strip_list_.push_back(PStrip(begin, len)); + begin += len; + } + } + cout << "snapshot size:" << rt_strip_list_.size() << endl; + /* string str = "rt:"; + for (auto& strip : rt_strip_list_) { + str += "<" + to_string(strip.first) + "," + to_string(strip.second) + ">"; + } + cout << str << endl;*/ + qylog << "*********query:" << qylog_count++ << "***********" << endl; + qylog << "last_his_block:" << last_his_block_ << endl; +} + +PartitionStorage::TxnPartitionReaderIterator::~TxnPartitionReaderIterator() { + for (auto block : rt_block_buffer_) free(block); +} + +bool PartitionStorage::TxnPartitionReaderIterator::NextBlock( + BlockStreamBase*& block) { + LockGuard guard(lock_); + HdfsInMemoryChunk chunk; + ChunkReaderIterator::block_accessor* ba = nullptr; + if (block_cur_ < last_his_block_) { // scan historical data + int64_t chunk_cur = block_cur_ / (CHUNK_SIZE / BLOCK_SIZE); + if (chunk_cur != chunk_cur_) { // update chunk_it_ + chunk_cur_ = chunk_cur; + ps_->CheckAndAppendChunkList(chunk_cur_ + 1, false); + if (chunk_it_ != nullptr) delete chunk_it_; + chunk_it_ = ps_->chunk_list_[chunk_cur_]->CreateChunkReaderIterator(); + } + assert(chunk_it_ != nullptr); + chunk_it_->GetNextBlockAccessor(ba); + if (ba == nullptr) { + if (chunk_it_ != nullptr) delete chunk_it_; + assert(false); + return false; + } else { + assert(ba != nullptr); + ba->GetBlock(block); + delete ba; + ba = nullptr; + block_cur_++; + /* logfile << "H<" << chunk_it_->chunk_id_.chunk_off << "," << + block_cur_ + << "," << 0 << "," << block->getTuplesInBlock() << ">" << + endl;*/ + if (!block->Full()) + qylog << "HgetBlock() + << ",sizes:" << block->getTuplesInBlock() << ">" << endl; + return true; + } + } else if (rt_block_index_ < rt_strip_list_.size()) { // scan real-time data + auto pos = rt_strip_list_[rt_block_index_].first; + auto offset_in_block = pos - (pos / BLOCK_SIZE) * BLOCK_SIZE; + assert(offset_in_block >= 0); + auto len = rt_strip_list_[rt_block_index_].second; + auto rt_block_cur = pos / BLOCK_SIZE; + auto rt_chunk_cur = pos / CHUNK_SIZE; + // cout << "visit rt:<" << rt_chunk_cur << "," << rt_block_cur << ">" << + // endl; + if (rt_chunk_cur != rt_chunk_cur_) { // move to new rt chunk + rt_chunk_cur_ = rt_chunk_cur; + rt_block_cur_ = rt_chunk_cur_ * (CHUNK_SIZE / BLOCK_SIZE); + ps_->CheckAndAppendChunkList(rt_chunk_cur_ + 1, true); + if (rt_chunk_it_ != nullptr) delete rt_chunk_it_; + rt_chunk_it_ = + ps_->rt_chunk_list_[rt_chunk_cur_]->CreateChunkReaderIterator(); + assert(rt_chunk_it_ != nullptr); + } + do { // move to rt_block_cur + if (ba != nullptr) delete ba; + rt_chunk_it_->GetNextBlockAccessor(ba); + rt_block_cur_++; + } while (rt_block_cur_ <= rt_block_cur); + + if (len == BLOCK_SIZE) { // directly return pointer + ba->GetBlock(block); + /* logfile << "R<" << rt_chunk_it_->chunk_id_.chunk_off << "," + << rt_block_cur << "," << offset_in_block << "," + << block->getTuplesInBlock() << ">" << endl;*/ + if (!block->Full()) + qylog << "warning: RgetTuplesInBlock() << ">" << endl; + } else { + auto tuple_size = + reinterpret_cast(block)->getTupleSize(); + + if ((pos + len) % BLOCK_SIZE == 0) len -= sizeof(unsigned); + assert(pos / BLOCK_SIZE == (pos + len) / BLOCK_SIZE); + auto tuple_count = len / tuple_size; + + ba->GetBlock(block); + auto des_addr = reinterpret_cast(malloc(BLOCK_SIZE)); + auto scr_addr = block->getBlockDataAddress() + offset_in_block; + memcpy(des_addr, scr_addr, len); + *reinterpret_cast(des_addr + BLOCK_SIZE - sizeof(unsigned)) = + tuple_count; + reinterpret_cast(block)->setBlockDataAddress(des_addr); + reinterpret_cast(block)->setTuplesInBlock(tuple_count); + rt_block_buffer_.push_back(des_addr); + /* logfile << "R<" << rt_block_cur << "," << offset_in_block << "," + << block->getTuplesInBlock() << ">" << endl;*/ + qylog << "RgetTuplesInBlock() << ">" << endl; + } + auto count = + *reinterpret_cast(block->getBlockDataAddress() + + BLOCK_SIZE - sizeof(unsigned int)); + delete ba; + ba = nullptr; + rt_block_index_++; + return true; + } + /* logfile << "********* query end **********" << endl;*/ + return false; +} +void PartitionStorage::CheckAndAppendChunkList(unsigned number_of_chunk, + bool is_rt) { + LockGuard guard(write_lock_); + if (!is_rt) { + for (auto size = chunk_list_.size(); size < number_of_chunk; size++) + chunk_list_.push_back(new ChunkStorage( + ChunkID(partition_id_, size), BLOCK_SIZE, desirable_storage_level_)); + } else { + for (auto size = rt_chunk_list_.size(); size < number_of_chunk; size++) + rt_chunk_list_.push_back( + new ChunkStorage(ChunkID(partition_id_, size, true), BLOCK_SIZE, + desirable_storage_level_)); + } + assert(desirable_storage_level_ == MEMORY); +} + +UInt64 PartitionStorage::MergeToHis(UInt64 old_his_cp, + const vector& strip_list) { + auto new_his_cp = old_his_cp; + auto table_id = partition_id_.projection_id.table_id; + auto proj_id = partition_id_.projection_id.projection_off; + Schema* schema = Catalog::getInstance() + ->getTable(table_id) + ->getProjectoin(proj_id) + ->getSchema(); + MemoryGuard schema_guard(schema); + auto tuple_size = schema->getTupleMaxSize(); + HdfsInMemoryChunk chunk_rt, chunk_his; + // if (strip_list.size() > 0) cout << "{before merge" << endl; + if (strip_list.size() > 0) { + mvlog << "*********mov:" << mvlog_count++ << "************" << endl; + mvlog << "plan:"; + for (auto& strip : strip_list) + mvlog << "<" << strip.first / BLOCK_SIZE << "," + << strip.first % BLOCK_SIZE << "=>" + << (strip.first + strip.second) / BLOCK_SIZE << "," + << (strip.first + strip.second) % BLOCK_SIZE << ">"; + mvlog << endl; + } + for (auto& strip : strip_list) { + auto begin = strip.first; + auto end = strip.first + strip.second; + while (begin < end) { + auto move = BLOCK_SIZE - (begin + BLOCK_SIZE) % BLOCK_SIZE; + if (move > end - begin) move = end - begin; + // update historical chunk cur + AddHisChunkWithMemoryApply(new_his_cp / CHUNK_SIZE + 1, MEMORY); + // be carry! the chunk is not begin/CHUN_SIZE + if (!BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( + chunk_list_[new_his_cp / CHUNK_SIZE]->GetChunkID(), chunk_his)) { + // assert(false && begin && begin / CHUNK_SIZE); + } + // update real time chunk cur + // real-time chunk need't check + if (!BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( + rt_chunk_list_[begin / CHUNK_SIZE]->GetChunkID(), chunk_rt)) { + assert(false); + return old_his_cp; + } + // each step move just one full block or even partly block + auto tail_offset = + (new_his_cp + BLOCK_SIZE) % CHUNK_SIZE - sizeof(unsigned); + auto his_addr = chunk_his.hook + new_his_cp % CHUNK_SIZE; + auto rt_addr = chunk_rt.hook + begin % CHUNK_SIZE; + + if (move == BLOCK_SIZE) { // full block + memcpy(his_addr, rt_addr, BLOCK_SIZE); + /* logfile << "full<" << begin / BLOCK_SIZE << "," << begin % + BLOCK_SIZE + << "," + << *reinterpret_cast(rt_addr + BLOCK_SIZE - + sizeof(unsigned)) << "> + => <" + << new_his_cp / BLOCK_SIZE << "," << new_his_cp % + BLOCK_SIZE + << "," + << *reinterpret_cast( + his_addr + BLOCK_SIZE - sizeof(unsigned)) << ">" + << endl;*/ + } else { // partly block + auto real_move = + (begin + move) % BLOCK_SIZE != 0 ? move : move - sizeof(unsigned); + auto tuple_count = real_move / tuple_size; + memcpy(his_addr, rt_addr, real_move); + *reinterpret_cast(his_addr + BLOCK_SIZE - sizeof(unsigned)) = + tuple_count; + + /* logfile << "part<" << begin / BLOCK_SIZE << "," << begin % + BLOCK_SIZE + << "," << tuple_count << "> => <" << new_his_cp / + BLOCK_SIZE + << "," << new_his_cp % BLOCK_SIZE << "," + << *reinterpret_cast( + his_addr + BLOCK_SIZE - sizeof(unsigned)) << ">" + << endl;*/ + mvlog << begin / BLOCK_SIZE << "=>" << new_his_cp / BLOCK_SIZE << ":" + << tuple_count << endl; + } + + begin += move; + new_his_cp += BLOCK_SIZE; + } + } + + // if (strip_list.size() > 0) logfile << "********************" << endl; + + return new_his_cp; +} + +RetCode PartitionStorage::Persist(UInt64 old_his_cp, UInt64 new_his_cp) { + FileHandleImp* file_handle = nullptr; + MemoryGuard file_handle_guard(file_handle); + if (!Config::local_disk_mode) + file_handle = FileHandleImpFactory::Instance().CreateFileHandleImp( + kHdfs, partition_id_.getPathAndName()); + else + file_handle = FileHandleImpFactory::Instance().CreateFileHandleImp( + kDisk, partition_id_.getPathAndName()); + if (file_handle == nullptr) return rGetFileHandleFail; + HdfsInMemoryChunk chunk_his; + auto begin = old_his_cp; + auto end = new_his_cp; + while (begin < end) { + if (!BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( + ChunkID(partition_id_, begin / CHUNK_SIZE), chunk_his)) + return rGetMemoryHandleFail; + auto move = CHUNK_SIZE - (begin + CHUNK_SIZE) % CHUNK_SIZE; + if (begin + move > end) move = end - begin; + file_handle->Append(chunk_his.hook + begin % CHUNK_SIZE, move); + /* cout << "move chunk:" << begin / CHUNK_SIZE << "," << begin % + CHUNK_SIZE + << " step:" << move << endl;*/ + begin += move; + } + return rSuccess; +} + +bool PartitionStorage::PersistHDFS(UInt64 old_his_cp, UInt64 new_his_cp) { + /* + * ToDo Truncate need to be implemented + */ + auto file_handle = FileHandleImpFactory::Instance().CreateFileHandleImp( + kHdfs, partition_id_.getPathAndName()); + if (file_handle == nullptr) return rGetFileHandleFail; + HdfsInMemoryChunk chunk_his; + auto begin = old_his_cp; + auto end = new_his_cp; + while (begin < end) { + if (!BlockManager::getInstance()->getMemoryChunkStore()->GetChunk( + ChunkID(partition_id_, begin / CHUNK_SIZE), chunk_his)) + return rGetMemoryHandleFail; + auto move = CHUNK_SIZE - (begin + CHUNK_SIZE) % CHUNK_SIZE; + file_handle->Append(chunk_his.hook, move); + begin += move; + } + return rSuccess; +} + +bool PartitionStorage::PersistDisk(UInt64 old_his_cp, UInt64 new_his_cp) {} diff --git a/storage/PartitionStorage.h b/storage/PartitionStorage.h index babfd4133..130946e9a 100755 --- a/storage/PartitionStorage.h +++ b/storage/PartitionStorage.h @@ -29,11 +29,20 @@ #ifndef PARTITIONSTORAGE_H_ #define PARTITIONSTORAGE_H_ -#include "ChunkStorage.h" -#include "StorageLevel.h" -#include "./PartitionReaderIterator.h" +#include +#include +#include +#include "../common/error_define.h" +#include "../txn_manager/txn.hpp" +#include "../storage/ChunkStorage.h" +#include "../storage/StorageLevel.h" +#include "../storage/PartitionReaderIterator.h" #include "../utility/lock.h" - +#include "../utility/lock_guard.h" +#include "../Debug.h" +using claims::txn::PStrip; +using claims::txn::UInt64; +using claims::utility::LockGuard; // namespace claims { // namespace storage { /** @@ -100,6 +109,48 @@ class PartitionStorage { private: Lock lock_; }; + /**********************************************************************/ + class TxnPartitionReaderIterator : public PartitionReaderIterator { + public: + /** + * @brief Method description: Construct the Iterator. Different from + * PartitionReaderIterator and AtomicPartitionReaditerator. + * It support scan from both chunk_list_ and rt_chunk_list_ , + * write into rt_chunk_list rather than chunk_list_ in + * AtomicPartitionReaderIterator + */ + + TxnPartitionReaderIterator(PartitionStorage* partition_storage, + uint64_t his_cp, + const vector& rt_strip_list); + ~TxnPartitionReaderIterator() override; + bool NextBlock(BlockStreamBase*& block) override; + + private: + void* CreateEmptyBlock() { + void* data = reinterpret_cast(malloc(BLOCK_SIZE)); + // auto block = new BlockStreamFix(BLOCK_SIZE, 0, data, 0); + return data; + } + void SetBlockTail(void* block, unsigned tuple_num) { + *reinterpret_cast(block + 64 * 1024 - sizeof(unsigned)) = + tuple_num; + } + int64_t last_his_block_; + int64_t block_cur_; + int64_t chunk_cur_; + + vector rt_strip_list_; // splited by block + int64_t rt_block_index_; + int64_t rt_block_cur_; + int64_t rt_chunk_cur_; + ChunkReaderIterator* rt_chunk_it_; + vector rt_block_buffer_; + + Lock lock_; + + public: + }; /** * @brief Method description: construct the partition container. @@ -115,7 +166,24 @@ class PartitionStorage { */ virtual ~PartitionStorage(); - void AddNewChunk(); + void AddNewRTChunk(); + void AddNewHisChunk(); + + RetCode AddHisChunkWithMemoryApply(unsigned expected_number_of_chunks, + const StorageLevel& storage_level); + + RetCode AddRtChunkWithMemoryApply(unsigned expected_number_of_chunks, + const StorageLevel& storage_level); + + int GetRTChunkNum() { + LockGuard guard(write_lock_); + return rt_chunk_list_.size(); + } + + int GetHisChunkNum() { + LockGuard guard(write_lock_); + return chunk_list_.size(); + } /** * @brief Method description: Expand the container of partition @@ -145,11 +213,28 @@ class PartitionStorage { */ PartitionStorage::PartitionReaderIterator* CreateAtomicReaderIterator(); + PartitionStorage::PartitionReaderIterator* CreateTxnReaderIterator( + uint64_t his_cp, const vector& rt_strip_list) { + return new TxnPartitionReaderIterator(this, his_cp, rt_strip_list); + } + void CheckAndAppendChunkList(unsigned number_of_chunk, bool is_rt); + UInt64 MergeToHis(UInt64 old_his_cp, const vector& strip_list); + RetCode Persist(UInt64 old_his_cp, UInt64 new_his_cp); + bool PersistHDFS(UInt64 old_his_cp, UInt64 new_his_cp); + bool PersistDisk(UInt64 old_his_cp, UInt64 new_his_cp); + protected: PartitionID partition_id_; - unsigned number_of_chunks_; + atomic number_of_chunks_; std::vector chunk_list_; + // add it for txn scan + atomic number_of_rt_chunks_; + std::vector rt_chunk_list_; StorageLevel desirable_storage_level_; + + Lock write_lock_; + + // static ofstream logfile; }; //} // namespace storage //} // namespace claims diff --git a/test.c b/test.c new file mode 100644 index 000000000..a5cf4ef01 --- /dev/null +++ b/test.c @@ -0,0 +1 @@ +cout << "hello world" << endl; diff --git a/test.sh b/test.sh new file mode 100644 index 000000000..0326727e4 --- /dev/null +++ b/test.sh @@ -0,0 +1,8 @@ +scp $1 claims@58.198.176.92:~/lizhif/$1 + +ssh -f -n -l claims 58.198.176.92 "scp ~/lizhif/$1 10.11.1.191:~/lizhif/" +ssh -f -n -l claims 58.198.176.92 "scp ~/lizhif/$1 10.11.1.193:~/lizhif/" +ssh -f -n -l claims 58.198.176.92 "scp ~/lizhif/$1 10.11.1.194:~/lizhif/" + + + diff --git a/test_all.sh b/test_all.sh new file mode 100644 index 000000000..ad0a9c218 --- /dev/null +++ b/test_all.sh @@ -0,0 +1,7 @@ +ssh -f -n -l claims 58.198.176.92 "cd lizhif/CLAIMS/build ; make -j 6 ;" +ssh -f -n -l claims 58.198.176.92 "cd lizhif/CLAIMS/build ; scp claimsserver claims@10.11.1.191:~/lizhif/ ; " +ssh -f -n -l claims 58.198.176.92 "cd lizhif/CLAIMS/build ; scp claimsserver claims@10.11.1.193:~/lizhif/ ; " +ssh -f -n -l claims 58.198.176.92 "cd lizhif/CLAIMS/build ; scp claimsserver claims@10.11.1.194:~/lizhif/ ; " + + + diff --git a/txn_manager/Makefile.am b/txn_manager/Makefile.am new file mode 100644 index 000000000..fa9374c87 --- /dev/null +++ b/txn_manager/Makefile.am @@ -0,0 +1,48 @@ +AM_CPPFLAGS= -fPIC -fpermissive\ +-I${BOOST_HOME} \ +-I${BOOST_HOME}/boost/serialization \ +-I${HADOOP_HOME}/include\ +-I${JAVA_HOME}/include\ +-I${JAVA_HOME}/include/linux + +AM_LDFLAGS=-lc -lm -lrt -ll -ly -lstdc++ -lxs -lcaf_core -lcaf_io -lboost_serialization + +if OPT_TCMALLOC +AM_CPPFLAGS+=-fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free +AM_LDFLAGS+=-ltcmalloc +endif + +LDADD = ../catalog/libcatalog.a \ + ../catalog/stat/libstat.a \ + ../loader/libloader.a \ + ../storage/libstorage.a \ + ../common/libcommon.a \ + ../common/expression/libexpression.a \ + ../common/Expression/libexpression.a \ + ../common/Schema/libschema.a \ + ../common/Block/libblock.a \ + ../common/type/libtypes.a \ + ../common/types/ttmath/libttmath.a \ + ../common/serialization/libserialization.a \ + ../utility/libutility.a \ + ../Executor/libexecutor.a \ + ../sql_parser/ast_node/libast_node.a \ + ../sql_parser/parser/libparser.a \ + ../BufferManager/libbuffermanager.a \ + ../node_manager/libnodemanager.a \ + ${BOOST_HOME}/stage/lib/libboost_system.a \ + ${BOOST_HOME}/stage/lib/libboost_system.so \ + ${BOOST_HOME}/stage/lib/libboost_serialization.a \ + ${BOOST_HOME}/stage/lib/libboost_serialization.so + +noinst_LIBRARIES=libtxnmanager.a + +libtxnmanager_a_SOURCES = \ + txn.hpp txn.cpp \ + txn_client.hpp txn_client.cpp \ + txn_server.hpp txn_server.cpp \ + txn_log.hpp txn_log.cpp + + + + diff --git a/txn_manager/txn.cpp b/txn_manager/txn.cpp new file mode 100644 index 000000000..d88919510 --- /dev/null +++ b/txn_manager/txn.cpp @@ -0,0 +1,321 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_utility.cpp + * + * Created on: 2016年3月28日 + * Author: imdb + * Email: + * + * Description: + * + */ +#include "txn.hpp" +#include "txn_server.hpp" + +namespace claims { +namespace txn { + +using claims::txn::Strip; + +string Txn::ToString() { + string str = ""; + for (auto &strip : strip_list_) + str += "<" + to_string(strip.first) + "," + to_string(strip.second.first) + + "," + to_string(strip.second.second) + ">,"; + str += "\n"; + return str; +} +string Snapshot::ToString() const { + string str = "*****snapshot*****\n"; + for (auto part_cp : part_pstrips_) { + str += "part:" + to_string(part_cp.first) + " "; + for (auto pstrip : part_cp.second) + str += + "<" + to_string(pstrip.first) + "," + to_string(pstrip.second) + ">"; + } + return str + "\n******************\n"; +} + +void Strip::Map(vector &input, map> &output) { + output.clear(); + for (auto &strip : input) { + if (output.find(strip.part_) != output.end()) + output[strip.part_].push_back(strip); + else + output[strip.part_] = vector(); + } +} + +void Strip::Sort(vector &input) { + sort(input.begin(), input.end(), + [](const Strip &a, const Strip &b) { return a.pos_ < b.pos_; }); +} + +void Strip::Sort(vector &input) { + sort(input.begin(), input.end(), + [](const PStrip &a, const PStrip &b) { return a.first < b.first; }); +} + +void Strip::Merge(vector &input) { + vector buffer(input); + input.clear(); + if (buffer.size() == 0) return; + auto pid = buffer[0].part_; + auto begin = buffer[0].pos_; + auto end = buffer[0].pos_ + buffer[0].offset_; + for (auto i = 1; i < buffer.size(); i++) { + if (end == buffer[i].pos_) { + end = buffer[i].pos_ + buffer[i].offset_; + } else { + input.emplace_back(pid, begin, end - begin); + begin = buffer[i].pos_; + end = begin + buffer[i].offset_; + } + } + input.emplace_back(pid, begin, end - begin); +} + +void Strip::Merge(vector &input) { + if (input.size() == 0) return; + vector buffer; + auto begin = input[0].first; + auto end = input[0].first + input[0].second; + for (auto i = 1; i < input.size(); i++) { + if (end == input[i].first) { + end = input[i].first + input[i].second; + } else { + buffer.emplace_back(begin, end - begin); + begin = input[i].first; + end = input[i].first + input[i].second; + } + } + buffer.emplace_back(begin, end - begin); + input = buffer; +} + +void Strip::Filter(vector &input, function predicate) { + vector buffer(input); + input.clear(); + for (auto &strip : buffer) + if (predicate(strip)) input.push_back(strip); +} + +void Strip::Filter(vector &input, function predicate) { + vector buffer(input); + input.clear(); + for (auto &pstrip : buffer) + if (predicate(pstrip)) input.push_back(pstrip); +} + +string Strip::ToString() { + string str = "*******Strip******\n"; + str += "part:" + to_string(part_) + ",pos:" + to_string(pos_) + ",Offset:" + + to_string(offset_) + "\n"; + return str; +} + +string FixTupleIngestReq::ToString() { + string str = "*******FixTupleIngestReq********\n"; + for (auto &item : content_) + str += "part:" + to_string(item.first) + ",tuple_size:" + + to_string(item.second.first) + ",tuple_count:" + + to_string(item.second.second) + "\n"; + return str; +} +string Ingest::ToString() { + UInt64 core_id = TxnServer::GetCoreID(ts_); + UInt64 txnbin_id = TxnBin::GetTxnBinID(ts_, TxnServer::concurrency_); + UInt64 txnbin_pos = TxnBin::GetTxnBinPos(ts_, TxnServer::concurrency_); + string str = "*******Ingest*********\n"; + str += "TS:" + to_string(ts_) + ",core:" + to_string(core_id) + + ",txnbin_id:" + to_string(txnbin_id) + ",txnbin_pos:" + + to_string(txnbin_pos) + "\n"; + for (auto &item : strip_list_) + str += "part:" + to_string(item.first) + ",pos:" + + to_string(item.second.first) + ",offset:" + + to_string(item.second.second) + "\n"; + return str; +} +string QueryReq::ToString() { + string str = "*******QueryReq********\n"; + for (auto &part : part_list_) str += "part:" + to_string(part) + "\n"; + return str; +} + +string Query::ToString() { + string str = "******Query:" + to_string(ts_) + "*******\n"; + for (auto &part : snapshot_) { + str += "part:" + to_string(part.first) + " "; + for (auto &strip : part.second) + str += + "<" + to_string(strip.first) + "," + to_string(strip.second) + ">,"; + str += "\n"; + } + return str; +} + +string TsCheckpoint::ToString() { + string str = "*******checkpoint*******\n"; + str += "Historical:"; + for (auto &cp : vers_his_cp_) + str += "<" + to_string(cp.first) + "," + to_string(cp.second) + ">"; + str += "\nReal-time:"; + for (auto &cp : vers_rt_cp_) + str += "<" + to_string(cp.first) + "," + to_string(cp.second) + ">"; + str += "\n"; + return str; +} + +string CheckpointReq::ToString() const { + string str = "*****CheckpointReq******\n"; + str += "ts:" + to_string(ts_) + ",part:" + to_string(part_) + ",old_his_cp:" + + to_string(old_his_cp_) + "\n"; + str += "strip_list:"; + for (auto &strip : strip_list_) + str += "<" + to_string(strip.first) + "," + to_string(strip.second) + ">,"; + return str + "\n"; +} + +void Snapshot::Merge(const vector &strips) { + for (auto &strip : strips) + part_pstrips_[strip.part_].push_back(PStrip(strip.pos_, strip.offset_)); + for (auto &part_strips : part_pstrips_) { + Strip::Sort(part_strips.second); + Strip::Merge(part_strips.second); + } +} + +void Snapshot::Merge(const Snapshot &snapshot) { + for (auto &part_pstrip : snapshot.part_pstrips_) { + part_pstrips_[part_pstrip.first].insert( + part_pstrips_[part_pstrip.first].end(), part_pstrip.second.begin(), + part_pstrip.second.end()); + } + for (auto &part_strips : part_pstrips_) { + Strip::Sort(part_strips.second); + Strip::Merge(part_strips.second); + } +} +void TxnBin::MergeSnapshot(Query &query) const { + for (auto &part_cp : query.rt_cp_list_) { + auto part = part_cp.first; + auto checkpoint = part_cp.second; + query.snapshot_[part].insert(query.snapshot_[part].end(), + snapshot_[part].begin(), + snapshot_[part].end()); + Strip::Sort(query.snapshot_[part]); + Strip::Merge(query.snapshot_[part]); + Strip::Filter(query.snapshot_[part], [checkpoint](PStrip &pstrip) -> bool { + if (pstrip.first + pstrip.second <= checkpoint) { + return false; + } else { + if (pstrip.first < checkpoint && + pstrip.first + pstrip.second > checkpoint) + pstrip = + make_pair(checkpoint, pstrip.first + pstrip.second - checkpoint); + return true; + } + }); + query.abort_list_[part].insert(query.abort_list_[part].end(), + abort_list_[part].begin(), + abort_list_[part].end()); + } +} + +void TxnBin::MergeTxn(Query &query, int len) const { + for (auto i = 0; i < len; i++) + if (txn_list_[i].IsCommit()) { + query.scan_count_++; + for (auto &strip : txn_list_[i].strip_list_) + query.snapshot_[strip.first].push_back(strip.second); + } else if (txn_list_[i].IsAbort()) { + assert(false); + for (auto &strip : txn_list_[i].strip_list_) + query.abort_list_[strip.first].push_back(strip.second); + } + + for (auto &part_cp : query.rt_cp_list_) { + auto part = part_cp.first; + auto checkpoint = part_cp.second; + Strip::Sort(query.snapshot_[part]); + Strip::Merge(query.snapshot_[part]); + Strip::Filter(query.snapshot_[part], [checkpoint](PStrip &pstrip) -> bool { + if (pstrip.first + pstrip.second <= checkpoint) { + return false; + } else { + if (pstrip.first < checkpoint && + pstrip.first + pstrip.second > checkpoint) + pstrip = + make_pair(checkpoint, pstrip.first + pstrip.second - checkpoint); + return true; + } + }); + } +} + +string TxnBin::ToString() { + string str = ""; + for (auto i = 0; i < kTxnBinSize; i++) + if (txn_list_[i].IsCommit() || txn_list_[i].IsAbort()) + str += "txnbin_pos:" + to_string(i) + txn_list_[i].ToString(); + return str; +} + +void TxnBin::GenSnapshot(const TxnBin &prev) { + status_ = true; + snapshot_ = prev.snapshot_; + for (auto &txn : txn_list_) + if (txn.IsCommit()) { + for (auto &strip : txn.strip_list_) + snapshot_[strip.first].push_back(strip.second); + } else if (txn.IsAbort()) { + for (auto &strip : txn.strip_list_) + abort_list_[strip.first].push_back(strip.second); + } + for (auto &part : snapshot_) { + Strip::Sort(part.second); + Strip::Merge(part.second); + } + for (auto &part : abort_list_) { + Strip::Sort(part.second); + Strip::Merge(part.second); + } +} + +void TxnBin::GenSnapshot() { + status_ = true; + for (auto &txn : txn_list_) + if (txn.IsCommit()) { + for (auto &strip : txn.strip_list_) + snapshot_[strip.first].push_back(strip.second); + } else if (txn.IsAbort()) { + for (auto &strip : txn.strip_list_) + abort_list_[strip.first].push_back(strip.second); + } + for (auto &part : snapshot_) { + Strip::Sort(part.second); + Strip::Merge(part.second); + } + for (auto &part : abort_list_) { + Strip::Sort(part.second); + Strip::Merge(part.second); + } +} +} // namespace txn +} // namespace claims diff --git a/txn_manager/txn.hpp b/txn_manager/txn.hpp new file mode 100644 index 000000000..e17497581 --- /dev/null +++ b/txn_manager/txn.hpp @@ -0,0 +1,560 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_utility.hpp + * + * Created on: 2016年3月28日 + * Author: imdb + * Email: + * + * Description: + * + */ + +#ifndef TXN_HPP_ +#define TXN_HPP_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "caf/all.hpp" +#include "caf/io/all.hpp" +#include "../common/error_define.h" +#include "../utility/Timer.h" +#include "../common/ids.h" +#include +#include +#include +#include +namespace claims { +namespace txn { + +using std::cin; +using std::cout; +using std::endl; +using std::vector; +using std::string; +using std::map; +using std::pair; +using std::set; +using std::tuple; +using std::get; +using std::unordered_map; +using std::to_string; +using std::function; +using std::sort; +using std::make_pair; +using std::make_tuple; +using claims::common::rSuccess; + +using UInt64 = unsigned long long; +using UInt32 = unsigned int; +using UInt16 = unsigned short; +using UInt8 = char; +using RetCode = int; +using TimerAtom = caf::atom_constant; +using BeginAtom = caf::atom_constant; +using CommitAtom = caf::atom_constant; +using AbortAtom = caf::atom_constant; +using DataAtom = caf::atom_constant; + +using OkAtom = caf::atom_constant; +using FailAtom = caf::atom_constant; +using IngestAtom = caf::atom_constant; +using WriteAtom = caf::atom_constant; + +using DebugAtom = caf::atom_constant; +using QueryAtom = caf::atom_constant; +using CommitQueryAtom = caf::atom_constant; +using CheckpointAtom = caf::atom_constant; +using GCAtom = caf::atom_constant; +using CommitIngestAtom = caf::atom_constant; +using AbortIngestAtom = caf::atom_constant; +using CheckpointAtom = caf::atom_constant; +using CommitCPAtom = caf::atom_constant; +using AbortCPAtom = caf::atom_constant; +using QuitAtom = caf::atom_constant; +using LinkAtom = caf::atom_constant; +using RefreshAtom = caf::atom_constant; +using MergeAtom = caf::atom_constant; + +static const int kTxnPort = 8089; +static const string kTxnIp = "127.0.0.1"; +static const int kConcurrency = 4; +static const int kTxnBufferSize = 1024 * 10000; +static const int kTxnLowLen = 10; +static const int kTxnHighLen = 54; +static const int kGCTime = 5; +static const int kTimeout = 3; +static const int kBlockSize = 64 * 1024; +static const int kTailSize = sizeof(unsigned); +static const int kTxnBinSize = 10; // 1024; + +/** + * @brief generate global partition id from + * + */ +inline UInt64 GetGlobalPartId(UInt64 table_id, UInt64 projeciton_id, + UInt64 partition_id) { + return partition_id + 1000 * (projeciton_id + 1000 * table_id); +} + +/** + * @brief generate global partition id from claims build-in PartitionID + */ +inline UInt64 GetGlobalPartId(PartitionID part) { + auto table_id = part.projection_id.table_id; + auto proj_id = part.projection_id.projection_off; + auto part_id = part.partition_off; + return GetGlobalPartId(table_id, proj_id, part_id); +} + +/** + * @brief generate table id from global partition id. + */ +inline UInt64 GetTableIdFromGlobalPartId(UInt64 global_partition_id) { + return global_partition_id / (1000 * 1000); +} + +/** + * @brief generate projection id from global partition id. + */ +inline UInt64 GetProjectionIdFromGlobalPartId(UInt64 global_partition_id) { + return (global_partition_id % (1000 * 1000)) / 1000; +} + +/** + * @brief generate partition id from global partition id. + */ +inline UInt64 GetPartitionIdFromGlobalPartId(UInt64 global_partition_id) { + return global_partition_id % (1000); +} + +/** + * @brief: position and offset of complete strip + */ +using PStrip = pair; + +/** + * @brief: A tuple to describe set of rows + * @param: partition id [part_], + * position of strip [_pos], + * offset of strip[_offset] + */ +class Strip { + public: + UInt64 part_; + UInt64 pos_; + UInt64 offset_; + Strip() {} + Strip(UInt64 pId, UInt64 pos, UInt32 offset) + : part_(pId), pos_(pos), offset_(offset) {} + UInt64 get_part() const { return part_; } + UInt64 get_pos() const { return pos_; } + UInt64 get_offset() const { return offset_; } + void set_part(UInt64 part) { part_ = part; } + void set_pos(UInt64 pos) { pos_ = pos; } + void set_offset(UInt64 offset) { offset_ = offset; } + string ToString(); + /** input [strip stream] ==by partition==> output [[strip stream]...] */ + static void Map(vector &input, map> &output); + + /** sort strip stream [input] by order of position */ + static void Sort(vector &input); + static void Sort(vector &input); + + /** merge adjacent strip stream [input], input must be sorted beforehand */ + static void Merge(vector &input); + static void Merge(vector &input); + + /** filter strip stream [input], delete item if predicate is not successful */ + static void Filter(vector &input, function predicate); + static void Filter(vector &input, function predicate); +}; + +inline bool operator==(const Strip &a, const Strip &b) { + return a.part_ == b.part_ && a.pos_ == b.pos_ && a.offset_ == b.offset_; +} +/** + * @brief: Describe the information about transaction state + * @param: transaction commit state [status_], + * real begin timestamp of transaction [realtime_], + * strip list of transaction writes [strip_list_] + */ +class Txn { + public: + static const int kActive = 0; + static const int kCommit = 1; + static const int kAbort = 2; + int status_ = kActive; + long realtime_; + unordered_map strip_list_; + Txn() { realtime_ = GetCurrents(); } + Txn(const unordered_map &strip_list) { + strip_list_ = strip_list; + // realtime_ = GetCurrents(); + } + void Commit() { status_ = kCommit; } + void Abort() { status_ = kAbort; } + bool IsCommit() { return status_ == kCommit; } + bool IsAbort() { return status_ == kAbort; } + bool IsActive() { return status_ == kActive; } + string ToString(); +}; + +/** + * @brief: The transaction information that a query needs. + * @param: [his_cp_list_] is tuple of + * @param: [rc_cp_list_] is . + * temporary, *need not to be serialized* + * @param: [part_pstrips] unmerged strip list after historical checkpoint + */ +class Snapshot { + public: + unordered_map his_cp_list_; + unordered_map rt_cp_list_; + unordered_map> part_pstrips_; + string ToString() const; + void setRtCPS(const unordered_map &cps) { rt_cp_list_ = cps; } + void setHisCPS(const unordered_map &cps) { + his_cp_list_ = cps; + }; + unordered_map getHisCPS() const { return his_cp_list_; } + // add strip into snapshot, ignore strip beforehand real-time checkpoint + void setPStrips(const unordered_map> &part_pstrips) { + if (rt_cp_list_.size() > 0) { + // Need to cut off all strip before ahead real-time checkpoint + for (auto &pstrips : part_pstrips) + for (auto &pstrip : pstrips.second) + if (pstrip.first >= rt_cp_list_[pstrips.first]) + part_pstrips_[pstrips.first].push_back(pstrip); + } else { + part_pstrips_ = part_pstrips; + } + } + unordered_map> getPStrps() const { + return part_pstrips_; + } + // merge another snapshot or strip list + void Merge(const vector &strips); + void Merge(const Snapshot &snapshot); +}; + +inline bool operator==(const Snapshot &lhs, const Snapshot &rhs) { + return lhs.his_cp_list_ == rhs.his_cp_list_ && + lhs.part_pstrips_ == rhs.part_pstrips_; +} + +/** + * @brief: object to request to ingest tuple with fix length + * use [InsertStrip] to add a request to ingest number of [tuple_count] + * tuple with size of [tuple_Size] + * @param: [content_] is fix tuple part -> + */ +class FixTupleIngestReq { + public: + unordered_map content_; + void InsertStrip(UInt64 part, UInt64 tuple_size, UInt64 tuple_count) { + content_[part] = make_pair(tuple_size, tuple_count); + } + unordered_map get_content() const { return content_; } + void set_content(const unordered_map &content) { + content_ = content; + } + string ToString(); +}; +inline bool operator==(const FixTupleIngestReq &a, const FixTupleIngestReq &b) { + return a.content_ == b.content_; +} + +/** + * @brief: TM return [Ingest] object to execute data ingestion + * @param: a write-time/transaction id [ts_] for ingestion transaction, + * TM allocates [strip_list_] for ingestion transaction + */ +class Ingest { + public: + UInt64 ts_; + unordered_map strip_list_; + Ingest() {} + Ingest(const unordered_map &strip_list, UInt64 ts) + : strip_list_(strip_list), ts_(ts) {} + void InsertStrip(UInt64 part, UInt64 pos, UInt64 offset) { + strip_list_[part] = make_pair(pos, offset); + } + void InsertStrip(const Strip &strip) { + strip_list_[strip.part_] = make_pair(strip.pos_, strip.offset_); + } + UInt64 get_id() const { return ts_; } + unordered_map get_strip_list() const { return strip_list_; } + void set_id(const UInt64 &id) { ts_ = id; } + void set_strip_list(const unordered_map &stripList) { + strip_list_ = stripList; + } + string ToString(); +}; +inline bool operator==(const Ingest &lhs, const Ingest &rhs) { + return lhs.ts_ == rhs.ts_; +} + +/** + * @brief: SQL compiler use [QueryReq] to request a snapshot from TM + * @param: [part_list_] are partitions needed to scan, + * [include_abort_] is whether to scan abort strip( + * false for client query, true for create checkpoint). + */ +class QueryReq { + public: + vector part_list_; + bool include_abort_ = false; + QueryReq() {} + QueryReq(const vector &part_list) : part_list_(part_list) {} + void InsertPart(UInt64 part) { part_list_.push_back(part); } + vector get_part_list() const { return part_list_; } + bool get_include_abort() const { return include_abort_; } + void set_part_list(const vector &partList) { part_list_ = partList; } + void set_include_abort(bool include_abort) { include_abort_ = include_abort; } + string ToString(); +}; + +inline bool operator==(const QueryReq &lhs, const QueryReq &rhs) { + return lhs.part_list_ == rhs.part_list_; +} + +/** + * @brief: [Query] is information for scan partition + * @param: [ts_] is read timestamp, + * [snapshot_] is strip list need to scan real-time chunk-list, + * [his_cp_list_] is historical checkpoint to scan historical chunk-list + * + */ +class Query { + public: + UInt64 ts_; + unordered_map> snapshot_; + unordered_map his_cp_list_; + + /** + * rt_cp_list_ and abort_list_ will never be serialized and send, + */ + unordered_map rt_cp_list_; + unordered_map> abort_list_; + UInt64 scan_count_ = 0; + Query() {} + Query(UInt64 ts, const unordered_map &his_cp_list, + const unordered_map &rt_cp_list) + : ts_(ts), his_cp_list_(his_cp_list), rt_cp_list_(rt_cp_list) {} + UInt64 getTS() const { return ts_; } + unordered_map> getSnapshot() const { + return snapshot_; + } + unordered_map getCPList() const { return his_cp_list_; } + unordered_map> getAbortList() const { + return abort_list_; + } + + void setTS(UInt64 ts) { ts_ = ts; } + void setSnapshot(const unordered_map> &sp) { + snapshot_ = sp; + } + void setCPList(const unordered_map &cplist) { + his_cp_list_ = cplist; + } + void setAbortList(const unordered_map> &abort_list) { + abort_list_ = abort_list; + } + string ToString(); + void GenTxnInfo() { + for (auto &part_strips : snapshot_) + scan_snapshot_[part_strips.first] = part_strips.second; + for (auto &part_cp : his_cp_list_) + scan_cp_list_[part_cp.first] = part_cp.second; + } + map> scan_snapshot_; + map scan_cp_list_; + template + void serialize(Archive &ar, const unsigned int version) { + ar &ts_ &scan_snapshot_ &scan_cp_list_; + } +}; +inline bool operator==(const Query &lhs, const Query &rhs) { + return lhs.snapshot_ == rhs.snapshot_ && lhs.his_cp_list_ == rhs.his_cp_list_; +} +/** + * *not used yet* + */ +class CheckpointReq { + public: + UInt64 ts_; + UInt64 part_; + vector strip_list_; + UInt64 old_his_cp_; + CheckpointReq() {} + CheckpointReq(UInt64 ts, UInt64 part) : ts_(ts), part_(part) {} + string ToString() const; + UInt64 getTs() const { return ts_; } + UInt64 getPart() const { return part_; } + vector getStripList() const { return strip_list_; } + UInt64 getOldHisCP() const { old_his_cp_; } + void setTs(UInt64 ts) { ts_ = ts; } + void setPart(UInt64 part) { part_ = part; } + vector setStripList(const vector &strip_list) { + strip_list_ = strip_list; + } + void setOldHisCP(UInt64 old_his_cp) { old_his_cp_ = old_his_cp; } +}; +inline bool operator==(const CheckpointReq &lhs, const CheckpointReq &rhs) { + return lhs.ts_ == rhs.ts_ && lhs.part_ == rhs.part_; +} + +/** + * @brief: store versioned checkpoint + */ +class TsCheckpoint { + public: + UInt64 GetHisCP(UInt64 ts) { + UInt64 cp; + for (auto &ver_cp : vers_his_cp_) + if (ver_cp.first > ts) + break; + else + cp = ver_cp.second; + return cp; + } + UInt64 GetRtCP(UInt64 ts) { + UInt64 cp; + for (auto &ver_cp : vers_rt_cp_) + if (ver_cp.first > ts) + break; + else + cp = ver_cp.second; + return cp; + } + void SetHisCP(UInt64 ts, UInt64 cp) { vers_his_cp_[ts] = cp; } + void SetRtCP(UInt64 ts, UInt64 cp) { vers_rt_cp_[ts] = cp; } + string ToString(); + + private: + map vers_his_cp_; + map vers_rt_cp_; +}; + +/** + *@brief: store a list of transaction state in [txn_list_] + *@param: [ct_commit_] is number of all committed transaction, + *@param: [ct_abort] is number of all aborted transaction, + *@param: [ct_] is number of all transaction, ct_ >= ct_commit_ + ct_abort_ + *@param: [status] is whether this bin has product a "mini snapshot" in + * [snapshot_] + [abort_list_] + */ +class TxnBin { + public: + // get & set pos-th txn in txn + Txn GetTxn(int pos) const { return txn_list_[pos]; } + void SetTxn(int pos, const Txn &txn) { + txn_list_[pos] = txn; + ct_++; + } + void SetTxn(int pos, const unordered_map &strip_list) { + txn_list_[pos] = Txn(strip_list); + ct_++; + } + // set state tag of a transaction to "Commit" or Abort + void CommitTxn(int pos) { + txn_list_[pos].Commit(); + ct_commit_++; + } + void AbortTxn(int pos) { + txn_list_[pos].Abort(); + ct_abort_++; + } + /** Is this bin are filled with "terminated"(commit or abort) */ + bool IsFull() const { return ct_commit_ + ct_abort_ == kTxnBinSize; } + bool IsSnapshot() const { return status_ == true; } + int Count() const { return ct_; } + int CountCommit() const { return ct_commit_; } + int CountAbort() const { return ct_abort_; } + void GenSnapshot(); + void GenSnapshot(const TxnBin &prev); + void MergeSnapshot(Query &query) const; + void MergeTxn(Query &query, int len) const; + string ToString(); + /** get bin id that transaction [ts] resides, + * [core_num] is number of cores in txn_manager */ + static UInt64 GetTxnBinID(UInt64 ts, UInt64 core_num) { + return (ts / core_num) / kTxnBinSize; + } + /** get position of transaction [ts] in this bin */ + static UInt64 GetTxnBinPos(UInt64 ts, UInt64 core_num) { + return (ts / core_num) % kTxnBinSize; + } + /** get the max timestamp of this bin can reside */ + static UInt64 GetTxnBinMaxTs(UInt64 txnbin_id, UInt64 core_num, + UInt64 core_id) { + return txnbin_id * kTxnBinSize * core_num + kTxnBinSize + core_id; + } + + Txn txn_list_[kTxnBinSize]; + + private: + bool status_ = false; + int ct_ = 0; + int ct_commit_ = 0; + int ct_abort_ = 0; + // If bin is full, a snapshot is generated. + unordered_map> snapshot_; + unordered_map> abort_list_; +}; + +/** + * setting CAF serialization + */ +inline void CAFSerConfig() { + caf::announce("FixTupleIngestReq", + make_pair(&FixTupleIngestReq::get_content, + &FixTupleIngestReq::set_content)); + caf::announce( + "Ingest", make_pair(&Ingest::get_id, &Ingest::set_id), + make_pair(&Ingest::get_strip_list, &Ingest::set_strip_list)); + caf::announce( + "QueryReq", make_pair(&QueryReq::get_part_list, &QueryReq::set_part_list), + make_pair(&QueryReq::get_include_abort, &QueryReq::set_include_abort)); + caf::announce("Query", make_pair(&Query::getTS, &Query::setTS), + make_pair(&Query::getSnapshot, &Query::setSnapshot), + make_pair(&Query::getCPList, &Query::setCPList)); + caf::announce( + "Snapshot", make_pair(&Snapshot::getHisCPS, &Snapshot::setHisCPS), + make_pair(&Snapshot::getPStrps, &Snapshot::setPStrips)); + caf::announce( + "CheckpointReq", make_pair(&CheckpointReq::getTs, &CheckpointReq::setTs), + make_pair(&CheckpointReq::getPart, &CheckpointReq::setPart), + make_pair(&CheckpointReq::getStripList, &CheckpointReq::setStripList), + make_pair(&CheckpointReq::getOldHisCP, &CheckpointReq::setOldHisCP)); +} +} +} +#endif // TXN_HPP_ diff --git a/txn_manager/txn_client.cpp b/txn_manager/txn_client.cpp new file mode 100644 index 000000000..1fb2d76f9 --- /dev/null +++ b/txn_manager/txn_client.cpp @@ -0,0 +1,222 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_client.cpp + * + * Created on: 2016年4月10日 + * Author: imdb + * Email: + * + * Description: + * + */ + +#include "txn_client.hpp" +#include "txn_log.hpp" +namespace claims { +namespace txn { + +// using claims::txn::TxnClient; +// using claims::txn::RetCode; +// using claims::txn::FixTupleIngestReq; +// using claims::txn::Ingest; +// using claims::common::rSuccess; +// using claims::common::rLinkTmTimeout; +// using claims::common::rLinkTmFail; +// using claims::common::rBeginIngestTxnFail; +// using claims::common::rBeginQueryFail; +// using claims::common::rBeginCheckpointFail; +// using claims::common::rCommitIngestTxnFail; +// using claims::common::rCommitCheckpointFail; + +string TxnClient::ip_ = kTxnIp; +int TxnClient::port_ = kTxnPort; +caf::actor TxnClient::proxy_; +RetCode TxnClient::Init(string ip, int port) { + ip_ = ip; + port_ = port; + CAFSerConfig(); + try { + proxy_ = caf::io::remote_actor(ip_, port); + } catch (...) { + // return rLinkTmFail; + return -1; + } + // return rSuccess; + return 0; +} + +RetCode TxnClient::Debug(string flag) { + RetCode ret = 0; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + DebugAtom::value, flag) + .await([&ret](RetCode r) { ret = r; }, + caf::others >> []() { cout << " unkown message" << endl; }, + caf::after(seconds(kTimeout)) >> [&ret] { + ret = -1; + cout << "time out" << endl; + }); + } catch (...) { + cout << "link fail" << endl; + return -1; + } + return ret; +} + +RetCode TxnClient::BeginIngest(const FixTupleIngestReq& request, + Ingest& ingest) { + // RetCode ret = rSuccess; + RetCode ret = 0; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + IngestAtom::value, request) + .await([&](RetCode r, const Ingest& reply) { + ret = r; + ingest = reply; + }, + [&](RetCode r) { ret = r; }, + caf::others >> []() { cout << " unkown message" << endl; }, + caf::after(seconds(kTimeout)) >> [&] { + ret = -1; + cout << "begin ingest timeout" + << endl; + }); + } catch (...) { + cout << "begin ingest link fail" << endl; + // return rLinkTmFail; + return -1; + } + return ret; +} + +RetCode TxnClient::CommitIngest(UInt64 ts) { + // RetCode ret = rSuccess; + RetCode ret = 0; + try { + caf::scoped_actor self; + + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + CommitIngestAtom::value, ts) + .await([&](RetCode r) { ret = r; }, + caf::others >> []() { cout << " unkown message" << endl; }, + caf::after(seconds(kTimeout)) >> [&] { + // ret = + // rLinkTmTimeout; + ret = -1; + cout + << "commit ingest timeout" + << endl; + }); + } catch (...) { + cout << "link fail" << endl; + // return rLinkTmFail; + return -1; + } + return ret; +} + +RetCode TxnClient::AbortIngest(UInt64 id) { + // RetCode ret = rSuccess; + RetCode ret = 0; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + AbortIngestAtom::value, id) + .await([&](RetCode r) { ret = r; }, + caf::others >> []() { cout << " unkown message" << endl; }, + caf::after(seconds(kTimeout)) >> [&] { + // ret = + // rLinkTmTimeout; + ret = -1; + cout << "abort ingest timeout" + << endl; + }); + } catch (...) { + cout << "link fail" << endl; + // return rLinkTmFail; + return -1; + } + return ret; +} + +RetCode TxnClient::BeginQuery(const QueryReq& request, Query& query) { + // RetCode ret = rSuccess; + RetCode ret = 0; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + QueryAtom::value, request) + .await([&query](const Query& q) { query = q; }, + caf::after(seconds(15)) >> [&ret] { + ret = -1; + cout << "begin query time out" + << endl; + }); + } catch (...) { + cout << "begin query link fail" << endl; + // return rLinkTmFail; + return -1; + } + return ret; +} + +RetCode TxnClient::CommitQuery(UInt64 ts) { + RetCode ret = 0; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + CommitQueryAtom::value, ts) + .await([&ret](RetCode r) { ret = r; }, + caf::after(seconds(kTimeout)) >> [&ret] { + ret = -1; + cout << "commit query timeout" + << endl; + }); + } catch (...) { + cout << "link to proxy fail in commitQuery" << endl; + } + return ret; +} + +RetCode TxnClient::CommitCheckpoint(UInt64 ts, UInt64 part, UInt64 his_cp, + UInt64 rt_cp) { + RetCode ret = rSuccess; + try { + caf::scoped_actor self; + self->sync_send(TxnServer::active_ ? TxnServer::proxy_ : proxy_, + CommitCPAtom::value, ts, part, his_cp, rt_cp) + .await([&ret](RetCode r) { ret = r; }, + caf::after(seconds(kTimeout)) >> [&ret] { + // ret = + // rLinkTmTimeout; + ret = -1; + cout << "commit cp timeout" + << endl; + }); + } catch (...) { + cout << "link fail @ CommitCheckpoint" << endl; + // return rLinkTmFail; + return -1; + } + return ret; +} +} // namespace txn +} // namespace claims diff --git a/txn_manager/txn_client.hpp b/txn_manager/txn_client.hpp new file mode 100644 index 000000000..cb28074bc --- /dev/null +++ b/txn_manager/txn_client.hpp @@ -0,0 +1,113 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_client.hpp + * + * Created on: 2016年4月10日 + * Author: imdb + * Email: + * + * Description: + * + */ + +#ifndef TXN_CLIENT_HPP_ +#define TXN_CLIENT_HPP_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "unistd.h" +#include "stdlib.h" +#include "caf/all.hpp" +#include "caf/io/all.hpp" +#include "txn.hpp" +#include "txn_server.hpp" + +#include + +using std::cin; +using std::cout; +using std::endl; +using std::vector; +using std::string; +using std::map; +using std::pair; +using std::to_string; +using std::function; +using std::sort; +using std::atomic; +using std::chrono::seconds; +using std::chrono::milliseconds; + +namespace claims { +namespace txn { +/** + * @brief: Client APIs to transactional operate data ingestion + * @param: [ip_],[port_] are network address of TxnServer + * @param: [proxy_] is remote actor that handles request to TxnServer + */ +class TxnClient { + public: + static string ip_; + static int port_; + static caf::actor proxy_; + + /** Initialize [TxnClient] that [TxnServer] work at */ + static RetCode Init(string ip = kTxnIp, int port = kTxnPort); + + /** Just for debug, print some information */ + static RetCode Debug(string flag); + + /** Use [request] as parameter to request a ingestion transaction from + * TxnServer. + * The [ingest] is assigned to transaction information after function called.*/ + static RetCode BeginIngest(const FixTupleIngestReq& request, Ingest& ingest); + + /** Commit ingestion transaction [ts]. + * [ts] is write timestamp of ingestion transaction, + * set its visibility to true. */ + static RetCode CommitIngest(UInt64 ts); + + /** Abort ingestion transaction [ts]. + * [id] is write timestamp of ingestion transaction. */ + static RetCode AbortIngest(UInt64 ts); + + /** Use [request] as parameter to request a query transaction from TxnServer. + * [query] assigned to transaction information after function called */ + static RetCode BeginQuery(const QueryReq& request, Query& query); + + /** Announce query transaction [ts] is end*/ + static RetCode CommitQuery(UInt64 ts); + + /** Commit checkpoint [ts] on [part], + * set new historical checkpoint [his_cp], and real-time checkpoint [rt_cp] */ + static RetCode CommitCheckpoint(UInt64 ts, UInt64 part, UInt64 his_cp, + UInt64 rt_cp); +}; +} +} + +#endif // TXN_CLIENT_HPP_ diff --git a/txn_manager/txn_client_test.cpp b/txn_manager/txn_client_test.cpp new file mode 100644 index 000000000..3df022024 --- /dev/null +++ b/txn_manager/txn_client_test.cpp @@ -0,0 +1,334 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/client.cpp + * + * Created on: 2016年4月7日 + * Author: imdb + * Email: + * + * Description: + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "caf/all.hpp" +#include "caf/io/all.hpp" +#include "txn.hpp" +#include "unistd.h" +#include "txn_client.hpp" +#include "txn_log.hpp" +using std::cin; +using std::cout; +using std::endl; +using std::vector; +using std::string; +using std::map; +using std::pair; +using std::unordered_map; +using std::to_string; +using std::function; +using std::sort; +using std::tuple; +using std::make_tuple; +using std::make_pair; +using std::get; +using std::string; + +using UInt64 = unsigned long long; +using UInt32 = unsigned int; +using UInt16 = unsigned short; +using UInt8 = char; +using RetCode = int; +using OkAtom = caf::atom_constant; +using IngestAtom = caf::atom_constant; +using QueryAtom = caf::atom_constant; +using FailAtom = caf::atom_constant; +using QuitAtom = caf::atom_constant; +using claims::txn::Snapshot; +using claims::txn::CAFSerConfig; +// using claims::txn::QueryTracker; +class Foo { + public: + vector request1; + unordered_map> request2; + vector> request3; + void set_request1(const vector &req) { request1 = req; } + void set_request2(const unordered_map> &req) { + request2 = req; + } + void set_request3(const vector> &req) { request3 = req; } + vector get_request1() const { return request1; } + unordered_map> get_request2() const { + return request2; + } + vector> get_request3() const { return request3; } +}; + +inline bool operator==(const Foo &a, const Foo &b) { + return a.request1 == b.request1 && a.request2 == b.request2; +} +char v[1024 + 10]; + +caf::actor proxy; +class A { + public: + vector list_; + int c = 0; + void set_list_(const vector list) { list_ = list; } + vector get_list_() const { return list_; } +}; +inline bool operator==(const A &a1, const A &a2) { + return a1.list_ == a2.list_; +} + +void ConfigA() { + caf::announce("A", make_pair(&A::get_list_, &A::set_list_)); +} +void task(int index) { + for (auto i = 0; i < index; i++) { + caf::scoped_actor self; + self->sync_send(proxy, IngestAtom::value, i) + .await([=](int ret) { /*cout <<"receive:" << ret << endl;*/ + }, + caf::after(std::chrono::seconds(2)) >> + [] { cout << "ingest time out" << endl; }); + // self->sync_send(proxy, QueryAtom::value).await( + // [=](int t) { + // cout << t<< endl; + // }, + // [=](A a) { + // cout << "success" << endl; + // for (auto &it : a.list_){ + // cout << it << endl; + // } + // }, + // caf::after(std::chrono::seconds(2)) >> [] { + // cout << "query time out" << endl; + // } + // ); + } +} + +using claims::txn::FixTupleIngestReq; +using claims::txn::Ingest; +using claims::txn::QueryReq; +using claims::txn::Query; +using claims::txn::TxnServer; +using claims::txn::TxnClient; +using claims::txn::LogServer; +using claims::txn::LogClient; +char buffer[20 * 1024 + 10]; +int is_log = 0; +void task2(int id, int times) { + std::default_random_engine e; + std::uniform_int_distribution rand_tuple_size(50, 150); + std::uniform_int_distribution rand_tuple_count(10, 100); + std::uniform_int_distribution rand_part_count(1, 10); + for (auto i = 0; i < times; i++) { + FixTupleIngestReq req; + Ingest ingest; + auto part_count = rand_part_count(e); + auto tuple_size = rand_tuple_size(e); + auto tuple_count = rand_tuple_size(e); + for (auto i = 0; i < part_count; i++) + req.InsertStrip(i, part_count, tuple_count / part_count > 0 + ? tuple_count / part_count + : 1); + TxnClient::BeginIngest(req, ingest); + if (is_log == 1) + for (auto &strip : ingest.strip_list_) + LogClient::Data(strip.first, strip.second.first, strip.second.second, + buffer, tuple_size * tuple_count / part_count); + TxnClient::CommitIngest(ingest.ts_); + if (is_log == 1) LogClient::Refresh(); + } +} + +using std::set; + +class Tuple { + public: + int a_, b_; + Tuple() {} + Tuple(int a, int b) : a_(a), b_(b) {} +}; +inline bool operator<(const Tuple &lhs, const Tuple &rhs) { + return lhs.a_ < rhs.a_ || (lhs.a_ == rhs.a_ && lhs.b_ < rhs.b_); +} +class Type { + public: + set> type1_; + set type2_; + Type() {} + explicit Type(set> type) { + // type1_ = type; + for (auto &tuple : type) type2_.insert(Tuple(tuple.first, tuple.second)); + } + void setType(set> type) { + // type1_ = type; + for (auto &tuple : type) type2_.insert(Tuple(tuple.first, tuple.second)); + } + set> getType() const { + // return type1_; + set> ret2; + for (auto &tuple : type2_) ret2.insert(make_pair(tuple.a_, tuple.b_)); + return ret2; + } + string ToString() const { + string str = ""; + for (auto &it : type1_) + str += to_string(it.first) + "," + to_string(it.second) + "\n"; + for (auto &it : type2_) + str += to_string(it.a_) + "," + to_string(it.b_) + "\n"; + return str; + } +}; + +inline bool operator==(const Type &lhs, const Type &rhs) { return lhs == rhs; } + +caf::behavior Server(caf::event_based_actor *self, int port) { + try { + caf::io::publish(self, port); + } catch (...) { + cout << "server publish fail" << endl; + } + return {[self](const Snapshot &snapshot) { + cout << "type" << endl; + cout << snapshot.ToString() << endl; + // self->quit(); + // return caf::make_message("ok"); + }}; +} + +caf::behavior Anon(caf::event_based_actor *self) { + return {[](string it) { cout << "anon message:" << it << endl; }}; +} + +int main(int argc, const char **argv) { + CAFSerConfig(); + /* int n = stoi(string(argv[1])); + int times = stoi(string(argv[2])); + string ip = string(argv[3]); + int port = stoi(string(argv[4])); + is_log = stoi(string(argv[5])); + TxnClient::Init(ip, port); + LogServer::Init("data-log"); + struct timeval tv1, tv2; + vector threads; + for (auto i=0;i("type", make_pair(&Type::getType, &Type::setType)); + // cout << type << " launched" << endl; + if (type == "client") { + { + try { + caf::scoped_actor self; + // Type type({{1, 2}, {3, 4}, {5, 6}}); + Snapshot snapshot; + snapshot.setHisCPS({{1, 2}, {2, 3}}); + snapshot.setPStrips({{1, {{3, 1}, {5, 6}}}, {2, {{3, 1}, {5, 6}}}}); + auto server = caf::io::remote_actor(ip, port); + caf::anon_send(server, snapshot); + + // self->sync_send(server, type) + // .await([](const string &str) { cout << "receive" << endl; + // }, + // caf::others >> [] { cout << "others message" << + // endl; }, + // caf::after(std::chrono::seconds(1)) >> + // []() { cout << "timeout" << endl; }); + } catch (...) { + cout << "client send fail" << endl; + } + } + } else if (type == "server") { + caf::spawn(Server, port); + } else if (type == "vector") { + vector v1 = {1, 2, 3}; + vector v2 = {4, 5, 6}; + v1.insert(v1.end(), v2.begin(), v2.end()); + for (auto it : v1) cout << it << endl; + } else if (type == "snapshot") { + Snapshot s1, s2; + s1.part_pstrips_ = {{1, {{1, 1}, {2, 2}, {7, 1}}}}; + s2.part_pstrips_ = {{1, {{4, 3}, {8, 1}}}}; + s1.Merge(s2); + cout << s1.ToString() << endl; + } else if (type == "txnserver") { + unordered_map pos_list = {{1, 0}, {2, 0}, {3, 0}, {4, 0}}; + TxnServer::Init(4, 8089); + TxnServer::LoadPos(pos_list); + TxnServer::LoadCPList(0, pos_list, pos_list); + // QueryTracker::Init(); + sleep(1); + FixTupleIngestReq request; + Ingest ingest; + request.InsertStrip(1, 2, 2); + request.InsertStrip(2, 2, 2); + request.InsertStrip(3, 2, 2); + request.InsertStrip(4, 2, 2); + for (auto i = 0; i < 40; i++) { + TxnClient::BeginIngest(request, ingest); + if (i % 10 != 0) + TxnClient::CommitIngest(ingest.ts_); + else + TxnClient::AbortIngest(ingest.ts_); + } + // TxnClient::Debug("core"); + } else if (type == "txnclient") { + TxnClient::Init("127.0.0.1", 8089); + auto job = []() { + QueryReq req({1, 2, 3, 4}); + Query query; + TxnClient::BeginQuery(req, query); + // sleep(3); + TxnClient::CommitQuery(query.ts_); + cout << query.ToString() << endl; + }; + vector jobs; + for (auto i = 0; i < 1; i++) jobs.push_back(thread(job)); + for (auto &j : jobs) j.join(); + } + caf::await_all_actors_done(); + caf::shutdown(); +} diff --git a/txn_manager/txn_log.cpp b/txn_manager/txn_log.cpp new file mode 100644 index 000000000..9fefaa695 --- /dev/null +++ b/txn_manager/txn_log.cpp @@ -0,0 +1,204 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /log/log.cpp + * + * Created on: 2016年2月24日 + * Author: imdb + * Email: + * + * Description: + * + */ +#include "txn_log.hpp" + +namespace claims { +namespace txn { + +string LogServer::file_path_ = "."; +FILE* LogServer::file_handler_ = nullptr; +UInt64 LogServer::file_size_ = 0; +UInt64 LogServer::file_capacity_ = kMaxLogSize; +char* LogServer::buffer_ = nullptr; +UInt64 LogServer::buffer_size_ = 0; +UInt64 LogServer::buffer_capacity_ = kMaxLogSize * 10; +caf::actor LogServer::proxy_; +bool LogServer::active_ = false; +RetCode LogServer::Init(const string path) { + cout << "log server init" << endl; + proxy_ = caf::spawn(); + file_path_ = path; + buffer_ = (char*)malloc(buffer_capacity_); + if (buffer_ == nullptr) return -1; + active_ = true; + return 0; +} + +caf::behavior LogServer::make_behavior() { + return { + [=](IngestAtom, shared_ptr ingest) -> caf::message { + Append(BeginLog(ingest->ts_)); + for (auto& strip : ingest->strip_list_) + Append(WriteLog(ingest->ts_, strip.first, strip.second.first, + strip.second.second)); + // cout << "begin" << endl; + return caf::make_message(0, *ingest); + }, + [=](CommitIngestAtom, const UInt64 id) -> caf::message { + Append(CommitLog(id)); + // cout << "commit" << endl; + Refresh(); + return caf::make_message(0); + }, + [=](AbortIngestAtom, UInt64 id) -> caf::message { + Append(AbortLog(id)); + // cout << "abort" << endl; + Refresh(); + return caf::make_message(0); + }, + [=](CheckpointAtom, UInt64 part, UInt64 logic_cp, UInt64 phy_cp) + -> RetCode { return Append(CheckpointLog(part, logic_cp, phy_cp)); }, + [=](DataAtom, UInt64 part, UInt64 pos, UInt64 offset, void* buffer, + UInt64 size) -> caf::message { + Append(DataLogPrefix(part, pos, offset, size)); + Append(buffer, size); + return caf::make_message(0); + }, + [=](RefreshAtom) -> caf::message { + + Refresh(); + return caf::make_message(0); + }, + caf::others >> [=]() { cout << "unknown log message" << endl; }}; +} + +RetCode LogServer::Append(const string& log) { + if (buffer_size_ + log.length() >= buffer_capacity_) { + cout << "append fail" << endl; + return -1; + } + memcpy(buffer_ + buffer_size_, log.c_str(), log.length()); + buffer_size_ += log.length(); + file_size_ += log.length(); + return 0; +} + +RetCode LogServer::Append(void* data, UInt64 size) { + if (buffer_size_ + size >= buffer_capacity_) return -1; + + memcpy(buffer_ + buffer_size_, data, size); + buffer_size_ += size; + buffer_[buffer_size_++] = '\n'; + file_size_ += size + 1; + + return 0; +} + +RetCode LogServer::Refresh() { + // cout << "refresh" << endl; + if (file_handler_ == nullptr) { + struct timeval ts; + gettimeofday(&ts, NULL); + string file = file_path_ + "/" + kTxnLogFileName + to_string(ts.tv_sec); + // cout << file << endl; + file_handler_ = fopen(file.c_str(), "a"); + if (file_handler_ == nullptr) { + // cout <<"open file fail"<= file_capacity_) { + if (file_handler_ == nullptr) return -1; + fclose(file_handler_); + file_handler_ = nullptr; + file_size_ = 0; + } + return 0; +} + +RetCode LogClient::Begin(UInt64 id) { + // RetCode ret = 0; + // caf::scoped_actor self; + // cout<<"going to send begin atom to log server + // :"<sync_send( log_s,BeginAtom::value, id). + // await( [&](RetCode ret_code) { cout<<"log:Begin, + // ret"<sync_send(LogServer::proxy_, WriteAtom::value, id, part, pos, offset) + .await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} +RetCode LogClient::Commit(UInt64 id) { + RetCode ret = 0; + caf::scoped_actor self; + if (LogServer::active_) + self->sync_send(LogServer::proxy_, CommitAtom::value, id) + .await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} +RetCode LogClient::Abort(UInt64 id) { + RetCode ret = 0; + caf::scoped_actor self; + if (LogServer::active_) + self->sync_send(LogServer::proxy_, AbortAtom::value, id) + .await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} +RetCode LogClient::Data(UInt64 part, UInt64 pos, UInt64 offset, void* buffer, + UInt64 size) { + RetCode ret = 0; + caf::scoped_actor self; + if (LogServer::active_) + self->sync_send(LogServer::proxy_, DataAtom::value, part, pos, offset, + buffer, + size).await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} +RetCode LogClient::Checkpoint(UInt64 part, UInt64 logic_cp, UInt64 phy_cp) { + RetCode ret = 0; + caf::scoped_actor self; + if (LogServer::active_) + self->sync_send(LogServer::proxy_, CheckpointAtom::value, part, logic_cp, + phy_cp).await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} + +RetCode LogClient::Refresh() { + RetCode ret = 0; + caf::scoped_actor self; + if (LogServer::active_) + self->sync_send(LogServer::proxy_, RefreshAtom::value) + .await([&](RetCode ret_code) { ret = ret_code; }); + return ret; +} +} +} diff --git a/txn_manager/txn_log.hpp b/txn_manager/txn_log.hpp new file mode 100644 index 000000000..adfd4c188 --- /dev/null +++ b/txn_manager/txn_log.hpp @@ -0,0 +1,137 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /log/log.hpp + * + * Created on: 2016年2月24日 + * Author: imdb + * Email: + * + * Description: + * + */ + +#ifndef LOG_MANAGER_HPP_ +#define LOG_MANAGER_HPP_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "unistd.h" +#include "dirent.h" +#include "caf/all.hpp" +#include "caf/io/all.hpp" +#include "txn.hpp" + +using std::string; +using std::map; +using std::thread; +using std::cin; +using std::cout; +using std::endl; +using std::ifstream; +using std::to_string; +using std::shared_ptr; + + +namespace claims{ +namespace txn{ + + + + +using UInt64 = unsigned long long; +using UInt32 = unsigned int; +const UInt64 kMaxLogSize = 16 * 1024 * 1024; +const string kTxnLogFileName = "txn_log_"; +const string kDataLogFileName = "data_log_"; +const int kTypeBegin = 1; +const int kTypeWrite = 2; +const int kTypeCommit = 3; +const int kTypeAbort = 4; +const int kTypeCP = 5; +const int kTypeData = 6; + + +class LogServer:public caf::event_based_actor { + public: + static RetCode Init(const string path = "."); + static RetCode Append (const string & log); + static RetCode Append (void * buffer, UInt64 size); + static RetCode Refresh (); + inline static string BeginLog(UInt64 Tid){ + return "begin<"+to_string(Tid) +">\n"; + } + + inline static string WriteLog(UInt64 id, UInt64 part, UInt64 pos,UInt64 offset) { + return "write<"+to_string(id)+","+to_string(part)+","+ + to_string(pos)+","+to_string(offset)+">\n"; + } + + inline static string CommitLog(UInt64 id) { + return "commit<"+to_string(id)+">\n"; + } + inline static string AbortLog(UInt64 id) { + return "abort<"+to_string(id)+">\n"; + } + inline static string CheckpointLog(UInt64 part,UInt64 logic_cp, UInt64 phy_cp){ + return "checkpoint<"+to_string(part) + +","+to_string(logic_cp)+","+to_string(phy_cp)+">\n"; + } + inline static string DataLogPrefix(UInt64 part, UInt64 pos, UInt64 offset, UInt64 size ) { + return "data<"+to_string(part)+","+to_string(pos)+ + ","+to_string(offset)+","+to_string(size)+">\n"; + } + caf::behavior make_behavior(); + static caf::actor proxy_; + static bool active_; + private: + static string file_path_; + static FILE * file_handler_; + static UInt64 file_size_; + static UInt64 file_capacity_; + static char * buffer_; + static UInt64 buffer_size_; + static UInt64 buffer_capacity_; + +}; + + +class LogClient{ + public: + static RetCode Begin(UInt64 id); + static RetCode Write(UInt64 id, UInt64 part, UInt64 pos, UInt64 offset); + static RetCode Commit(UInt64 id); + static RetCode Abort(UInt64 id); + static RetCode Data(UInt64 part, UInt64 pos, UInt64 offset, void * buffer, UInt64 size); + static RetCode Checkpoint(UInt64 part, UInt64 logic_cp, UInt64 phy_cp); + static RetCode Refresh(); + +}; + + +} +} +#endif // LOG_MANAGER_HPP_ diff --git a/txn_manager/txn_server.cpp b/txn_manager/txn_server.cpp new file mode 100644 index 000000000..9a083109c --- /dev/null +++ b/txn_manager/txn_server.cpp @@ -0,0 +1,380 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_server.cpp + * + * Created on: 2016年4月10日 + * Author: imdb + * Email: + * + * Description: + * + */ +#include +#include +#include "txn_server.hpp" +#include "caf/all.hpp" +#include "txn_log.hpp" +#include "../utility/resource_guard.h" +#include "../txn_manager/txn_server.hpp" +using caf::aout; +using std::ofstream; +ofstream txn_log; +namespace claims { +namespace txn { +// using claims::common::rSuccess; +// using claims::common::rLinkTmTimeout; +// using claims::common::rLinkTmFail; +// using claims::common::rBeginIngestTxnFail; +// using claims::common::rBeginQueryFail; +// using claims::common::rBeginCheckpointFail; +// using claims::common::rCommitIngestTxnFail; +// using claims::common::rAbortIngestTxnFail; +// using claims::common::rCommitCheckpointFail; + +atomic TimeStamp::now_; + +int TxnServer::port_ = kTxnPort; +int TxnServer::concurrency_ = kConcurrency; +caf::actor TxnServer::proxy_; +vector TxnServer::cores_; +bool TxnServer::active_ = false; + +unordered_map> TxnServer::pos_list_; +unordered_map TxnServer::cp_list_; +set TxnServer::active_querys_; + +caf::behavior TxnCore::make_behavior() { + this->delayed_send(this, seconds(3 + core_id_), MergeAtom::value); + + return { + [this](DebugAtom, string flag) { cout << ToString() << endl; }, + [this](IngestAtom, shared_ptr ingest) -> caf::message { + RetCode ret = rSuccess; + auto id = TxnBin::GetTxnBinID(ingest->ts_, TxnServer::concurrency_); + auto pos = TxnBin::GetTxnBinPos(ingest->ts_, TxnServer::concurrency_); + txnbin_list_[id].SetTxn(pos, ingest->strip_list_); + return caf::make_message(ret, *ingest); + }, + [this](CommitIngestAtom, const UInt64 ts) -> caf::message { + RetCode ret = rSuccess; + auto id = TxnBin::GetTxnBinID(ts, TxnServer::concurrency_); + auto pos = TxnBin::GetTxnBinPos(ts, TxnServer::concurrency_); + txnbin_list_[id].CommitTxn(pos); + return caf::make_message(rSuccess); + }, + [this](AbortIngestAtom, const UInt64 ts) -> caf::message { + RetCode ret = rSuccess; + auto id = TxnBin::GetTxnBinID(ts, TxnServer::concurrency_); + auto pos = TxnBin::GetTxnBinPos(ts, TxnServer::concurrency_); + txnbin_list_[id].AbortTxn(pos); + return caf::make_message(rSuccess); + }, + [this](QueryAtom, shared_ptr query, + bool include_abort) -> caf::message { + int last_core = query->ts_ / TxnServer::concurrency_; + int bin_num = 0; + if (query->ts_ >= TxnServer::concurrency_) + bin_num = (query->ts_) / (TxnServer::concurrency_ * kTxnBinSize); + int remain = 0; + if (query->ts_ > TxnServer::concurrency_) { + auto all_remain = + (query->ts_) % (TxnServer::concurrency_ * kTxnBinSize); + remain = (all_remain + TxnServer::concurrency_ - 1 - core_id_) / + TxnServer::concurrency_; + } + if (core_id_ > last_core && remain > 0) remain--; + if (!include_abort) { + cout << "qy_ts:" << query->ts_ << ",core:" << core_id_ + << ",bin num:" << bin_num << ",re:" << remain << endl; + } + if (remain > 0) { + txnbin_list_[bin_num].MergeTxn(*query, remain); + auto count = txnbin_list_[bin_num].Count(); + if (count < remain) + cout << "!!!!!error:" << query->ts_ << "@" << core_id_ << "," + << bin_num << "?count:" << count << ",remain:" << remain + << endl; + } + + for (int id = bin_num - 1; id >= 0; id--) { + if (txnbin_list_[id].IsSnapshot()) { + txnbin_list_[id].MergeSnapshot(*query); + break; + } else { + txnbin_list_[id].MergeTxn(*query, kTxnBinSize); + auto count = txnbin_list_[id].Count(); + if (count < kTxnBinSize) + cout << "error:" << query->ts_ << "@" << core_id_ << "," + << bin_num << "?count:" << count << endl; + } + } + auto next_core_id = (core_id_ + 1) % TxnServer::concurrency_; + if (next_core_id != TxnServer::GetCoreID(query->ts_)) { + // scan next core + this->forward_to(TxnServer::cores_[next_core_id]); + } else if (include_abort) { + for (auto& part_cp : query->rt_cp_list_) { + auto part = part_cp.first; + auto checkpoint = part_cp.second; + // mix snapshot_list into abort_list + query->abort_list_[part].insert(query->abort_list_[part].end(), + query->snapshot_[part].begin(), + query->snapshot_[part].end()); + // clear abort list + Strip::Sort(query->abort_list_[part]); + Strip::Merge(query->abort_list_[part]); + Strip::Filter(query->abort_list_[part], + [checkpoint](PStrip& pstrip) -> bool { + if (pstrip.first + pstrip.second <= checkpoint) { + return false; + } else { + if (pstrip.first < checkpoint && + pstrip.first + pstrip.second > checkpoint) + pstrip = make_pair(checkpoint, + pstrip.first + pstrip.second - checkpoint); + return true; + } + }); + // remove not continuous commit/abort strip + if (query->abort_list_[part].size() > 0) { + auto continuous_pos = query->abort_list_[part][0].first + + query->abort_list_[part][0].second; + Strip::Filter(query->snapshot_[part], + [continuous_pos](PStrip& pstrip) -> bool { + if (pstrip.first + pstrip.second <= continuous_pos) + return true; + else + return false; + }); + } + } + } + return caf::make_message(*query); + }, + [this](MergeAtom) { + while (txnbin_list_[txnbin_cur_].IsFull()) { + if (txnbin_cur_ == 0) { + txnbin_list_[txnbin_cur_].GenSnapshot(); + } else { + txnbin_list_[txnbin_cur_].GenSnapshot( + txnbin_list_[txnbin_cur_ - 1]); + } + txnbin_cur_++; + } + this->delayed_send(this, seconds(3 + core_id_), MergeAtom::value); + }, + [this](GCAtom, UInt64 min_ts_remain) { + + map new_txnbin_list; + auto ct = 0; + for (auto it = txnbin_list_.rbegin(); it != txnbin_list_.rend(); it++) { + auto id = it->first; + auto max_ts = + TxnBin::GetTxnBinMaxTs(id, TxnServer::concurrency_, core_id_); + if (txnbin_list_[id].IsSnapshot()) { + if (ct == 0) { + new_txnbin_list[id] = txnbin_list_[id]; + ct++; + } else { + break; + } + } else { + new_txnbin_list[id] = txnbin_list_[id]; + } + } + if (new_txnbin_list.size() < txnbin_list_.size()) + txnbin_list_ = new_txnbin_list; + + }, + [](GCAtom) { + /* auto size_old = size_; + auto pos = 0; + for (auto i = 0; i < size_; i++) + if (!TxnServer::IsStripListGarbage(strip_list_[i])) { + txn_index_[txn_index_[i]] = pos; + commit_[pos] = commit_[i]; + abort_[pos] = abort_[i]; + strip_list_[pos] = strip_list_[i]; + ++pos; + } + size_ = pos; + cout << "core:" << core_id_ << ",gc:" << size_old << "=>" << pos + << endl;*/ + // this->delayed_send(this, seconds(kGCTime), GCAtom::value); + }, + caf::others >> [&]() { + cout << "core:" << core_id_ << " unkown message " + << to_string(current_message()) << endl; + }}; +} + +string TxnCore::ToString() { + string str = "core_id:" + to_string(core_id_) + "\n"; + for (auto& txnbin : txnbin_list_) { + str += "txnbin_id:" + to_string(txnbin.first) + "\n"; + str += txnbin.second.ToString(); + } + return str; +} + +caf::behavior TxnServer::make_behavior() { + if (!txn_log.is_open()) txn_log.open("txn_log.txt"); + try { + caf::io::publish(proxy_, port_, nullptr, true); + cout << "txn server bind to port:" << port_ << " success" << endl; + } catch (...) { + cout << "txn server bind to port:" << port_ << " fail" << endl; + } + // this gc for txn_manager is not complete implemented + // this->delayed_send(this, seconds(3), GCAtom::value); + return {[this](DebugAtom, string flag) -> caf::message { + cout << "debug begin" << endl; + for (auto& core : cores_) + caf::anon_send(core, DebugAtom::value, flag); + return caf::make_message(rSuccess); + }, + [this](IngestAtom, const FixTupleIngestReq& request) { + auto ts = TimeStamp::GenAdd(); + // temporary object to store snapshot, etc. between cores + auto ingest = make_shared(request.content_, ts); + for (auto& part : ingest->strip_list_) + // atomic malloc a strip for each requested partition + ingest->InsertStrip(AtomicMalloc(part.first, part.second.first, + part.second.second)); + current_message() = caf::make_message(IngestAtom::value, ingest); + // forward request to each "core" + forward_to(cores_[GetCoreID(ts)]); + }, + [this](CommitIngestAtom, + const UInt64 ts) { forward_to(cores_[GetCoreID(ts)]); }, + [this](AbortIngestAtom, + const UInt64 ts) { forward_to(cores_[GetCoreID(ts)]); }, + [this](QueryAtom, const QueryReq& request) { + auto ts = TimeStamp::Gen(); + active_querys_.insert(ts); + auto query = + make_shared(ts, GetHisCPList(ts, request.part_list_), + GetRtCPList(ts, request.part_list_)); + current_message() = caf::make_message(QueryAtom::value, query, + request.include_abort_); + // forward request to each core to get sub snapshot + forward_to(cores_[GetCoreID(ts)]); + }, + [this](CommitQueryAtom, UInt64 ts) -> caf::message { + // query execution end + active_querys_.erase(ts); + return caf::make_message(rSuccess); + }, + [this](CommitCPAtom, UInt64 ts, UInt64 part, UInt64 his_cp, + UInt64 rt_cp) -> caf::message { + // commit a checkpoint on partition, set new one + cp_list_[part].SetHisCP(ts, his_cp); + cp_list_[part].SetRtCP(ts, rt_cp); + // cout << "commit " << part << ":" << his_cp << "," << rt_cp << + // endl; + return caf::make_message(rSuccess); + }, + [this](GCAtom) { + UInt64 ts; + if (active_querys_.size() > 0) + ts = *active_querys_.begin(); + else + ts = TimeStamp::Gen(); + for (auto& core : TxnServer::cores_) + caf::anon_send(core, GCAtom::value, ts); + this->delayed_send(this, seconds(3), GCAtom::value); + }, + caf::others >> [this]() { + cout << "server unkown message:" + << to_string(current_message()) << endl; + }}; +} + +RetCode TxnServer::Init(int concurrency, int port) { + active_ = true; + concurrency_ = concurrency; + port_ = port; + proxy_ = caf::spawn(); + // start all cores + for (auto i = 0; i < concurrency_; i++) + cores_.push_back(caf::spawn(i)); + CAFSerConfig(); + return 0; +} + +Strip TxnServer::AtomicMalloc(UInt64 part, UInt64 TupleSize, + UInt64 TupleCount) { + Strip strip; + strip.part_ = part; + if (TupleSize * TupleCount == 0) return strip; + do { + strip.pos_ = pos_list_[part].load(); + strip.offset_ = 0; + UInt64 block_pos = strip.pos_ % kBlockSize; + UInt64 remain_count = TupleCount; + int count = 0; + while (remain_count > 0) { + // Calculate max tuple count that a block resides + UInt64 use_count = (kBlockSize - block_pos - kTailSize) / TupleSize; + if (use_count > remain_count) use_count = remain_count; + + // update remain count to be allocated + remain_count -= use_count; + strip.offset_ += use_count * TupleSize; + block_pos += use_count * TupleSize; + + // allocate unavailable space of block tail + if (kBlockSize - block_pos - kTailSize < TupleSize) { + strip.offset_ += kBlockSize - block_pos; + block_pos = 0; + } + } + } while (!pos_list_[part].compare_exchange_weak(strip.pos_, + strip.pos_ + strip.offset_)); + return strip; +} + +unordered_map TxnServer::GetHisCPList( + UInt64 ts, const vector& parts) { + unordered_map cps; + for (auto& part : parts) cps[part] = cp_list_[part].GetHisCP(ts); + return cps; +} + +unordered_map TxnServer::GetRtCPList( + UInt64 ts, const vector& parts) { + unordered_map cps; + for (auto& part : parts) cps[part] = cp_list_[part].GetRtCP(ts); + return cps; +} + +RetCode TxnServer::LoadCPList(UInt64 ts, + const unordered_map& his_cp_list, + const unordered_map& rt_cp_list) { + for (auto& cp : his_cp_list) cp_list_[cp.first].SetHisCP(ts, cp.second); + for (auto& cp : rt_cp_list) cp_list_[cp.first].SetRtCP(ts, cp.second); + return rSuccess; +} + +RetCode TxnServer::LoadPos(const unordered_map& pos_list) { + for (auto& pos : pos_list) pos_list_[pos.first].store(pos.second); + return rSuccess; +} +} +} diff --git a/txn_manager/txn_server.hpp b/txn_manager/txn_server.hpp new file mode 100644 index 000000000..589e0ebe9 --- /dev/null +++ b/txn_manager/txn_server.hpp @@ -0,0 +1,145 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/txn_server.hpp + * + * Created on: 2016年4月10日 + * Author: imdb + * Email: + * + * Description: + * + */ + +#ifndef TXN_SERVER_HPP_ +#define TXN_SERVER_HPP_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "unistd.h" +#include "stdlib.h" +#include "caf/all.hpp" +#include "caf/io/all.hpp" +#include "../txn_manager/txn.hpp" +#include "../utility/Timer.h" + +namespace claims { +namespace txn { +using std::cin; +using std::cout; +using std::endl; +using std::vector; +using std::string; +using std::map; +using std::unordered_map; +using std::pair; +using std::to_string; +using std::function; +using std::sort; +using std::atomic; +using std::mutex; +using std::lock_guard; +using std::chrono::seconds; +using std::chrono::milliseconds; +using std::make_shared; +using std::shared_ptr; +using std::atomic; +// UInt64 txn_id; +class TimeStamp { + public: + static UInt64 Init(UInt64 ts) { now_.store(ts); } + static UInt64 Gen() { return now_.load(); } + static UInt64 GenAdd() { return now_.fetch_add(1); } + static UInt64 TSLow(UInt64 ts, int num) { return ts % num; } + static UInt64 TSHigh(UInt64 ts, int num) { return ts / num; } + + private: + static atomic now_; +}; +/** + * @brief: a work thread to process transaction, query, produce snapshot + * @param: [core_id] is the id of TxnCore + * @param:[txnbin_list_] store list of txnbin + * @param: [txnbin_cur_] is the current max txnbin id + */ +class TxnCore : public caf::event_based_actor { + public: + UInt64 core_id_; + UInt64 txnbin_cur_ = 0; + map txnbin_list_; + caf::behavior make_behavior() override; + TxnCore(int coreId) : core_id_(coreId) {} + string ToString(); +}; + +/** + * @brief: a proxy thread to handle all request, operate state changes + * @param: [active_] is whether local [TxnServer] launched + * If true, need not to send request by network + * @param: [port_] is service network port, setting in "config file" + * @param: [concurrency_] is number of TxnCore + * @param: [proxy_] is TxnServer singleton instance + * @param: [pos_list_] is current cursor for all partitions + * @param: [cp_list_] is checkpoints for all partitions + */ +class TxnServer : public caf::event_based_actor { + public: + static bool active_; + static int port_; + static int concurrency_; + static caf::actor proxy_; + static vector cores_; + static unordered_map> pos_list_; + static unordered_map cp_list_; + /**************** User APIs ***************/ + static RetCode Init(int concurrency = kConcurrency, int port = kTxnPort); + /** Initialize [TxnServer], called when claims start **/ + static RetCode LoadCPList(UInt64 ts, + const unordered_map& his_cp_list, + const unordered_map& rt_cp_list); + static RetCode LoadPos(const unordered_map& pos_list); + /** hash transaction with [ts] to core id **/ + static int GetCoreID(UInt64 ts) { return ts % concurrency_; } + caf::behavior make_behavior() override; + /**************** System APIs ***************/ + private: + static set active_querys_; + static unordered_map GetHisCPList( + UInt64 ts, const vector& parts); + static unordered_map GetRtCPList(UInt64 ts, + const vector& parts); + /** request atomic allocate next strip of [part] **/ + static inline Strip AtomicMalloc(UInt64 part, UInt64 TupleSize, + UInt64 TupleCount); +}; +} +} + +#endif // TXN_SERVER_HPP_ diff --git a/txn_manager/txn_server_test.cpp b/txn_manager/txn_server_test.cpp new file mode 100644 index 000000000..17ec3edb3 --- /dev/null +++ b/txn_manager/txn_server_test.cpp @@ -0,0 +1,231 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /txn/client.cpp + * + * Created on: 2016年4月7日 + * Author: imdb + * Email: + * + * Description: + * + */ + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "unistd.h" +#include +#include "caf/all.hpp" +#include "caf/io/all.hpp" +//#include "txn.hpp" +#include "txn_server.hpp" +#include "txn_client.hpp" +#include "txn_log.hpp" +using std::cin; +using std::cout; +using std::endl; +using std::vector; +using std::string; +using std::map; +using std::pair; +using std::unordered_map; +using std::to_string; +using std::function; +using std::sort; +using std::tuple; +using std::make_pair; +using std::make_tuple; +using std::get; +using std::shared_ptr; +using std::make_shared; +//using namespace claims::txn; + +using UInt64 = unsigned long long; +using UInt32 = unsigned int; +using UInt16 = unsigned short; +using UInt8 = char; +using RetCode = int; +using OkAtom = caf::atom_constant; +using IngestAtom = caf::atom_constant; +using QueryAtom = caf::atom_constant; +using FailAtom = caf::atom_constant; +using QuitAtom = caf::atom_constant; + +class Foo { + public: + vector request1; + unordered_map> request2; + vector> request3; + void set_request1(const vector & req) { request1 = req;} + void set_request2(const unordered_map> & req) { + request2 = req; + } + void set_request3(const vector> &req) { request3 = req;} + vector get_request1() const {return request1;} + unordered_map> get_request2() const {return request2;} + vector> get_request3() const { return request3;} +}; + +inline bool operator == (const Foo & a, const Foo & b) { + return a.request1 == b.request1 && a.request2 == b.request2; +} + + + + + +class A{ + public: + vector list_ ; + int c = 0; + void set_list_(const vector list) { list_ = list;} + vector get_list_() const { return list_;} +}; +inline bool operator == (const A & a1, const A & a2) { + return a1.list_ == a2.list_; +} + +void ConfigA(){ + caf::announce("A", make_pair(&A::get_list_, &A::set_list_)); +} + +class Core: public caf::event_based_actor { + public: + int id_; + int v_; + Core(int id):id_(id) {} + caf::behavior make_behavior() override; +}; +class Proxy: public caf::event_based_actor { + public: + caf::behavior make_behavior() override; +}; +vector cores; +caf::actor proxy; +caf::behavior Core::make_behavior() { + return { + [=](IngestAtom, int v)->int { + v_ = v; + //cout << "ingest:" << v_ << endl; + return -v_; + }, + [=](QueryAtom, shared_ptr ptr)->A { + //cout << id_ << endl; + ptr->list_.push_back(-id_*id_); + // ptr->list_.push_back(id_); + if(id_ != cores.size() - 1) { + this->forward_to(cores[id_ + 1]); + return A(); + } + else { + return *ptr; + }; + cout << "err" << endl; + + return A(); + }, + caf::others >> [] { cout << "core receive unkown message" << endl;} + }; +} + +caf::behavior Proxy::make_behavior() { + return { + [=](IngestAtom, int v) { + //cout << "begin ingest" << endl; + this->forward_to(cores[v%cores.size()]); + }, + [=](QueryAtom) { + shared_ptr ptr = make_shared(); + this->current_message() = caf::make_message(QueryAtom::value, ptr); + this->forward_to(cores[0]); + }, + caf::others >> [] { cout << "proxy receive unkown message" << endl;} + }; +} +void task(int index){ +for (auto i=0;isync_send(proxy, IngestAtom::value, i).await( + [=](int ret) { /*cout <<"receive:" << ret << endl;*/}, + caf::after(std::chrono::seconds(2)) >> [] { + cout << "ingest time out" << endl; + } + ); + + } +} + + +using claims::txn::FixTupleIngestReq; +using claims::txn::Ingest; +using claims::txn::TxnServer; +using claims::txn::TxnClient; +using claims::txn::LogServer; +using claims::txn::LogClient; +char buffer[3*1024+10]; +void task2(int times){ +for (auto i=0; i threads; +// int n,times; +// cin >> n >> times; +// for (auto i=0;i int gettimeofday(struct timeval *tv, struct timezone *tz); + +static inline double GetCurrents() { + timeval t_start; + gettimeofday(&t_start, NULL); + return t_start.tv_sec + 1.0 * t_start.tv_usec / 1000000; +} + static inline double GetCurrentMs() { timeval t_start; gettimeofday(&t_start, NULL); return t_start.tv_sec * 1000 + 1.0 * t_start.tv_usec / 1000; } +static inline uint64_t GetCurrentUs() { + timeval t_start; + gettimeofday(&t_start, NULL); + return t_start.tv_sec * 1000000 + t_start.tv_usec; +} + /* * @param start: the start time * @return : the elapsed time(ms) from start, accurate to us diff --git a/utility/resource_guard.h b/utility/resource_guard.h new file mode 100644 index 000000000..3a7b5070b --- /dev/null +++ b/utility/resource_guard.h @@ -0,0 +1,138 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/utility/resource_guard.h + * + * Created on: Apr 19, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef UTILITY_RESOURCE_GUARD_H_ +#define UTILITY_RESOURCE_GUARD_H_ + +#include "../common/error_define.h" +#include "../common/memory_handle.h" +#include "../common/rename.h" + +// auto release memory stored in t_. +// Attention: if 't_' is void*, the typename T is void !!! +template +class MemoryGuard { + public: + explicit MemoryGuard(T*& t) : t_(t) {} + ~MemoryGuard() { DELETE_PTR(t_); } + + NO_COPY_AND_ASSIGN(MemoryGuard); + + private: + T*& t_; +}; + +// if the memory is still in use after function return, please use +// MemoryGuardWithRetCode +// only some error occurs in function, the memory will be auto-free +// Attention: if some error occurs, the 'ret' must be set !!! +template +class MemoryGuardWithRetCode { + public: + MemoryGuardWithRetCode(T*& t, RetCode& ret) : t_(t), ret_(ret) {} + ~MemoryGuardWithRetCode() { + if (claims::common::rSuccess != ret_) DELETE_PTR(t_); + } + + NO_COPY_AND_ASSIGN(MemoryGuardWithRetCode); + + private: + T*& t_; + RetCode& ret_; +}; + +// a guard of STL container which stores pointer, like vector +// if ret != rSuccess, the memory will be released +template +class STLGuardWithRetCode { + public: + STLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~STLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it : t_) DELETE_PTR(it); + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(STLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +template +class TwoLayerSTLGuardWithRetCode { + public: + TwoLayerSTLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~TwoLayerSTLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it1 : t_) { + for (auto it2 : it1) { + DELETE_PTR(it2); + } + it1.clear(); + } + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(TwoLayerSTLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +template +class ThreeLayerSTLGuardWithRetCode { + public: + ThreeLayerSTLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~ThreeLayerSTLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it1 : t_) { + for (auto it2 : it1) { + for (auto it3 : it2) { + DELETE_PTR(it3); + } + it2.clear(); + } + it1.clear(); + } + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(ThreeLayerSTLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +#endif // UTILITY_RESOURCE_GUARD_H_ diff --git a/utility/stl_guard.h b/utility/stl_guard.h new file mode 100644 index 000000000..7583300b1 --- /dev/null +++ b/utility/stl_guard.h @@ -0,0 +1,103 @@ +/* + * Copyright [2012-2015] DaSE@ECNU + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * /Claims/utility/stl_guard.h + * + * Created on: Apr 14, 2016 + * Author: yukai + * Email: yukai2014@gmail.com + * + * Description: + * + */ + +#ifndef UTILITY_STL_GUARD_H_ +#define UTILITY_STL_GUARD_H_ +#include "../common/error_define.h" +#include "../common/memory_handle.h" +#include "../common/rename.h" + +// a guard of STL container which stores pointer, like vector +template +class STLGuardWithRetCode { + public: + STLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~STLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it : t_) DELETE_PTR(it); + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(STLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +template +class TwoLayerSTLGuardWithRetCode { + public: + TwoLayerSTLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~TwoLayerSTLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it1 : t_) { + for (auto it2 : it1) { + DELETE_PTR(it2); + } + it1.clear(); + } + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(TwoLayerSTLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +template +class ThreeLayerSTLGuardWithRetCode { + public: + ThreeLayerSTLGuardWithRetCode(T& t, RetCode& ret) : t_(t), ret_(ret) {} + ~ThreeLayerSTLGuardWithRetCode() { + if (claims::common::rSuccess != ret_) { + for (auto it1 : t_) { + for (auto it2 : it1) { + for (auto it3 : it2) { + DELETE_PTR(it3); + } + it2.clear(); + } + it1.clear(); + } + t_.clear(); + } + } + + NO_COPY_AND_ASSIGN(ThreeLayerSTLGuardWithRetCode); + + private: + T& t_; + RetCode& ret_; +}; + +#endif // UTILITY_STL_GUARD_H_ diff --git a/utility/thread_pool.cpp b/utility/thread_pool.cpp index 997ed36b8..8f91337b2 100644 --- a/utility/thread_pool.cpp +++ b/utility/thread_pool.cpp @@ -29,6 +29,7 @@ #include "./thread_pool.h" #include #include +#include #include #include "./task.h" #include "../common/memory_handle.h" @@ -57,13 +58,13 @@ bool ThreadPool::Init(int thread_count_in_pool) { if (pthread_create(&monitor_thread_, NULL, MonitorThreadExec, this) != 0) { // if any failed, return false - ThreadPoolLogging::elog("ERROR: create monitor thread failed!"); + PLOG(ERROR) << "ERROR: create monitor thread failed!"; return false; } for (int i = 0; i < base_thread_count_; ++i) { if (pthread_create(&thread_list_[i], NULL, ThreadExec, this) != 0) { // if any failed, return false - ThreadPoolLogging::elog("ERROR: create thread failed!"); + PLOG(ERROR) << "ERROR: create thread failed!"; return false; } ++current_thread_count_;