function fillDataUpTo(iLength) {
		if (aData.length >= iLength) {
			return;
		}

		for (let i = aData.length; i < iLength; i++) {
			const oNewEntry = Object.assign({children: [{}]}, oDataTemplate);

			for (const sKey in oNewEntry) {
				if (sKey === "children") {
					continue;
				}
				oNewEntry[sKey] = oNewEntry[sKey] + "_" + i;
				oNewEntry.children[0][sKey] = oNewEntry[sKey] + "_child_0";
			}

			aData.push(oNewEntry);
		}
	}
Sets the row states and invalidates the table. The row states are applied in the order in which they are provided. The row states are
reset if no row states are provided.

@param {object[]} [aRowStates] The row states to set.
@returns {Promise} A promise that resolves after the rendering of the table is finished.