Subject: [Boost-bugs] [Boost C++ Libraries] #12137: boost::interprocess::intermodule_singleton initialization failed
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-04-18 23:01:55
#12137: boost::interprocess::intermodule_singleton initialization failed
-------------------------------------------------+-------------------------
Reporter: Valentin Shtronda <valiko.ua@â¦> | Owner: igaztanaga
Type: Bugs | Status: new
Milestone: To Be Determined | Component:
Version: Boost 1.61.0 | interprocess
Keywords: System EventLog | Severity: Showstopper
get_last_bootup_time get_shared_dir |
-------------------------------------------------+-------------------------
I'm getting exception "boost::interprocess::intermodule_singleton
initialization failed" when trying to use Boost Interprocess library, even
when I run any example from the library doc.
Debugging showed that the library fails to find event 6005 in System's
EventLog, so it cannot obtain system boot-up time, which it uses to create
shared dir.
I used Windows Event Viewer to check that indeed, there is no such event
in my system at this moment. I didn't delete it, so I suppose that Windows
itself cleans old events. My system's uptime is more than 40 days. I see
that my System Event Log is configured to be maximum 20MB (it's default, I
didn't change it) and it's currently 20MB, so it explains everything.
Since it's normal situation, I believe the library should use other way
(in addition to, or instead of current way) to get bootup time. For
example, GetTickCount64 or System Up Time performance counter
(https://msdn.microsoft.com/en-
us/library/windows/desktop/ms725496(v=vs.85).aspx).
What is worse, I cannot reboot at the moment and need to proof-of-concept
IPC on Windows for our project, and this is my only Windows box...
The only quick workaround I see is to patch get_last_bootup_time function
to use GetTickCount64.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/12137> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:20 UTC