@@ -92,15 +92,11 @@ async def multiple_database_queries_raw(request):
9292 """
9393 num_queries = get_num_queries (request )
9494
95- ids = [randint (1 , 10000 ) for _ in range (num_queries )]
95+ ids = [( randint (1 , 10000 ), ) for _ in range (num_queries )]
9696
97- result = []
9897 async with request .app ['pg' ].acquire () as conn :
99- for id_ in ids :
100- result .append ({
101- 'id' : id_ ,
102- 'randomNumber' : await conn .fetchval (READ_ROW_SQL , id_ ),
103- })
98+ rows = await conn .fetchmany (READ_ROW_SQL , ids )
99+ result = [{'id' : id_ [0 ], 'randomNumber' : row [0 ]} for id_ , row in zip (ids , rows )]
104100 return json_response (result )
105101
106102
@@ -155,13 +151,13 @@ async def updates_raw(request):
155151 num_queries = get_num_queries (request )
156152 update_ids = sample (range (1 , 10001 ), num_queries )
157153 update_ids .sort ()
154+ fetch_params = tuple ((i , ) for i in update_ids )
158155 updates = tuple (zip (update_ids , sample (range (1 , 10001 ), num_queries )))
159156 worlds = [{'id' : row_id , 'randomNumber' : number } for row_id , number in updates ]
160157
161158 async with request .app ['pg' ].acquire () as conn :
162- for id_ , _ in updates :
163- # the result of this is the int previous random number which we don't actually use
164- await conn .fetchval (READ_ROW_SQL , id_ )
159+ # the result of this is the int previous random number which we don't actually use
160+ await conn .executemany (READ_ROW_SQL , fetch_params )
165161 await conn .executemany (WRITE_ROW_SQL , updates )
166162
167163 return json_response (worlds )
0 commit comments