@@ -148,26 +148,31 @@ const slice = createSlice({
148148 } else if ( isStreamDataChunk ( chunk ) ) {
149149 const {
150150 result : { columns, rows} ,
151+ meta : { result_index : resultIndex } ,
151152 } = chunk ;
152153
153- if ( columns && ! state . result . data . resultSets ?. [ 0 ] ?. columns ?. length ) {
154- if ( state . result . data . resultSets ) {
155- state . result . data . resultSets [ 0 ] . columns = columns ;
154+ if ( columns && ! state . result . data . resultSets ?. [ resultIndex ] ?. columns ?. length ) {
155+ if ( ! state . result . data . resultSets ) {
156+ state . result . data . resultSets = [ ] ;
157+ }
158+
159+ if ( state . result . data . resultSets [ resultIndex ] ) {
160+ state . result . data . resultSets [ resultIndex ] . columns = columns ;
156161 } else {
157- state . result . data . resultSets = [ { columns, result : [ ] } ] ;
162+ state . result . data . resultSets [ resultIndex ] = { columns, result : [ ] } ;
158163 }
159164 }
160165 // Convert and append new rows
161- if ( rows . length > 0 && state . result . data . resultSets ?. [ 0 ] ?. columns ) {
166+ if ( rows . length > 0 && state . result . data . resultSets ?. [ resultIndex ] ?. columns ) {
162167 const formattedRows = parseResult (
163168 rows ,
164- state . result . data . resultSets [ 0 ] . columns ,
169+ state . result . data . resultSets [ resultIndex ] . columns ,
165170 ) ;
166171
167- if ( state . result . data . resultSets [ 0 ] . result ) {
168- state . result . data . resultSets [ 0 ] . result . push ( ...formattedRows ) ;
172+ if ( state . result . data . resultSets [ resultIndex ] . result ) {
173+ state . result . data . resultSets [ resultIndex ] . result . push ( ...formattedRows ) ;
169174 } else {
170- state . result . data . resultSets [ 0 ] . result = formattedRows ;
175+ state . result . data . resultSets [ resultIndex ] . result = formattedRows ;
171176 }
172177 }
173178 } else if ( isQueryResponseChunk ( chunk ) ) {
@@ -239,6 +244,9 @@ interface QueryStats {
239244 endTime ?: string | number ;
240245}
241246
247+ const DEFAULT_STREAM_CHUNK_SIZE = 2 ;
248+ const DEFAULT_CONCURRENT_RESULTS = 1 ;
249+
242250export const queryApi = api . injectEndpoints ( {
243251 endpoints : ( build ) => ( {
244252 useStreamQuery : build . mutation < null , SendQueryParams > ( {
@@ -273,7 +281,8 @@ export const queryApi = api.injectEndpoints({
273281 timeout : isNumeric ( querySettings . timeout )
274282 ? Number ( querySettings . timeout ) * 1000
275283 : undefined ,
276- output_chunk_max_size : 1000 ,
284+ output_chunk_max_size : DEFAULT_STREAM_CHUNK_SIZE ,
285+ concurrent_results : DEFAULT_CONCURRENT_RESULTS ,
277286 } ,
278287 {
279288 signal,
0 commit comments