Boost logo

Boost Users :

Subject: Re: [Boost-users] Interprocess: rbtree_best_fit ABI change from 1.53 to 1.55 ?
From: Arunski, Kevin (Kevin.Arunski_at_[hidden])
Date: 2014-01-22 16:06:21


> El 22/01/2014 16:14, Arunski, Kevin escribió:
> > Hello, I have been using a boost::interprocess::map stored in a
> > managed mapped file segment, using the rb_best_fit allocation
> > algorithm.
> >
> > I have observed that starting in boost 1.55, I cannot interoperate
> > with instances of this allocator that were created by programs
> > compiled by boost 1.53.
> >
> > It appears that the size of a boost::intrusive multiset object has
> > changed, and this changes the representation of the rb_best_fit
> > algorithm within the shared memory region.
>
> Sorry about that. That must be a bug. Can you tell me please the sizes
> you get in both versions?

Sure. In code compiled with boost 1.53, this type:

boost::interprocess::rbtree_best_fit<boost::interprocess::null_mutex_family,boost::interprocess::offset_ptr<void,__int64,unsigned __int64,0>,0>

has size = 56
member m_header.m_imultiset has size 32

In code compiled with boost 1.55:

the same type has size = 72
member m_header.m_imultiset has size 48


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net