Boost logo

Boost :

Subject: Re: [boost] [serialization] failing MPI build
From: Alain Miniussi (alain.miniussi_at_[hidden])
Date: 2015-04-15 09:55:07

As for the runtime bug (in broadcast_stl_test-2 for example). It start
failing when the broadcasted map count is loaded.
At line 45 of collections_save_impl.hpp:
gdb indicates count value == 2 (which is correct.

I have no clue what should be in ar at that point (notsure to understand
the nvp thing, why not just send 2 ?) but I'm getting:
(gdb) p ar.buffer_
$66 = std::vector of length 12, capacity 12 = {0 '\000', 0 '\000', 0
'\000', 0 '\000', 2 '\002', 0 '\000', 0 '\000', 0 '\000', 0 '\000', 0
'\000', 0 '\000', 0 '\000'}

but in map.hpp's load_map_collection
       ar >> BOOST_SERIALIZATION_NVP(count);
count contains garbage (and a very big number too) hence an array overflow.

Any idea ?



On 14/04/2015 16:49, Robert Ramey wrote:
> Alain Miniussi wrote
>> Hi,
>> I suspect one problem is that the commit
>> was not taken into account in MPI.
>> Not sure how the MPI should be adapted to that change yet. Some
>> parameters that were supposed to be there only to help overload
>> resolution have been removed (according to comments in pfto.hpp).
>> I guess I need to remove some int arguments from the
>> (save|load)_override methods of boost::mpi::packed_(i|o)archive classes ?
> You are correct. It's easy to see the changes. If you do a diff on some
> other archive like binary or text in the serialization library you'll see
> that the dummy parameter used to emulate partial function template overload
> has been eliminated. And of course eliminate the #include
> boost/serialization/ptfo.hpp . That's all that is necessary. This
> simplifies code at the cost of eliminating support of borland 5x and mdvc
> 7.0 and below which is no longer considered necessary. Since these headers
> are considered implementation features of the serialization library it
> didn't occur to me that making these changes would break anything else.
> Sorry about that.
> If you're interested in enhancing, or improving the MPI implementation as it
> regards serialization, you should let me know so I could acquaint myself
> with the MPI version and offer some suggestions. I've had some ideas in my
> head for years would simplify and expedite usage of the serialization
> library for object transmission over a stream but I've never spend any time
> on them as it didn't seem anyone had any interest.
> Robert Ramey
> --
> View this message in context:
> Sent from the Boost - Dev mailing list archive at
> _______________________________________________
> Unsubscribe & other changes:


Boost list run by bdawes at, gregod at, cpdaniel at, john at