mirror of https://gitlab.com/bashrc2/epicyon
More aggressive clearing of inbox queue
parent
23bb250deb
commit
25bff0dfbf
35
daemon.py
35
daemon.py
|
@ -721,22 +721,23 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
def _inboxQueueCleardown(self) -> None:
|
def _inboxQueueCleardown(self) -> None:
|
||||||
""" Check if the queue is full and remove oldest items if it is
|
""" Check if the queue is full and remove oldest items if it is
|
||||||
"""
|
"""
|
||||||
if len(self.server.inboxQueue)>=self.server.maxQueueLength:
|
if len(self.server.inboxQueue)<self.server.maxQueueLength:
|
||||||
print('Inbox queue is full ('+str(self.server.maxQueueLength)+' items). Removing oldest items.')
|
return
|
||||||
cleardownStartTime=time.time()
|
print('Inbox queue is full ('+str(self.server.maxQueueLength)+' items). Removing oldest items.')
|
||||||
removals=0
|
cleardownStartTime=time.time()
|
||||||
while len(self.server.inboxQueue) >= self.server.maxQueueLength-4:
|
removals=0
|
||||||
queueFilename=self.server.inboxQueue[0]
|
while len(self.server.inboxQueue) >= self.server.maxQueueLength/2:
|
||||||
if os.path.isfile(queueFilename):
|
queueFilename=self.server.inboxQueue[0]
|
||||||
try:
|
if os.path.isfile(queueFilename):
|
||||||
os.remove(queueFilename)
|
try:
|
||||||
removals+=1
|
os.remove(queueFilename)
|
||||||
except:
|
removals+=1
|
||||||
print('WARN: unable to remove inbox queue file '+queueFilename)
|
except:
|
||||||
pass
|
print('WARN: unable to remove inbox queue file '+queueFilename)
|
||||||
self.server.inboxQueue.pop(0)
|
pass
|
||||||
timeDiff=str(int((time.time()-cleardownStartTime)*1000))
|
self.server.inboxQueue.pop(0)
|
||||||
print('Inbox cleardown took '+timeDiff+' mS. Removed '+str(removals)+' items.')
|
timeDiff=str(int((time.time()-cleardownStartTime)*1000))
|
||||||
|
print('Inbox cleardown took '+timeDiff+' mS. Removed '+str(removals)+' items.')
|
||||||
|
|
||||||
def _updateInboxQueue(self,nickname: str,messageJson: {}, \
|
def _updateInboxQueue(self,nickname: str,messageJson: {}, \
|
||||||
messageBytes: str) -> int:
|
messageBytes: str) -> int:
|
||||||
|
@ -5887,7 +5888,7 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
self.end_headers()
|
self.end_headers()
|
||||||
self.server.POSTbusy=False
|
self.server.POSTbusy=False
|
||||||
return
|
return
|
||||||
if queueStatus==1:
|
elif queueStatus==1:
|
||||||
self.send_response(503)
|
self.send_response(503)
|
||||||
self.end_headers()
|
self.end_headers()
|
||||||
self.server.POSTbusy=False
|
self.server.POSTbusy=False
|
||||||
|
|
Loading…
Reference in New Issue