Remove difftime, add decrement of persistent count when expired or cleaned.
This commit is contained in:
@ -2287,7 +2287,7 @@ dcb_persistent_clean_count(DCB *dcb, bool cleanall)
|
|||||||
spinlock_acquire(&server->persistlock);
|
spinlock_acquire(&server->persistlock);
|
||||||
while (persistentdcb) {
|
while (persistentdcb) {
|
||||||
CHK_DCB(persistentdcb);
|
CHK_DCB(persistentdcb);
|
||||||
if (cleanall || count >= server->persistpoolmax || difftime(time(NULL), persistentdcb->persistentstart) > server->persistmaxtime)
|
if (cleanall || count >= server->persistpoolmax || time(NULL) - persistentdcb->persistentstart > server->persistmaxtime)
|
||||||
{
|
{
|
||||||
if (previousdcb) {
|
if (previousdcb) {
|
||||||
previousdcb->nextpersistent = persistentdcb->nextpersistent;
|
previousdcb->nextpersistent = persistentdcb->nextpersistent;
|
||||||
@ -2298,6 +2298,7 @@ dcb_persistent_clean_count(DCB *dcb, bool cleanall)
|
|||||||
}
|
}
|
||||||
persistentdcb->nextpersistent = disposals;
|
persistentdcb->nextpersistent = disposals;
|
||||||
disposals = persistentdcb;
|
disposals = persistentdcb;
|
||||||
|
atomic_add(&server->stats.n_persistent, -1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user