Boost logo

Boost :

Subject: [boost] [interprocess] maximum length for names of mutexes, memory segments etc.
From: JOAQUIN M. LOPEZ MUÑOZ (joaquin_at_[hidden])
Date: 2008-12-03 15:28:26


A component of Boost.Flyweight called intermodule_holder internally
uses some Boost.Interprocess objects with very long names intended
to guarantee sistem-wide uniqueness. For instance, this is how such
an internal mutex can be named (87 chars):

boost_flyweight_intermodule_holder_mutex_5660_601342046_2913549788_3054690985_591945496

Alas seems like 87 chars is too much in some platforms like NetBSD:

  terminate called after throwing an instance of 'boost::interprocess::interprocess_exception'
    what(): File name too long

See http://tinyurl.com/6m693p . This problem also shows in some of
Boost.Inteprocess own tests for NetBSD.
Is there any maximum length we can safely commit to across allplatforms?
(docs are silent wrt this).

Thank you,

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk