From 4bacd88b511e0f12d06663fd1f50632a75047648 Mon Sep 17 00:00:00 2001 From: Przemyslaw Motacki Date: Tue, 4 Mar 2025 10:17:10 +0100 Subject: [PATCH] SNOW-1926267: Fix promise rejecting for file upload errors --- lib/connection/statement.js | 13 +++++++------ lib/file_transfer_agent/file_transfer_agent.js | 6 +++--- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/connection/statement.js b/lib/connection/statement.js index a160588da..a021722af 100644 --- a/lib/connection/statement.js +++ b/lib/connection/statement.js @@ -842,18 +842,19 @@ function FileStatementPreExec( async function executeFileTransferRequest(context, body, statement, fileTransferAgent) { context.fileMetadata = body; - const fta = typeof fileTransferAgent === 'undefined' ? new FileTransferAgent(context) : fileTransferAgent; - await fta.execute(); + const fta = fileTransferAgent ?? new FileTransferAgent(context); await fta.execute(); try { // build a result from the response const result = fta.result(); // init result and meta - body.data.rowset = result.rowset; - body.data.returned = body.data.rowset.length; - body.data.rowtype = result.rowtype; - body.data.parameters = []; + body.data = { + rowset: result.rowset, + returned: body.data.rowset.length, + rowtype: result.rowtype, + parameters: [], + }; context.result = new Result({ response: body, diff --git a/lib/file_transfer_agent/file_transfer_agent.js b/lib/file_transfer_agent/file_transfer_agent.js index c6a118716..f2a589880 100644 --- a/lib/file_transfer_agent/file_transfer_agent.js +++ b/lib/file_transfer_agent/file_transfer_agent.js @@ -216,7 +216,7 @@ function FileTransferAgent(context) { if (meta['resultStatus'] === 'ERROR') { errorDetails = meta['errorDetails']; if (!errorDetails) { - errorDetails = `Unknown error during PUT of file: ${meta['srcFilePath'].toString()}`; + errorDetails = `Unknown error during PUT of file: ${meta['srcFilePath']}`; } throw new Error(errorDetails); } @@ -234,8 +234,8 @@ function FileTransferAgent(context) { errorDetails = meta['errorDetails']; - srcFileSize = meta['srcFileSize'].toString(); - dstFileSize = meta['dstFileSize'].toString(); + srcFileSize = meta['srcFileSize']; + dstFileSize = meta['dstFileSize']; rowset.push([ meta['srcFileName'],