@@ -175,7 +175,7 @@ impl PgConnection {
175175 for _ in 0 ..num {
176176 let id = ( self . rang . clone ( ) . generate :: < u32 > ( ) % 10_000 ) as i32 ;
177177 let row = self . cl . query_one ( & self . world , & [ & id] ) . await . unwrap ( ) ;
178- worlds. push ( World {
178+ worlds. push ( World {
179179 id : row. get ( 0 ) ,
180180 randomnumber : row. get ( 1 ) ,
181181 } ) ;
@@ -217,7 +217,7 @@ impl PgConnection {
217217 id : ids[ index] ,
218218 randomnumber : s_id
219219 } ) ;
220- numbers. push ( s_id) ;
220+ numbers. push ( s_id) ;
221221 }
222222 buffers. body . clear ( ) ;
223223 for index in 0 ..num {
@@ -262,24 +262,22 @@ impl PgConnection {
262262
263263
264264 pub fn get_cached_queries ( & self , num : usize ) ->& [ u8 ] {
265- let buf = self . buffers ( ) ;
266- let buf = & mut buf. body ;
267- buf. clear ( ) ;
268- buf. extend_from_slice ( br#"["# ) ;
269- let mut writer = BytesMuteWriter ( buf) ;
265+ let buffers = self . buffers ( ) ;
266+ let mut worlds = Vec :: < World > :: with_capacity ( num) ;
270267 for _ in 0 ..num {
271268 let rd = ( self . rang . clone ( ) . generate :: < u32 > ( ) % 10_000 ) as i32 ;
272269 let v = match self . get_world_id_for_cache ( rd) {
273270 None => { continue }
274271 Some ( e) =>{ e}
275272 } ;
276- writer. extend_from_slice ( br"{" ) ;
277- _ = write ! ( writer, r#""id":{},"randomnumber":{}"# , rd, v) ;
278- writer. extend_from_slice ( br"}," ) ;
273+ worlds. push ( World {
274+ id : rd,
275+ randomnumber : * v
276+ } )
279277 }
280- if buf . len ( ) > 1 { buf . truncate ( buf . len ( ) - 1 ) ; }
281- buf . extend_from_slice ( b"]" ) ;
282- return & buf [ ..]
278+ buffers . body . clear ( ) ;
279+ sonic_rs :: to_writer ( BytesMuteWriter ( & mut buffers . body ) , & worlds ) . unwrap ( ) ;
280+ return & buffers . body [ ..]
283281 }
284282
285283 fn get_world_id_for_cache ( & self , id : i32 ) -> Option < & i32 > {
0 commit comments