* transaction; this could lead to deadlock.
*/
if ( (which_one != S_FLOORCACHE)
- && (which_one != S_RPLIST)
) {
cdb_check_handles();
}
* transaction; this could lead to deadlock.
*/
if ( (which_one != S_FLOORCACHE)
- && (which_one != S_RPLIST)
) {
cdb_check_handles();
}
void InitializeMasterTSD(void) {
- TRACE;
memset(&masterTSD, 0, sizeof(struct thread_tsd));
}
CtdlShutdownServiceHooks(); /* close all listener sockets to prevent new connections */
PerformSessionHooks(EVT_SHUTDOWN); /* run any registered shutdown hooks */
+ /* We used to wait for all threads to exit. Fuck that. The only thing important is that the databases are
+ * cleanly unmounted. After that, exit the whole program.
+ */
+#if 0
int countdown = 30;
while ( (num_workers > 0) && (countdown-- > 0)) {
syslog(LOG_DEBUG, "Waiting %d seconds for %d worker threads to exit",
);
usleep(1000000);
}
+#endif
+
}