Skip to content

Conversation

@shunping
Copy link
Contributor

@shunping shunping commented Mar 3, 2025

The current implementation of CSVToBigQuery template cannot handle commas in quotes. It joins the fields back into a string after the csv lines are parsed, and then it simply splits the string with the delimiter again without considering whether the delimiter is in the quotes or not.

The fix here gets rid of the join-and-split step, so fields directly come from CSV parser.

(Internal issue id: 395661793)

@shunping shunping force-pushed the fix-csv-bug branch 2 times, most recently from e204c2b to 936cb35 Compare March 3, 2025 19:03
@pull-request-size pull-request-size bot added size/M and removed size/S labels Mar 3, 2025
@codecov
Copy link

codecov bot commented Mar 3, 2025

Codecov Report

Attention: Patch coverage is 50.00000% with 3 lines in your changes missing coverage. Please review.

Project coverage is 47.49%. Comparing base (e0d274c) to head (34aaafe).
Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
...google/cloud/teleport/templates/CSVToBigQuery.java 0.00% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #2229      +/-   ##
============================================
+ Coverage     47.38%   47.49%   +0.10%     
+ Complexity     4429     4100     -329     
============================================
  Files           880      880              
  Lines         52576    52581       +5     
  Branches       5561     5568       +7     
============================================
+ Hits          24913    24971      +58     
+ Misses        25895    25836      -59     
- Partials       1768     1774       +6     
Components Coverage Δ
spanner-templates 69.41% <90.62%> (-0.01%) ⬇️
spanner-import-export 65.86% <ø> (ø)
spanner-live-forward-migration 77.62% <ø> (ø)
spanner-live-reverse-replication 79.67% <90.62%> (-0.05%) ⬇️
spanner-bulk-migration 88.42% <ø> (ø)
Files with missing lines Coverage Δ
...cloud/teleport/templates/common/CsvConverters.java 81.25% <100.00%> (+81.25%) ⬆️
...google/cloud/teleport/templates/CSVToBigQuery.java 0.00% <0.00%> (ø)

... and 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@shunping shunping self-assigned this Mar 3, 2025
@shunping shunping marked this pull request as ready for review March 4, 2025 01:00
@shunping shunping requested a review from Abacn March 4, 2025 01:01
@shunping shunping changed the title Attempt to fix csv bug where commas in fields are not handled correctly. Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. Mar 4, 2025
Copy link
Contributor

@Abacn Abacn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, would be great if a unit test can be setup to verify the fix

@pull-request-size pull-request-size bot added size/L and removed size/M labels Mar 5, 2025
@shunping shunping force-pushed the fix-csv-bug branch 8 times, most recently from 4911a80 to f671369 Compare March 5, 2025 04:02
@shunping
Copy link
Contributor Author

shunping commented Mar 5, 2025

Thanks, would be great if a unit test can be setup to verify the fix

Done.

@shunping
Copy link
Contributor Author

shunping commented Mar 5, 2025

PTAL @carl286 @Abacn

Copy link

@carl286 carl286 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks a lot making the fixes

@Abacn Abacn merged commit 1429656 into GoogleCloudPlatform:main Mar 5, 2025
14 checks passed
akashthawaitcc pushed a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Mar 17, 2025
…rectly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.
akashthawaitcc added a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Mar 17, 2025
* sync upstream/main (#98)

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (GoogleCloudPlatform#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (GoogleCloudPlatform#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (GoogleCloudPlatform#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (GoogleCloudPlatform#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (GoogleCloudPlatform#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (GoogleCloudPlatform#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (GoogleCloudPlatform#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (GoogleCloudPlatform#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (GoogleCloudPlatform#2243)

* Print error response on wget call (GoogleCloudPlatform#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (GoogleCloudPlatform#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (GoogleCloudPlatform#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (GoogleCloudPlatform#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (GoogleCloudPlatform#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Cassandra wide row it (#140)

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
akashthawaitcc added a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Mar 22, 2025
* sync upstream/main (#98)

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (GoogleCloudPlatform#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (GoogleCloudPlatform#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (GoogleCloudPlatform#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (GoogleCloudPlatform#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (GoogleCloudPlatform#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (GoogleCloudPlatform#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (GoogleCloudPlatform#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (GoogleCloudPlatform#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (GoogleCloudPlatform#2243)

* Print error response on wget call (GoogleCloudPlatform#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (GoogleCloudPlatform#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (GoogleCloudPlatform#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (GoogleCloudPlatform#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (GoogleCloudPlatform#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Added Missing Case

* Added IT for Delete

* Added For testing

* Added IT for Emty and Custom handling

* fixed cassandra schema

* Added And removed unwanted Table

* Added And removed unwanted

* Added Missing case and removed Delete case

* Spoltless fixes

* Handle Null in custom Transformation

* revert delete changes

* Handle Checkstyle fixes

* removed unwanted toSting

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
taherkl added a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Apr 2, 2025
* sync upstream/main (#98)

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (GoogleCloudPlatform#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (GoogleCloudPlatform#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (GoogleCloudPlatform#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (GoogleCloudPlatform#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (GoogleCloudPlatform#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (GoogleCloudPlatform#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (GoogleCloudPlatform#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (GoogleCloudPlatform#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (GoogleCloudPlatform#2243)

* Print error response on wget call (GoogleCloudPlatform#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (GoogleCloudPlatform#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (GoogleCloudPlatform#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (GoogleCloudPlatform#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (GoogleCloudPlatform#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Added Missing Case

* Added IT for Delete

* Added For testing

* Added IT for Emty and Custom handling

* fixed cassandra schema

* Added And removed unwanted Table

* Added And removed unwanted

* Added Missing case and removed Delete case

* Spoltless fixes

* Handle Null in custom Transformation

* revert delete changes

* Handle Checkstyle fixes

* removed unwanted toSting

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
taherkl added a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Apr 2, 2025
* sync upstream/main (#98)

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (GoogleCloudPlatform#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (GoogleCloudPlatform#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (GoogleCloudPlatform#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (GoogleCloudPlatform#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (GoogleCloudPlatform#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (GoogleCloudPlatform#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (GoogleCloudPlatform#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (GoogleCloudPlatform#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (GoogleCloudPlatform#2243)

* Print error response on wget call (GoogleCloudPlatform#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (GoogleCloudPlatform#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (GoogleCloudPlatform#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (GoogleCloudPlatform#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (GoogleCloudPlatform#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Added Missing Case

* Added IT for Delete

* Added For testing

* Added IT for Emty and Custom handling

* fixed cassandra schema

* Added And removed unwanted Table

* Added And removed unwanted

* Added Missing case and removed Delete case

* Spoltless fixes

* Handle Null in custom Transformation

* revert delete changes

* Handle Checkstyle fixes

* removed unwanted toSting

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
VardhanThigle added a commit that referenced this pull request Apr 3, 2025
* Acceptance Test Fixes

* sync upstream/main (#98)

* Enhanced Retry Logic (#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (#2212)

* Fix inf issues in Datastream reader (#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (#2194)

* Add load test for cross db txn (#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (#2221)

* [DatastreamToSpanner] Spanner Exception handling (#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (#2243)

* Print error response on wget call (#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (#2212)

* Fix inf issues in Datastream reader (#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (#2194)

* Add load test for cross db txn (#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (#2221)

* [DatastreamToSpanner] Spanner Exception handling (#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Added Missing Case

* Added IT for Delete

* Added For testing

* Added IT for Emty and Custom handling

* fixed cassandra schema

* Added And removed unwanted Table

* Added And removed unwanted

* Added Missing case and removed Delete case

* Spoltless fixes

* Handle Null in custom Transformation

* revert delete changes

* Handle Checkstyle fixes

* removed unwanted toSting

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>

* ADDED Missing Combination (#160)

* Adding missing col combination assert for empty (#161)

* ADDED Missing Combination

* Address the assert the same

* Schema Fixes

* Schema FIxes

* Added SCHEMA FIXES

* Schema Correction

* Added Fixes

* Added Schema Fixes

* Adding InsertOnly Mode for Bulk job (#2260)

* Adding Lgs

* Handle Null Explicit

* removed logs

* revert ignore change

* revert additional changes

* Added UT for Null and Empty Case (#171)

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
pawankashyapollion added a commit to ollionorg/DataflowTemplates-fork that referenced this pull request Apr 17, 2025
* sync upstream/main (#98)

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Remove Python version from `pom.xml` (GoogleCloudPlatform#2234)

* Update pom.xml

* Update pom.xml

* Add SkipRunnerV2Test category to JmsToPubsubIT and PubSubCdcToBigQueryIT (GoogleCloudPlatform#2235)

* Fix a bug in CSVToBigQuery where commas in fields are not handled correctly. (GoogleCloudPlatform#2229)

* Attempt to fix csv bug where commas in fields are not handled correctly.

* Replace ImmutableList with Iterable

* Add tests to cover the scenario of commas within quotes.

* Polish tests and add a test case to cover csv without headers.

* Update Dockerfile-template-yaml (GoogleCloudPlatform#2222)

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Update Dockerfile-template-yaml

* Adding All Datatypes IT for Cassandra Migration (GoogleCloudPlatform#2230)

* Add IF NOT EXISTS clause for spanner ddls used in ITs (GoogleCloudPlatform#2237)

* Enable DatastreamToSpannerIT with if not exists clause

* Update Datastream to Spanner IT spanner schemas with if not exists

* Update BULK IT spanner schemas with if not exists

* Update reverse replications ITs spanner schemas with if not exists

* Add space after if not exists

* Using set of random buckets for spanner ITs (GoogleCloudPlatform#2223)

* Using set of random buckets for spanner ITs

* reverse replication test

* checkstyle fix

* adding more buckets

* removed ignore for testing

* spotless fix

* fixing UT

* skip the flaky test again

* addressing comments

* spotless fix

* Add promote artifact method in release plugin (GoogleCloudPlatform#2227)

* Add promote artifact method

* address comments; also fixed stagingArtifactRegistry support us.gcr.io

* Consolidate method

* fixed default DLQ path (GoogleCloudPlatform#2241)

* Fix stagingArtifactRegistry support raw us.gcr.io artifact registry (GoogleCloudPlatform#2243)

* Print error response on wget call (GoogleCloudPlatform#2245)

* This helps debugging e.g. permission issues

* Moving local spanner io to a different namespace (GoogleCloudPlatform#2231)

* Removed LocalSpannerIO

* Moving all of SpannerIO into Teleport

* Copying tests also

* Updated tests and excluded SpannerIO changestream from coverage checks

* spotless apply

* Excluding coverage check

* Adding retry settings which were overwritten in LocalSpannerAccessor

* Changing deprecated retrysettings function calls

* Added warning and TODO comments to remove the local copy

* spotless

* Adding Cassandra Type Options to IT test (GoogleCloudPlatform#2242)

* Bump timeouts for tests involving FKs/interleaved dependenceis (GoogleCloudPlatform#2239)

* Bump timeouts for datastream to spanner test

* Update FK timeout for reverse template

* Bump timeouts for old reverse repl template

* Enable SpannerToSourceDbInterleaveMultiShardIT

* Revert loadtest timeout

* Load Tests - Cassandra Reverse Replication (GoogleCloudPlatform#2163)

* * Addition of Load Tests in SpannerToSourceDB For Cassandra (#89)

* Addition of Load Tests in SpannerToSourceDB For Cassandra

* Address Merge conflict

* Added LT Refectored (#92)

* Added POM Dependecies

* sync upstream/main (#98)

* RR LOAD TEST FIXES (#101)

* Resolved PR comments (#115)

* Added Module Dependency Fixes

* Added Copyrigh

* Added missing commit

* Enhanced Retry Logic (GoogleCloudPlatform#2196)

Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>

* Adding support for Cassandra map (GoogleCloudPlatform#2209)

* Adding test table for Map types

* Adding support for cassandra map

* changes (GoogleCloudPlatform#2212)

* Fix inf issues in Datastream reader (GoogleCloudPlatform#2213)

* add inf fix to ts

fixing bug on timestamp type

* Update FormatDatastreamRecordToJson.java

use equals not ==

* Upgrade Beam version to 2.63.0 (GoogleCloudPlatform#2206)

* Upgrade Beam version to 2.63.0

* add cache factory to local spanner io

* remove cache pass to ReadChangeStreamPartitionDoFn

* Add unimplemented/unused stubs to TestChangeStreamMutation

* Use java Instant instead of threeten Instant

* Fix low watermark setter call

* fix testchangestreammutation

* Recreate validation PR

* fix import order

* linux-env requirements files

* fix v1 pom

* SkipShade for Spanner common module (GoogleCloudPlatform#2194)

* Add load test for cross db txn (GoogleCloudPlatform#2199)

* Add load test for cross db txn

* Change test timeout to 2 days

* Revert spanner-pr.yml changes

* Report Lineage for CsvToBigQuery template (GoogleCloudPlatform#2205)

* Report Lineage for CsvToBigQuery template

* Reply beampr-32662 to CsvConverters

* Spanner Import/Export INTERLEAVE IN (GoogleCloudPlatform#2128)

* Changes to write read interleave type from information schema, and write/read the type to/from avro. No change to tests yet.

* Fix warnings, bug in InformationSchemaScanner, and bug in AvroSchemaToDdlConverter. Also properly default to IN PARENT when emitting ddl, in case the interleave type is not set (really only necessary for tests, since otherwise it will always be set.

* Set interleaveType in InfoSchemaScanner

* Style fixes, and only generate INTERLEAVE IN ddl for gsql.

* another style fix - remove unused import

* Make conditions more readable and add comments

* Tests

* Fix condition

* Add interleave in table to ExportPipelineIT

* Add SCRAM-SHA-512 authentication support to Kafka templates (GoogleCloudPlatform#2181)

Added SCRAM-SHA-512 authentication support to Kafka to Kafka, Kafka to GCS, and Kafka to BigQuery templates.

* Update the required Java version in the base doc, then regenerate docs (GoogleCloudPlatform#2218)

* Update java requirement

* Generate docs

* Post 2.63.0 fixes (GoogleCloudPlatform#2216)

* Uncomment kinesis

* bump protoc to 4 in v2

* bug-fix: Use jdbc connection properties for reverse migration (GoogleCloudPlatform#2198)

* changes

* Changes

* changes

* changes

* docs

* Support partitioned reads for DateTime column type in JDBC to BigQuery template (GoogleCloudPlatform#2084)

* Support partitioned reads for DateTime column type

* minor changes

* Support backward compatibility and timezone in lower/upper bounds

* removed test cases for bounds in unit tests as derby does not support timezone

* Fixed typo's in JdbcToBigQuery.java
Corrected testcases expected output

* Corrected unit test cases expected output. Removed DateTime integration test cases.

* Corrected a typo

* Added default value for partitionColumnType

* spotless apply

* Disabling flaky test to unblock dataflow release (GoogleCloudPlatform#2220)

* disabling flaky test to unblock dataflow release

* minor change

* Add logic to skip runnerV2 for the ITs (GoogleCloudPlatform#2219)

* skip runnerv2 tests in TemplateTestBase

* add logic to skip use_runner_v2 experiment in the launchTemplate

* Remove redundant property skipRunnerV2Test in pom and update logic in launchTemplate

* Fix format violations using mvn spotless:apply

* Add warning about caching with plugin (GoogleCloudPlatform#2221)

* [DatastreamToSpanner] Spanner Exception handling (GoogleCloudPlatform#2185)

* SpannerExceptionClassifier class and IT

* Unit tests and Integration tests

* Formatting changes

* Correcting UT

* Unit test for SpannerResourceManager

* Creating Spanner Migration Exception

* Formatting changes

* Correcting tests

* Addressing comments

* Correcting a UT

* Addressing comments

* Changing SpannerMigrationException to extend RuntimeException

* Added Cassandra Resource Manager Refectoring and removed Generics

* Added Keyspace Voilation fixes

* minor changes

* Create session for row check

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Akash Thawait <aakash@ollion.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>

* Cassandra wide row it (#140)

---------

Co-authored-by: taherkl <taher.lakdawala@ollion.com>
Co-authored-by: Taher Lakdawala <78196491+taherkl@users.noreply.github.com>
Co-authored-by: pawankashyapollion <v-pawan.kumar@ollion.com>
Co-authored-by: Vardhan Vinay Thigle <39047439+VardhanThigle@users.noreply.github.com>
Co-authored-by: Astha Mohta <35952883+asthamohta@users.noreply.github.com>
Co-authored-by: Dylan Hercher <dylanhercher@gmail.com>
Co-authored-by: Jack McCluskey <34928439+jrmccluskey@users.noreply.github.com>
Co-authored-by: Yi Hu <yathu@google.com>
Co-authored-by: Deep1998 <deepchowdhury1998@gmail.com>
Co-authored-by: jjfox15 <seanfox@google.com>
Co-authored-by: vgnanasekaran <venku123@gmail.com>
Co-authored-by: Danny McCormick <dannymccormick@google.com>
Co-authored-by: Sharan Teja M <sharantej957@gmail.com>
Co-authored-by: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com>
Co-authored-by: Rudra-Gujarathi <rudragujarathi@google.com>
Co-authored-by: Derrick Williams <derrickaw@google.com>
Co-authored-by: darshan-sj <darshan-sj@users.noreply.github.com>
Co-authored-by: Svetak Sundhar <svetaksundhar@google.com>
Co-authored-by: Shunping Huang <shunping@google.com>
Co-authored-by: Andrej Galad <dedo.cibula@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants