aboutsummaryrefslogtreecommitdiffstats
path: root/queue2pgsql.py
blob: 0c95f6ddb358d8b3b81838092f6f279b72fae798 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env python3

import os
import time
import pickle
import sqlite3
from litequeue import SQLQueue
from datetime import datetime

from todb import todb

# Unlock all
con = sqlite3.connect("litequeue.db")
cur = con.cursor()
cur.execute("UPDATE Queue SET status = 0 WHERE status = 1")
con.commit()
con.close()

# Open Queue
q = SQLQueue("litequeue.db", maxsize=None) 
q.prune()

# Event loop
while True:
    if q.empty() == True:
        print("Queue empty. Sleeping 10s")
        time.sleep(10)
        continue
    task = q.pop()
    raw = pickle.loads(task['message'])
    todb(raw[0],raw[1])
    print("Processed " + str(task['message_id']) + ". " + str(q.qsize() - 1) + " left")
    q.done(task['message_id'])

print("END")