@@ -244,16 +244,14 @@ async function main() {
244244 process . exit ( 1 ) ;
245245 }
246246
247- // Fetch iteration-level data in parallel: params, primary-period-name, samples, primary-metric
247+ // Fetch iteration-level data sequentially to avoid overwhelming OpenSearch
248248 var iterBody = { iterations : benchIterations } ;
249249 var paramsResp , periodNamesResp , samplesResp , primaryMetricsResp ;
250250 try {
251- [ paramsResp , periodNamesResp , samplesResp , primaryMetricsResp ] = await Promise . all ( [
252- apiPost ( baseUrl , runPrefix + '/iterations/params' , iterBody ) ,
253- apiPost ( baseUrl , runPrefix + '/iterations/primary-period-name' , iterBody ) ,
254- apiPost ( baseUrl , runPrefix + '/iterations/samples' , iterBody ) ,
255- apiPost ( baseUrl , runPrefix + '/iterations/primary-metric' , iterBody )
256- ] ) ;
251+ paramsResp = await apiPost ( baseUrl , runPrefix + '/iterations/params' , iterBody ) ;
252+ periodNamesResp = await apiPost ( baseUrl , runPrefix + '/iterations/primary-period-name' , iterBody ) ;
253+ samplesResp = await apiPost ( baseUrl , runPrefix + '/iterations/samples' , iterBody ) ;
254+ primaryMetricsResp = await apiPost ( baseUrl , runPrefix + '/iterations/primary-metric' , iterBody ) ;
257255 } catch ( error ) {
258256 console . error ( 'Error fetching iteration data for run ' + runId + ': ' + error . message ) ;
259257 process . exit ( 1 ) ;
@@ -263,16 +261,14 @@ async function main() {
263261 var iterSampleIds = samplesResp . samples ;
264262 var iterPrimaryMetrics = primaryMetricsResp . primaryMetrics ;
265263
266- // Fetch sample-level data: statuses and primary period IDs
264+ // Fetch sample-level data sequentially
267265 var statusesResp , periodIdsResp ;
268266 try {
269- [ statusesResp , periodIdsResp ] = await Promise . all ( [
270- apiPost ( baseUrl , runPrefix + '/samples/statuses' , { sampleIds : iterSampleIds } ) ,
271- apiPost ( baseUrl , runPrefix + '/samples/primary-period-id' , {
272- sampleIds : iterSampleIds ,
273- periodNames : iterPrimaryPeriodNames
274- } )
275- ] ) ;
267+ statusesResp = await apiPost ( baseUrl , runPrefix + '/samples/statuses' , { sampleIds : iterSampleIds } ) ;
268+ periodIdsResp = await apiPost ( baseUrl , runPrefix + '/samples/primary-period-id' , {
269+ sampleIds : iterSampleIds ,
270+ periodNames : iterPrimaryPeriodNames
271+ } ) ;
276272 } catch ( error ) {
277273 console . error ( 'Error fetching sample data for run ' + runId + ': ' + error . message ) ;
278274 process . exit ( 1 ) ;
@@ -395,34 +391,23 @@ async function main() {
395391 // Fetch metric data in batches
396392 var batchedQuerySize = 10 ;
397393 var metricDataResults = new Array ( sets . length ) ;
398- for ( var batchStart = 0 ; batchStart < sets . length ; batchStart += batchedQuerySize ) {
399- var batchEnd = Math . min ( batchStart + batchedQuerySize , sets . length ) ;
400- var batchPromises = [ ] ;
401- for ( var b = batchStart ; b < batchEnd ; b ++ ) {
402- var s = sets [ b ] ;
403- batchPromises . push (
404- apiPost ( baseUrl , '/api/v1/metric-data' , {
405- run : s . run ,
406- period : s . period ,
407- source : s . source ,
408- type : s . type ,
409- begin : s . begin ,
410- end : s . end ,
411- resolution : s . resolution ,
412- breakout : s . breakout
413- } )
414- ) ;
415- }
416- var batchResults ;
394+ for ( var b = 0 ; b < sets . length ; b ++ ) {
395+ var s = sets [ b ] ;
417396 try {
418- batchResults = await Promise . all ( batchPromises ) ;
397+ metricDataResults [ b ] = await apiPost ( baseUrl , '/api/v1/metric-data' , {
398+ run : s . run ,
399+ period : s . period ,
400+ source : s . source ,
401+ type : s . type ,
402+ begin : s . begin ,
403+ end : s . end ,
404+ resolution : s . resolution ,
405+ breakout : s . breakout
406+ } ) ;
419407 } catch ( error ) {
420408 console . error ( 'Error fetching metric data for run ' + runId + ': ' + error . message ) ;
421409 process . exit ( 1 ) ;
422410 }
423- for ( var b = 0 ; b < batchResults . length ; b ++ ) {
424- metricDataResults [ batchStart + b ] = batchResults [ b ] ;
425- }
426411 }
427412
428413 // Output the results
0 commit comments