This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/master by this push:
new 276cac76d9 Fixing Sonar Blockers
new ef6708dc45 Merge pull request #1621 from rohitvvv/master
276cac76d9 is described below
commit 276cac76d92b26dd62271547b0fcb40adca0621a
Author: Rohit Vaidya <[email protected]>
AuthorDate: Sat Aug 6 00:27:55 2022 -0700
Fixing Sonar Blockers
Adding try resource to sonar reported files.
---
.../actions/snowflake/WarehouseManagerDialog.java | 27 ++--
.../snowflake/bulkloader/SnowflakeBulkLoader.java | 158 +++++++++++----------
.../bulkloader/SnowflakeBulkLoaderDialog.java | 25 ++--
3 files changed, 111 insertions(+), 99 deletions(-)
diff --git
a/plugins/actions/snowflake/src/main/java/org/apache/hop/workflow/actions/snowflake/WarehouseManagerDialog.java
b/plugins/actions/snowflake/src/main/java/org/apache/hop/workflow/actions/snowflake/WarehouseManagerDialog.java
index b79f4d157b..1cfb2ea542 100644
---
a/plugins/actions/snowflake/src/main/java/org/apache/hop/workflow/actions/snowflake/WarehouseManagerDialog.java
+++
b/plugins/actions/snowflake/src/main/java/org/apache/hop/workflow/actions/snowflake/WarehouseManagerDialog.java
@@ -233,21 +233,22 @@ public class WarehouseManagerDialog extends ActionDialog
implements IActionDialo
try {
db = new Database(loggingObject, variables, databaseMeta);
db.connect();
- ResultSet resultSet =
- db.openQuery("show warehouses;", null, null,
ResultSet.FETCH_FORWARD, false);
- IRowMeta rowMeta = db.getReturnRowMeta();
- Object[] row = db.getRow(resultSet);
- int nameField = rowMeta.indexOfValue("NAME");
- if (nameField >= 0) {
- while (row != null) {
- String name = rowMeta.getString(row, nameField);
- wWarehouseName.add(name);
- row = db.getRow(resultSet);
+ try (ResultSet resultSet =
+ db.openQuery("show warehouses;", null, null,
ResultSet.FETCH_FORWARD, false)) {
+ IRowMeta rowMeta = db.getReturnRowMeta();
+ Object[] row = db.getRow(resultSet);
+ int nameField = rowMeta.indexOfValue("NAME");
+ if (nameField >= 0) {
+ while (row != null) {
+ String name = rowMeta.getString(row, nameField);
+ wWarehouseName.add(name);
+ row = db.getRow(resultSet);
+ }
+ } else {
+ throw new HopException("Unable to find warehouse name
field in result");
}
- } else {
- throw new HopException("Unable to find warehouse name field
in result");
+ db.closeQuery(resultSet);
}
- db.closeQuery(resultSet);
if (warehouseName != null) {
wWarehouseName.setText(warehouseName);
}
diff --git
a/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoader.java
b/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoader.java
index 2ca70dfee7..6ea1475a94 100644
---
a/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoader.java
+++
b/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoader.java
@@ -17,13 +17,26 @@
package org.apache.hop.pipeline.transforms.snowflake.bulkloader;
+import java.io.BufferedOutputStream;
+import java.io.OutputStream;
+import java.nio.charset.StandardCharsets;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.vfs2.FileObject;
import org.apache.hop.core.Const;
import org.apache.hop.core.compress.CompressionProviderFactory;
import org.apache.hop.core.compress.ICompressionProvider;
import org.apache.hop.core.database.Database;
-import org.apache.hop.core.exception.*;
+import org.apache.hop.core.exception.HopDatabaseException;
+import org.apache.hop.core.exception.HopException;
+import org.apache.hop.core.exception.HopFileException;
+import org.apache.hop.core.exception.HopTransformException;
+import org.apache.hop.core.exception.HopValueException;
import org.apache.hop.core.row.IRowMeta;
import org.apache.hop.core.row.IValueMeta;
import org.apache.hop.core.row.value.ValueMetaBigNumber;
@@ -37,14 +50,6 @@ import org.apache.hop.pipeline.PipelineMeta;
import org.apache.hop.pipeline.transform.BaseTransform;
import org.apache.hop.pipeline.transform.TransformMeta;
-import java.io.BufferedOutputStream;
-import java.io.OutputStream;
-import java.nio.charset.StandardCharsets;
-import java.sql.ResultSet;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
/** Bulk loads data to Snowflake */
@SuppressWarnings({"UnusedAssignment", "ConstantConditions"})
public class SnowflakeBulkLoader
@@ -185,27 +190,28 @@ public class SnowflakeBulkLoader
sql += resolve(meta.getTargetTable());
logDetailed("Executing SQL " + sql);
try {
- ResultSet resultSet = data.db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false);
+ try (ResultSet resultSet = data.db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false)) {
- IRowMeta rowMeta = data.db.getReturnRowMeta();
- int nameField = rowMeta.indexOfValue("NAME");
- int typeField = rowMeta.indexOfValue("TYPE");
- if (nameField < 0 || typeField < 0) {
- throw new HopException("Unable to get database fields");
- }
+ IRowMeta rowMeta = data.db.getReturnRowMeta();
+ int nameField = rowMeta.indexOfValue("NAME");
+ int typeField = rowMeta.indexOfValue("TYPE");
+ if (nameField < 0 || typeField < 0) {
+ throw new HopException("Unable to get database fields");
+ }
- Object[] row = data.db.getRow(resultSet);
- if (row == null) {
- throw new HopException("No fields found in table");
- }
- while (row != null) {
- String[] field = new String[2];
- field[0] = rowMeta.getString(row, nameField).toUpperCase();
- field[1] = rowMeta.getString(row, typeField);
- data.dbFields.add(field);
- row = data.db.getRow(resultSet);
+ Object[] row = data.db.getRow(resultSet);
+ if (row == null) {
+ throw new HopException("No fields found in table");
+ }
+ while (row != null) {
+ String[] field = new String[2];
+ field[0] = rowMeta.getString(row, nameField).toUpperCase();
+ field[1] = rowMeta.getString(row, typeField);
+ data.dbFields.add(field);
+ row = data.db.getRow(resultSet);
+ }
+ data.db.closeQuery(resultSet);
}
- data.db.closeQuery(resultSet);
} catch (Exception ex) {
throw new HopException("Error getting database fields", ex);
}
@@ -235,61 +241,65 @@ public class SnowflakeBulkLoader
+ ";";
logDebug("Executing SQL " + sql);
- ResultSet putResultSet = data.db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false);
- IRowMeta putRowMeta = data.db.getReturnRowMeta();
- Object[] putRow = data.db.getRow(putResultSet);
- logDebug("=========================Put File
Results======================");
- int fileNum = 0;
- while (putRow != null) {
- logDebug("------------------------ File " + fileNum +
"--------------------------");
- for (int i = 0; i < putRowMeta.getFieldNames().length; i++) {
- logDebug(putRowMeta.getFieldNames()[i] + " = " +
putRowMeta.getString(putRow, i));
- if (putRowMeta.getFieldNames()[i].equalsIgnoreCase("status")
- && putRowMeta.getString(putRow, i).equalsIgnoreCase("ERROR")) {
- throw new HopDatabaseException(
- "Error putting file to Snowflake stage \n"
- + putRowMeta.getString(putRow, "message", ""));
- }
- }
- fileNum++;
+ try (ResultSet putResultSet = data.db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false)) {
+ IRowMeta putRowMeta = data.db.getReturnRowMeta();
+ Object[] putRow = data.db.getRow(putResultSet);
+ logDebug("=========================Put File
Results======================");
+ int fileNum = 0;
+ while (putRow != null) {
+ logDebug("------------------------ File " + fileNum +
"--------------------------");
+ for (int i = 0; i < putRowMeta.getFieldNames().length; i++) {
+ logDebug(putRowMeta.getFieldNames()[i] + " = " +
putRowMeta.getString(putRow, i));
+ if (putRowMeta.getFieldNames()[i].equalsIgnoreCase("status")
+ && putRowMeta.getString(putRow, i).equalsIgnoreCase("ERROR")) {
+ throw new HopDatabaseException(
+ "Error putting file to Snowflake stage \n"
+ + putRowMeta.getString(putRow, "message", ""));
+ }
+ }
+ fileNum++;
- putRow = data.db.getRow(putResultSet);
+ putRow = data.db.getRow(putResultSet);
+ }
+ data.db.closeQuery(putResultSet);
+ } catch(SQLException exception) {
+ throw new HopDatabaseException(exception);
}
- data.db.closeQuery(putResultSet);
-
String copySQL = meta.getCopyStatement(this,
data.getPreviouslyOpenedFiles());
logDebug("Executing SQL " + copySQL);
- ResultSet resultSet = data.db.openQuery(copySQL, null, null,
ResultSet.FETCH_FORWARD, false);
- IRowMeta rowMeta = data.db.getReturnRowMeta();
-
- Object[] row = data.db.getRow(resultSet);
- int rowsLoaded = 0;
- int rowsLoadedField = rowMeta.indexOfValue("rows_loaded");
- int rowsError = 0;
- int errorField = rowMeta.indexOfValue("errors_seen");
- logBasic("====================== Bulk Load Results======================");
- int rowNum = 1;
- while (row != null) {
- logBasic("---------------------- Row " + rowNum + "
----------------------");
- for (int i = 0; i < rowMeta.getFieldNames().length; i++) {
- logBasic(rowMeta.getFieldNames()[i] + " = " + rowMeta.getString(row,
i));
- }
+ try (ResultSet resultSet = data.db.openQuery(copySQL, null, null,
ResultSet.FETCH_FORWARD, false)) {
+ IRowMeta rowMeta = data.db.getReturnRowMeta();
- if (rowsLoadedField >= 0) {
- rowsLoaded += rowMeta.getInteger(row, rowsLoadedField);
- }
+ Object[] row = data.db.getRow(resultSet);
+ int rowsLoaded = 0;
+ int rowsLoadedField = rowMeta.indexOfValue("rows_loaded");
+ int rowsError = 0;
+ int errorField = rowMeta.indexOfValue("errors_seen");
+ logBasic("====================== Bulk Load
Results======================");
+ int rowNum = 1;
+ while (row != null) {
+ logBasic("---------------------- Row " + rowNum + "
----------------------");
+ for (int i = 0; i < rowMeta.getFieldNames().length; i++) {
+ logBasic(rowMeta.getFieldNames()[i] + " = " + rowMeta.getString(row,
i));
+ }
- if (errorField >= 0) {
- rowsError += rowMeta.getInteger(row, errorField);
- }
+ if (rowsLoadedField >= 0) {
+ rowsLoaded += rowMeta.getInteger(row, rowsLoadedField);
+ }
- rowNum++;
- row = data.db.getRow(resultSet);
- }
- data.db.closeQuery(resultSet);
- setLinesOutput(rowsLoaded);
- setLinesRejected(rowsError);
+ if (errorField >= 0) {
+ rowsError += rowMeta.getInteger(row, errorField);
+ }
+ rowNum++;
+ row = data.db.getRow(resultSet);
+ }
+ data.db.closeQuery(resultSet);
+ setLinesOutput(rowsLoaded);
+ setLinesRejected(rowsError);
+ } catch(SQLException exception) {
+ throw new HopDatabaseException(exception);
+ }
data.db.execStatement("commit");
}
diff --git
a/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoaderDialog.java
b/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoaderDialog.java
index 1f1fab6e85..1518b78e0e 100644
---
a/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoaderDialog.java
+++
b/plugins/transforms/snowflake/src/main/java/org/apache/hop/pipeline/transforms/snowflake/bulkloader/SnowflakeBulkLoaderDialog.java
@@ -469,20 +469,21 @@ public class SnowflakeBulkLoaderDialog extends
BaseTransformDialog implements IT
sql += " in " + variables.resolve(wSchema.getText());
}
- ResultSet resultSet = db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false);
- IRowMeta rowMeta = db.getReturnRowMeta();
- Object[] row = db.getRow(resultSet);
- int nameField = rowMeta.indexOfValue("NAME");
- if (nameField >= 0) {
- while (row != null) {
- String stageName = rowMeta.getString(row, nameField);
- wStageName.add(stageName);
- row = db.getRow(resultSet);
+ try (ResultSet resultSet = db.openQuery(sql, null, null,
ResultSet.FETCH_FORWARD, false)) {
+ IRowMeta rowMeta = db.getReturnRowMeta();
+ Object[] row = db.getRow(resultSet);
+ int nameField = rowMeta.indexOfValue("NAME");
+ if (nameField >= 0) {
+ while (row != null) {
+ String stageName = rowMeta.getString(row, nameField);
+ wStageName.add(stageName);
+ row = db.getRow(resultSet);
+ }
+ } else {
+ throw new HopException("Unable to find stage name field in
result");
}
- } else {
- throw new HopException("Unable to find stage name field in
result");
+ db.closeQuery(resultSet);
}
- db.closeQuery(resultSet);
if (stageNameText != null) {
wStageName.setText(stageNameText);
}