s->next_admin = s->cur_admin;
if ((s->cur_state != SRV_ST_STOPPED) && (s->next_state == SRV_ST_STOPPED)) {
- /* no maintenance + server DOWN: publish event SERVER DOWN */
- srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_DOWN, s, 0);
-
s->last_change = now.tv_sec;
if (s->proxy->lbprm.set_server_status_down)
s->proxy->lbprm.set_server_status_down(s);
*/
xferred = pendconn_redistribute(s);
+ /* no maintenance + server DOWN: publish event SERVER DOWN */
+ srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_DOWN, s, 0);
+
tmptrash = alloc_trash_chunk();
if (tmptrash) {
chunk_printf(tmptrash,
}
else if (((s->cur_state != SRV_ST_RUNNING) && (s->next_state == SRV_ST_RUNNING))
|| ((s->cur_state != SRV_ST_STARTING) && (s->next_state == SRV_ST_STARTING))) {
- /* no maintenance + server going UP: publish event SERVER UP */
- srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_UP, s, 0);
-
if (s->proxy->srv_bck == 0 && s->proxy->srv_act == 0) {
if (s->proxy->last_change < now.tv_sec) // ignore negative times
s->proxy->down_time += now.tv_sec - s->proxy->last_change;
*/
xferred = pendconn_grab_from_px(s);
+ /* no maintenance + server going UP: publish event SERVER UP */
+ srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_UP, s, 0);
+
tmptrash = alloc_trash_chunk();
if (tmptrash) {
chunk_printf(tmptrash,
if (s->onmarkeddown & HANA_ONMARKEDDOWN_SHUTDOWNSESSIONS)
srv_shutdown_streams(s, SF_ERR_DOWN);
- /* maintenance on previously running server: publish event SERVER DOWN */
- srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_DOWN, s, 0);
-
/* force connection cleanup on the given server */
srv_cleanup_connections(s);
/* we might have streams queued on this server and waiting for
*/
xferred = pendconn_redistribute(s);
+ /* maintenance on previously running server: publish event SERVER DOWN */
+ srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_DOWN, s, 0);
+
tmptrash = alloc_trash_chunk();
if (tmptrash) {
chunk_printf(tmptrash,