refactor cli
This commit is contained in:
@@ -15,28 +15,28 @@ export async function extractRawResults(
|
||||
const bqrsInfo = await cliServer.bqrsInfo(filePath);
|
||||
const resultSets = bqrsInfo["result-sets"];
|
||||
|
||||
if (resultSets.length < 1) {
|
||||
if (resultSets.length === 0) {
|
||||
throw new Error("No result sets found in results file.");
|
||||
}
|
||||
if (resultSets.length > 1) {
|
||||
void logger.log(
|
||||
"Multiple result sets found in results file. Only one will be used.",
|
||||
"Multiple result sets found in results file. Using the first one.",
|
||||
);
|
||||
}
|
||||
|
||||
// Always prefer #select over any other result set. #select is usually the result the user
|
||||
// wants to see since it contains the outer #select.
|
||||
// Prefer `#select` result set; otherwise, use the first available set.
|
||||
const schema =
|
||||
resultSets.find((resultSet) => resultSet.name === SELECT_TABLE_NAME) ??
|
||||
resultSets[0];
|
||||
resultSets.find((r) => r.name === SELECT_TABLE_NAME) ?? resultSets[0];
|
||||
|
||||
const chunk = await cliServer.bqrsDecode(filePath, schema.name, {
|
||||
pageSize: MAX_RAW_RESULTS,
|
||||
});
|
||||
|
||||
const resultSet = bqrsToResultSet(schema, chunk);
|
||||
|
||||
const capped = !!chunk.next;
|
||||
|
||||
return { resultSet, fileLinkPrefix, sourceLocationPrefix, capped };
|
||||
return {
|
||||
resultSet,
|
||||
fileLinkPrefix,
|
||||
sourceLocationPrefix,
|
||||
capped: !!chunk.next,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user