diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2017-03-04 10:32:55 +0100 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2017-03-04 10:32:55 +0100 |
| commit | 75c4caa934676f4addf633008d20137b45c15c86 (patch) | |
| tree | bee177864faafb85d087a67cc92c54e9f71ff326 /joblib.py | |
| parent | 204bab3cd5a04a8d46d0255a02e4745d5ae8134e (diff) | |
| download | joblib-75c4caa934676f4addf633008d20137b45c15c86.tar.gz joblib-75c4caa934676f4addf633008d20137b45c15c86.zip | |
add status()
Diffstat (limited to 'joblib.py')
| -rw-r--r-- | joblib.py | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -28,11 +28,12 @@ class JobQueue(object): """) async def request(self, jobtype, payload, priority=0): - """Create a new job.""" + """Create a new job and return its id.""" async with self._pool.acquire() as con: - await con.execute(""" + return await con.fetchval(""" INSERT INTO jobs(type, payload, priority) VALUES($1, $2, $3) + RETURNING id """, jobtype, json.dumps(payload), priority) async def acquire(self, jobtype): @@ -62,6 +63,15 @@ class JobQueue(object): except asyncpg.exceptions.SerializationError: # job is being picked up by another worker, try again pass + + async def status(self, jobid): + """Return the status of a job.""" + async with self._pool.acquire() as con: + return await con.fetchval(""" + SELECT status + FROM jobs WHERE + id=$1 + """, jobid) async def finish(self, jobid): """Mark a job as completed.""" |
