Commit Graph

5 Commits

Author SHA1 Message Date
JoelKatz
42c7ec7965 Make sure we maintain cluster connections. 2013-03-18 18:07:03 -07:00
JoelKatz
a2a52ad88b Fix a crash bug reported by Jon Montroll.
ConnectionPool::peerConnect called Peer::connect while holding the
ConnectionPool::mPeerLock. But Peer::connect could call Peer::detach which
calls ConnectionPool::peerClosed which tries to acquire the
ConnectionPool::mPeerLock mutex. Said mutex was not recursive. Belt and
suspenders fix -- make the mutex recursive and make
ConnectionPool::peerConnection call Peer::connect without holding the
ConnectionPool::mPeerLock mutex. (This was intended to be a fast, internal
mutex and calls to external 'heavy' functions should not be made while
holding it.)
2013-02-21 02:43:20 -08:00
JoelKatz
cfcb1a2c11 Get rid of the redundant SSL contexts. 2013-01-10 09:10:40 -08:00
JoelKatz
2a06686b7c Round one of fixes to avoid ridiculous numbers of spurious copy constructor and destructor calls.
Most of these fixes involve calls to BOOST_FOREACH to iterate over a map or unordered_map where the
iterator type didn't perfectly match the internal type, so a reference into the map couldn't be created
and a new value/content pair had to be created for each iteration.
2012-12-17 20:20:24 -08:00
Stefan Thomas
fa3fab5816 Moved cpp code to src/cpp and js code to src/js. 2012-11-07 12:49:50 -08:00