Ejecute lote de promesas en serie. Una vez que Promise.all esté listo, vaya al siguiente lote

Tengo una matriz que contiene una variedad de promesas, y cada matriz interna podría tener 4k, 2k o 500 promesas.

En total, hay alrededor de 60k promesas y también puedo probarlo con otros valores.

Ahora necesito ejecutar elPromise.all(BigArray[0]).

Una vez que se realiza la primera matriz interna, necesito ejecutar la siguientePromise.all(BigArray[1]) Y así sucesivamente y así sucesivamente.

Si trato de ejecutar unPromise.all(BigArray) está tirando:

fatal error call_and_retry_2 allocation failed - process out of memory

Necesito ejecutar cada una de las promesas en serie, no en paralelo, lo que creo que es lo que está haciendo Node. ¡No debería usar nuevas bibliotecas, sin embargo, estoy dispuesto a considerar la respuesta!

Editar:

Aquí hay un ejemplo de código:

function getInfoForEveryInnerArgument(InnerArray) {
    const CPTPromises = _.map(InnerArray, (argument) => getDBInfo(argument));
    return Promise.all(CPTPromises)
        .then((results) => {
            return doSomethingWithResults(results);
        });
}
function mainFunction() {
    BigArray = [[argument1, argument2, argument3, argument4], [argument5, argument6, argument7, argument8], ....];
    //the summ of all arguments is over 60k...
    const promiseArrayCombination = _.map(BigArray, (InnerArray, key) => getInfoForEveryInnerArgument(InnerArray));

    Promise.all(promiseArrayCombination).then((fullResults) => {
        console.log(fullResults);
        return fullResults;
    })
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta