|
@@ -92,15 +92,11 @@ async def multiple_database_queries_raw(request):
|
|
|
"""
|
|
|
num_queries = get_num_queries(request)
|
|
|
|
|
|
- ids = [randint(1, 10000) for _ in range(num_queries)]
|
|
|
+ ids = [(randint(1, 10000), ) for _ in range(num_queries)]
|
|
|
|
|
|
- result = []
|
|
|
async with request.app['pg'].acquire() as conn:
|
|
|
- for id_ in ids:
|
|
|
- result.append({
|
|
|
- 'id': id_,
|
|
|
- 'randomNumber': await conn.fetchval(READ_ROW_SQL, id_),
|
|
|
- })
|
|
|
+ rows = await conn.fetchmany(READ_ROW_SQL, ids)
|
|
|
+ result = [{'id': id_[0], 'randomNumber': row[0]} for id_, row in zip(ids, rows)]
|
|
|
return json_response(result)
|
|
|
|
|
|
|
|
@@ -155,13 +151,13 @@ async def updates_raw(request):
|
|
|
num_queries = get_num_queries(request)
|
|
|
update_ids = sample(range(1, 10001), num_queries)
|
|
|
update_ids.sort()
|
|
|
+ fetch_params = tuple((i, ) for i in update_ids)
|
|
|
updates = tuple(zip(update_ids, sample(range(1, 10001), num_queries)))
|
|
|
worlds = [{'id': row_id, 'randomNumber': number} for row_id, number in updates]
|
|
|
|
|
|
async with request.app['pg'].acquire() as conn:
|
|
|
- for id_, _ in updates:
|
|
|
- # the result of this is the int previous random number which we don't actually use
|
|
|
- await conn.fetchval(READ_ROW_SQL, id_)
|
|
|
+ # the result of this is the int previous random number which we don't actually use
|
|
|
+ await conn.executemany(READ_ROW_SQL, fetch_params)
|
|
|
await conn.executemany(WRITE_ROW_SQL, updates)
|
|
|
|
|
|
return json_response(worlds)
|