static int max_connections=10;
static int max_queue_per_conn=200;
static int target_max_feedfile_size=100000;
-static int period_seconds=60;
+static int period_seconds=30;
static int filepoll_seconds=5;
static int max_queue_per_ipf=-1;
static pid_t self_pid;
static int *lowvol_perperiod;
static int lowvol_circptr;
-static int lowvol_total;
+static int lowvol_total; /* does not include current period */
/* statemc_init initialises */
static StateMachineState sms;
static void check_idle_conns(void) {
Conn *conn;
- int verylowvol= lowvol_perperiod[lowvol_circptr];
+ int volthisperiod= lowvol_perperiod[lowvol_circptr];
lowvol_circptr++;
lowvol_circptr %= lowvol_periods;
+ lowvol_total += volthisperiod;
lowvol_total -= lowvol_perperiod[lowvol_circptr];
lowvol_perperiod[lowvol_circptr]= 0;
}
conn= LIST_HEAD(conns);
- if (!verylowvol &&
+ if (!volthisperiod &&
conns.count==1 &&
- lowvol_total+verylowvol < lowvol_thresh &&
+ lowvol_total < lowvol_thresh &&
!conn_busy(conn))
conn_idle_close(conn, "low volume");
}
DUMPV("%d", , cli_master);
fprintf(f,"\n");
- fprintf(f,"lowvol ");
+ fprintf(f,"lowvol");
DUMPV("%d", , lowvol_circptr);
DUMPV("%d", , lowvol_total);
fprintf(f,":");
lowvol_perperiod[i]= lowvol_thresh;
lowvol_total += lowvol_thresh;
}
+ lowvol_total -= lowvol_thresh;
/* set things up */