From ee5ea2df9f7a94edd9b78e27e223ba2b0b1efa49 Mon Sep 17 00:00:00 2001 From: Rhys Lloyd Date: Thu, 14 Aug 2025 18:21:46 -0700 Subject: [PATCH] validator: perform unnecessary allocation to appease borrow checker --- validation/src/release_submissions_batch.rs | 30 +++++++++++---------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/validation/src/release_submissions_batch.rs b/validation/src/release_submissions_batch.rs index 5eed427..8d77eef 100644 --- a/validation/src/release_submissions_batch.rs +++ b/validation/src/release_submissions_batch.rs @@ -80,21 +80,23 @@ async fn release_inner( let available_parallelism=std::thread::available_parallelism().map_err(InnerError::Io)?.get(); // set up futures + // unnecessary allocation :( + let asset_versions:Vec<_> =release_info + .Submissions + .iter() + .map(|submission|rbx_asset::cloud::GetAssetVersionRequest{ + asset_id:submission.ModelID, + version:submission.ModelVersion, + }) + .enumerate() + .collect(); + // fut_download - let fut_download=futures::stream::iter( - release_info - .Submissions - .iter() - .enumerate() - .map(|(index,submission)|async move{ - let asset_version=rbx_asset::cloud::GetAssetVersionRequest{ - asset_id:submission.ModelID, - version:submission.ModelVersion, - }; - let modes=download_fut(cloud_context,asset_version).await; - (index,modes) - }) - ) + let fut_download=futures::stream::iter(asset_versions) + .map(|(index,asset_version)|async move{ + let modes=download_fut(cloud_context,asset_version).await; + (index,modes) + }) .buffer_unordered(available_parallelism.min(MAX_PARALLEL_DECODE)) .collect::)>>();