Skip to content

Possible bug on simultaneous transactions #37

@luisremis

Description

@luisremis

vdms: f07a3ca

(gdb) bt
#0 0x00007ffff5fe5428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1 0x00007ffff5fe702a in __GI_abort () at abort.c:89
#2 0x00007ffff60277ea in __libc_message (do_abort=do_abort@entry=2,
fmt=fmt@entry=0x7ffff6140ed8 "*** Error in `%s': %s: 0x%s \n")
at ../sysdeps/posix/libc_fatal.c:175
#3 0x00007ffff603037a in malloc_printerr (ar_ptr=, ptr=,
str=0x7ffff6140fa0 "double free or corruption (fasttop)", action=3) at malloc.c:5006
#4 _int_free (av=, p=, have_lock=0) at malloc.c:3867
#5 0x00007ffff603453c in __GI___libc_free (mem=) at malloc.c:2968
#6 0x00007ffff7ba24d8 in PMGD::Transaction::commit() ()
from /home/ragaad/vdms-dep/pmgd/lib/libpmgd.so
#7 0x00000000004b6f90 in VDMS::PMGDQueryHandler::process_query(PMGD::protobufs::Command const
, PMGD::protobufs::CommandResponse
) ()
#8 0x00000000004b743e in VDMS::PMGDQueryHandler::process_queries(std::vector<PMGD::protobufs::Command
, std::allocatorPMGD::protobufs::Command* > const&, int, bool) ()
#9 0x00000000004ad720 in VDMS::PMGDQuery::run() ()
#10 0x00000000004ca2d7 in VDMS::DescriptorsCommand::get_set_path(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, int&) ()
#11 0x00000000004cc802 in VDMS::AddDescriptor::construct_protobuf(VDMS::PMGDQuery&, Json::Value const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, int, Json::Value&) ()
#12 0x0000000000474880 in VDMS::QueryHandler::process_query(VDMS::protobufs::queryMessage&, VDMS::protobufs::queryMessage&) ()
#13 0x0000000000476d38 in VDMS::QueryHandler::process_connection(comm::Connection*) ()
#14 0x00000000004a9507 in VDMS::CommunicationManager::process_queue() ()
#15 0x00007ffff695857f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#16 0x00007ffff6c2e6ba in start_thread (arg=0x7fff4bd2a700) at pthread_create.c:333
#17 0x00007ffff60b741d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

VCL Info

vcl: 24c8085
vcl: we made this change to make it compile with gcc6
ragaad@bdw1:~/vdms-dep/vcl$ git diff
diff --git a/src/TDBDenseDescriptorSet.cc b/src/TDBDenseDescriptorSet.cc
index fef444b..f9fa95f 100644
--- a/src/TDBDenseDescriptorSet.cc
+++ b/src/TDBDenseDescriptorSet.cc
@@ -35,6 +35,7 @@
#include
#include
#include
+#include

#include "TDBDescriptorSet.h"

diff --git a/src/TDBSparseDescriptorSet.cc b/src/TDBSparseDescriptorSet.cc
index a66f947..08e0bdd 100644
--- a/src/TDBSparseDescriptorSet.cc
+++ b/src/TDBSparseDescriptorSet.cc
@@ -33,6 +33,7 @@
#include
#include
#include
+#include

#include "TDBDescriptorSet.h"
#include <tiledb/tiledb.h>

PMGD Info

pmgd: made this change to make it compile for gcc6
ragaad@bdw1:~/vdms-dep/pmgd$ git diff
diff --git a/include/iterator.h b/include/iterator.h
index dc64ade..a07fbc0 100644
--- a/include/iterator.h
+++ b/include/iterator.h
@@ -256,7 +256,7 @@ namespace PMGD {
class PropertyList {
static const unsigned chunk_size = 64;

-uint8_t _chunk0[];
+uint8_t _chunk0[0];

class PropertySpace;
bool find_property(StringID property, PropertyRef &p,

Metadata

Metadata

Labels

BugIndicates unexpected or undesired behaviorsPriority: Urgenthigh priority fixes and/or features.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions