msgpack :: unpack выдает std :: bad_cast, что приводит к ошибке распаковки - PullRequest
0 голосов
/ 20 февраля 2020

При упаковке используется тип карты. Но во время распаковки он использует массив, что приводит к ошибке распаковки. Обратный след ниже. Может кто-нибудь подсказать мне, что здесь может быть не так?

Внутри моего класса я определил

MSGPACK_DEFINE(msgId_, src_, dest_, key_, OpType_, appRefId_, data_, dataLen_) 

backtrace -

  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007f957fccc42a in __GI_abort () at abort.c:89
#2  0x00007f95808000ad in __gnu_cxx::__verbose_terminate_handler () at ../../../../src/libstdc++-v3/libsupc++/vterminate.cc:95
#3  0x00007f95807fe066 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:47
#4  0x00007f95807fe0b1 in std::terminate () at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:57
#5  0x00007f95807fe2c9 in __cxxabiv1::__cxa_throw (obj=0x7f95086280c0, tinfo=tinfo@entry=0x5636408a3778 <typeinfo for msgpack::v1::type_error>, dest=dest@entry=0x56363fe5ce70 <msgpack::v1::type_error::~type_error()>) at ../../../../src/libstdc++-v3/libsupc++/eh_throw.cc:87
#6  0x000056363eedfacc in msgpack::v1::type::define_array<unsigned int, AppHandle, AppHandle, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, DbmDbOpType::Value, AppReferId, std::vector<char, std::allocator<char> >, unsigned long, bool>::msgpack_unpack (o=..., this=<optimized out>) at /sonus/p4/ws/radkathimar/dbmdev/common/ccs/thirdparty/msgpack/msgpack/adaptor/detail/cpp11_define_array.hpp:139
#7  0x000056363fe60bb7 in msgpack::v1::type::define_array<unsigned int, AppHandle, AppHandle, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, DbmDbOpType::Value, AppReferId, std::vector<char, std::allocator<char> >, unsigned long>::msgpack_unpack (o=..., this=<optimized out>) at /sonus/p4/ws/radkathimar/dbmdev/common/ccs/thirdparty/msgpack/msgpack/adaptor/int.hpp:52
#8  reqMsg::msgpack_unpack (o=..., this=0x7f951d1db800)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...