Skip to content

Commit df50f7f

Browse files
feat: properly handle the object-like errors (#50)
1 parent 91bc567 commit df50f7f

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

reverse_engineering/helpers/connectionHelper.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,9 @@ const createConnection = async (connectionInfo, sshService, logger) => {
138138
execute: query => {
139139
return new Promise((resolve, reject) => {
140140
const queryArgument = createArgument('query', query);
141-
const queryResult = spawn(`"${javaPath}"`, [...teradataClientCommandArguments, queryArgument], {
141+
const javaArgs = [...teradataClientCommandArguments, queryArgument];
142+
143+
const queryResult = spawn(`"${javaPath}"`, javaArgs, {
142144
shell: true,
143145
});
144146

@@ -171,8 +173,14 @@ const createConnection = async (connectionInfo, sshService, logger) => {
171173
}
172174

173175
const parsedResult = JSON.parse(rowJson);
176+
174177
if (parsedResult.error) {
175-
reject(new Error(parsedResult.error));
178+
const parsedError =
179+
typeof parsedResult?.error === 'object'
180+
? JSON.stringify(parsedResult.error)
181+
: parsedResult.error;
182+
183+
reject(new Error(parsedError));
176184
return;
177185
}
178186

0 commit comments

Comments
 (0)