googleapis / googleapis/google-cloud-java

[java-bigquery] setPreserveAsciiControlChars flag not working,

Ouverte
#12,163 1 commentaire 0 réactions 1 personne assignée Réclamée par @Neenu1995 Voir sur GitHub
api: bigquery priority: p3
Langage dominant
Java
Étoiles
2.1k
Forks
1.2k
Merge moyen
1 j 23 h
PR mergées (30 j)
154

Description

Hi Team,

I tried to use CSVOption#setPreserveAsciiControlChars, when using the latest 2.34.0 version.

I have made the fixes for my use case, but request you to add fix in main code.
------------------------------------------

diff --git a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/LoadJobConfiguration.java b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/LoadJobConfiguration.java
index fefff340..1696b1fc 100644
--- a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/LoadJobConfiguration.java
+++ b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/LoadJobConfiguration.java
@@ -152,7 +152,8 @@ public final class LoadJobConfiguration extends JobConfiguration implements Load
|| loadConfigurationPb.getEncoding() != null
|| loadConfigurationPb.getFieldDelimiter() != null
|| loadConfigurationPb.getQuote() != null
- || loadConfigurationPb.getSkipLeadingRows() != null) {
+ || loadConfigurationPb.getSkipLeadingRows() != null
+ || loadConfigurationPb.getPreserveAsciiControlCharacters() != null) {
CsvOptions.Builder builder =
CsvOptions.newBuilder()
.setEncoding(loadConfigurationPb.getEncoding())
@@ -167,6 +168,9 @@ public final class LoadJobConfiguration extends JobConfiguration implements Load
if (loadConfigurationPb.getSkipLeadingRows() != null) {
builder.setSkipLeadingRows(loadConfigurationPb.getSkipLeadingRows());
}
+ if (loadConfigurationPb.getPreserveAsciiControlCharacters() != null) {
+ builder.setPreserveAsciiControlCharacters(loadConfigurationPb.getPreserveAsciiControlCharacters());
+ }
this.formatOptions = builder.build();
}
this.maxBadRecords = loadConfigurationPb.getMaxBadRecords();
@@ -653,7 +657,8 @@ public final class LoadJobConfiguration extends JobConfiguration implements Load
.setAllowJaggedRows(csvOptions.allowJaggedRows())
.setAllowQuotedNewlines(csvOptions.allowQuotedNewLines())
.setEncoding(csvOptions.getEncoding())
- .setQuote(csvOptions.getQuote());
+ .setQuote(csvOptions.getQuote())
+ .setPreserveAsciiControlCharacters(csvOptions.getPreserveAsciiControlCharacters());
if (csvOptions.getSkipLeadingRows() != null) {
// todo(mziccard) remove checked cast or comment when googleapis/java-bigquery#1044 is closed
loadConfigurationPb.setSkipLeadingRows(Ints.checkedCast(csvOptions.getSkipLeadingRows()));
diff --git a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/WriteChannelConfiguration.java b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/WriteChannelConfiguration.java
index 114c6dad..f270eadf 100644
--- a/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/WriteChannelConfiguration.java
+++ b/google-cloud-bigquery/src/main/java/com/google/cloud/bigquery/WriteChannelConfiguration.java
@@ -127,7 +127,8 @@ public final class WriteChannelConfiguration implements LoadConfiguration, Seria
|| loadConfigurationPb.getEncoding() != null
|| loadConfigurationPb.getFieldDelimiter() != null
|| loadConfigurationPb.getQuote() != null
- || loadConfigurationPb.getSkipLeadingRows() != null) {
+ || loadConfigurationPb.getSkipLeadingRows() != null
+ || loadConfigurationPb.getPreserveAsciiControlCharacters() != null) {
CsvOptions.Builder builder =
CsvOptions.newBuilder()
.setEncoding(loadConfigurationPb.getEncoding())
@@ -142,6 +143,9 @@ public final class WriteChannelConfiguration implements LoadConfiguration, Seria
if (loadConfigurationPb.getSkipLeadingRows() != null) {
builder.setSkipLeadingRows(loadConfigurationPb.getSkipLeadingRows());
}
+ if (loadConfigurationPb.getPreserveAsciiControlCharacters() != null) {
+ builder.setPreserveAsciiControlCharacters(loadConfigurationPb.getPreserveAsciiControlCharacters());
+ }
this.formatOptions = builder.build();
}
this.maxBadRecords = loadConfigurationPb.getMaxBadRecords();
~

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.