1
0
mirror of synced 2026-01-07 09:05:45 -05:00
Commit Graph

347 Commits

Author SHA1 Message Date
Serhii Chvaliuk
abf383f896 Update fields in source-connectors specifications: postgres (#9807)
Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2022-01-31 16:57:48 +02:00
LiRen Tu
a094142825 Format code (#9892) 2022-01-29 19:56:00 -08:00
LiRen Tu
e4661fb92a Remove regex check from Java source acceptance test (#9829)
* Move getRegexTests to python source acceptance test

* Remove unused imports

* Update test template
2022-01-26 17:51:37 -08:00
Andrii Leonets
4a290fa9ff [#9554 PR] Postgres/Mssql Source: Increase version (#9753)
* #9554 PR

* format

* incr version for Postgres

* Update docs/integrations/sources/postgres.md

Co-authored-by: Marcos Marx <marcosmarxm@users.noreply.github.com>

* test upd

* test upd

* incr ver for mssql as effected source

Co-authored-by: Marcos Marx <marcosmarxm@users.noreply.github.com>
2022-01-25 22:39:33 +02:00
andriikorotkov
208c14682d updated benchmarks databases and scripts (#9597) 2022-01-19 17:22:21 +02:00
Eugene
4534703589 🎉Source Postgres: Set up connection - add schema selection (#9360)
* [1435] Source Postgres: Set up connection - added schema selection
2022-01-13 16:24:38 +02:00
Eugene
d791972278 🐛Source-postgres: added materialized views processing (#9116)
* [9012] Source-postgres: added materialized views processing
2022-01-05 21:33:58 +02:00
Serhii Chvaliuk
844dd93122 Use multi-stage builds in dockerfiles to reduce java images (#9077)
* use multi-stage to reduce image size

Signed-off-by: Sergey Chvalyuk <grubberr@gmail.com>
2021-12-23 22:27:05 +02:00
LiRen Tu
9b75a76720 📑 Update source database performance test docs (#8980)
* Add missing pr number

* Update source database performance test docs

* Update doc

* Update script paths
2021-12-20 20:49:22 -08:00
LiRen Tu
ff4b83bb1f 🎉 Source Postgres: support all Postgres 14 types (#8726)
* Add skeleton to support all postgres types

* Consolidate type tests

* Fix corner cases

* Bump postgres version

* Add tests for time and timetz

* Format code

* Revert date to timestamp

* Update comment

* Fix unit tests

* 🐛 Jdbc sources: switch from "string" to "array" schema type for columns with JDBCType.ARRAY (#8749)

* support array for jdbc sources

* fixed PR comments, added test cases

* added more elements for test case

* Fix test case

* add array test case for JdbcSourceOperations

Co-authored-by: Liren Tu <tuliren.git@outlook.com>

* Revert changes to support special number values

Postgres source cannot handle these special values yet
See https://github.com/airbytehq/airbyte/issues/8902

* Revert infinity and nan assertion in unit tests

This reverts commit 3bee7d19ea.

* Update documentation

* Bump postgres source version in seed

Co-authored-by: Yurii Bidiuk <35812734+yurii-bidiuk@users.noreply.github.com>
2021-12-19 23:59:43 -08:00
andriikorotkov
0c99c5d7a5 🎉 Setting CPU and Memory limits for performance tests via github (#8807)
* updated ci performance test sh script

* updated ci performance test sh script

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* set all params to one arg

* run tests

* update ci creds

* update performance test yaml file

* update performance test yaml file

* update performance test yaml file

* update performance test yaml file

* update performance test sh file

* update performance test sh file

* update performance test sh file

* update performance test sh file

* update java to 17 version in yaml file for performance tests

* update java to 17 version in yaml file for performance tests

* update java to 17 version in yaml file for performance tests

* update java to 17 version in yaml file for performance tests

* update java to 17 version in yaml file for performance tests

* clean test logs

* remove test logs

* remove test logs

* remove test logs

* return performance test logs

* add readme by performance tests
2021-12-17 12:47:45 +02:00
Haoran Yu
8ac2c6f4a7 Change copy to add in dockerfiles to reduce container size (#8516)
Co-authored-by: Oleksandr Sheheda <alexandr-shegeda@users.noreply.github.com>
2021-12-16 23:52:59 -03:00
Marcos Marx
e45dc12bdc format files (#8756) 2021-12-13 16:13:48 -03:00
andriikorotkov
7591883e21 Added benchmarks scripts with small instruction (#8529)
* updated source-mongodb-v2 performance

* updated code style

* fixed remarks

* fixed remarks

* fixed remarks

* updated strict encrypt source mongodb version

* updated source mongodb work with empty collections

* updated source mongodb timestamp cursor

* updated mongodb source perfomance

* fix code style

* fix code style

* updated tests and documentation

* updated tests and documentation

* updated tests and documentation

* added vudangngoc changes

* updated code style

* updated code style

* added benchmarks scripts with small instruction

* fixed remarks

* updated ci performance test sh script
2021-12-12 10:30:26 -08:00
Eugene
70d2f46bcc Source MySQL\MsSql\Postgres: added RDS base performance tests (#8215)
* Added RDS base performance tests for source-postgres, source-mssql and source-mysql
* updated perfomance test with cpu and memory limit


Co-authored-by: andriikorotkov <andrii.h.korotkov@globallogic.com>
2021-12-12 19:29:11 +02:00
LiRen Tu
6843bc1d1f 🎉 Source MySQL: support all MySQL 8.0 types (#7970)
* Add jdbc compatible layer

* Support routine mysql types

* Format code

* Fix build

* Refactor abstract jdbc source and operation classes

* Update mysql source operations

* Test discover command for mysql

* Remove abstract jdbc compatible source layer

* Format code

* Update template

* Fix more types

* Bump version

* Log original field type

* Update comments

* Bump version in seed
2021-12-11 21:49:32 -08:00
oneshcheret
fcf7491fee 🐛 Validate incorrect handling '\n' symbols in ssh key (#8371)
* 🐛 Validate \n in ssh key

* bump versions for ssh key connectors

* update versions for ssh key connectors

* temporal fix for checking failed tests

* revert temp changes and destination oracle version

* bump versions in config for ssh key related connectors
2021-12-03 20:11:51 +02:00
Davin Chia
bc230ee5a4 Format and generate seed resources. (#8493) 2021-12-04 01:52:42 +08:00
Yurii Bidiuk
8726d39450 #7727 source postgres: add several types to integration tests (#7913) 2021-12-02 13:59:51 +02:00
Christophe Duong
b424c1a0e7 🐛 Fix incremental normalization with empty tables (#8394)
* Fix incremental with empty final tables

* upgrade docker images

* Regen SQL

* Bumpversion & format
2021-12-01 23:40:14 +01:00
LiRen Tu
aeb15cea8f 🐛 Source postgres: fix money type with amount > 1000 (#7995)
* Fix postgres money type > 1000

* Convert money to double

* Bump source postgres version

* Do not bump version in seed yet

* Check type ignoring case

* Test insertion with currency symbol

* Test parsing money string method

* Add test case with currency symbol and negative values

* Update version date

* Bump seed version
2021-11-28 23:46:43 -08:00
Alexander Tsukanov
6e47a8f990 🐛 Source Postgres: views are not listed during schema discovery (#8266)
* airbyte-8254 Source Postgres: views are not listed during schema discovery

* airbyte-8254 Source Postgres: views are not listed during schema discovery

* airbyte-8254 Source Postgres: views are not listed during schema discovery

* airbyte-8254 Remove GRANTEE and PRIVILEGE constants from AbstractJdbcSource.java

* airbyte-8254 Version bumped.

* airbyte-8254 Version bumped.

* airbyte-8254 Version bumped.
2021-11-26 18:22:20 +02:00
Marcos Marx
dcc72ba686 Source Jira: add options to stream (small fixes) (#8141)
* Add option to render fields in HTML format and fix sprint_issue ids

* Bump connector version

* run format

* run format

* run seed generaotr

* run format

Co-authored-by: Chris Wu <chris@faros.ai>
2021-11-19 17:42:55 -03:00
Alexander Tsukanov
dc04654456 🎉 Source PostgreSQL: Handle the case when DB user doesn't has privileges to select the table (#8010)
* airbyte-5172 Do not list tables we do not have access to in the connection settings

* airbyte-5172 Do not list tables we do not have access to in the connection settings

* airbyte-5172 Do not list tables we do not have access to in the connection settings

* airbyte-5172 Do not list tables we do not have access to in the connection settings

* airbyte-5172 Added docs, bump dockerfiles

* airbyte-5172 Fix PR comments.

* airbyte-5172 Fixed PR comments.

* airbyte-5172 bumped connector version.
2021-11-19 18:02:40 +02:00
oneshcheret
7cf31ea50c 🐛 Fix data type tests in CdcPostgresSourceDatatypeTest (#7339)
* Fix data type tests in CdcPostgresSourceComprehensiveTest

* update style format

* bump version for postgres source

* bump version for postgres source in json definition

* remove unnecessary comments from test and bump version for postgres strict encrypt source

* resolved potential conflicts with debezium utils in mssql converter implementation

* resolved potential conflicts with debezium utils in mssql converter implementation

* Update notes for money type in postgres.md

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* Update docs/integrations/sources/postgres.md

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* added test cases for converting data values for postgres cdc, remove time zone utc from test container

* remove redundant void message from test

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* update style format

* fix time zone in DebeziumConverterUtilsTest

* set utc time zone in DataTypeUtils

* set utc time zone for date format

* revert changes regarding timezone in date format, disable tests with number and duration

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-11-02 17:46:42 +02:00
Harsha Teja Kanna
3e7f95c25a 🎉 Support build on MacOS M1 (Apple Silicon) (#7104)
- See this doc for details: https://github.com/airbytehq/airbyte/blob/master/docs/contributing-to-airbyte/developing-locally.md
- Unit test does not work yet.
2021-10-19 11:20:21 -07:00
Charles
ba44f700b9 add final for params, local variables, and fields (#7084) 2021-10-15 16:41:04 -07:00
Charles
f30869001a Exposing SSL-only version of Postgres Source (#6362) 2021-09-27 16:46:39 -07:00
Michel Tricot
1773e41e47 Shorten our headers + adds contributors file (#6478) 2021-09-27 10:45:50 -07:00
VitaliiMaltsev
ec3951ba62 🎉 Integration Testing for SSH using a docker container | Postgres Source and Destination update integration tests using ssh bastion in docker container (#6312)
* ssh-test

* add authentification via ssh tunnel with bastion docker host and postgres testcontainer

* created SshBastion class in base-java module

* implement Postgres source basic ssh tunneling connection for integration tests

* implement Postgres source ssh tunneling connection and refactoring SshBastion

* generate keys inside a bastion container

* remove throwing Exception from startTestContainers method

* fix checkstyle

* add documentation and changelog for Posthres source and destination

* update documentation for ssh readme.md | update version fo Postgres source and destination to 0.3.12

* update version of Postgres source and destination to 0.3.12

* removed static variables, removed version bump, rename class to SshBastionContainer, removed ci credentials for ssh Postgres Source and Destination

Co-authored-by: vmaltsev <vitalii.maltsev@globallogic.com>
2021-09-24 20:00:06 +03:00
Subodh Kant Chaturvedi
7591324351 introduce jvm flag MaxRAMPercentage for java connectors (#6001)
* introduce jvm flag MaxRAMPercentage for java connectors

* temporary commit to test this out on GKE via kube acceptance test

* undo temp commit
2021-09-22 19:59:39 +05:30
Andrii Leonets
9dcced9517 Java sources: Rework JdbcUtils (#5786)
* move logic from static JdbcUtils to JdbcSourceOperations

* format

* Add methods for all types in order to have possibility rewrite them and use common type mapping.

* Make BigQuery in line impl with JDBC changes

* fix binary type

* add database creations methods with sourceOperations input

* Update airbyte-db/lib/src/main/java/io/airbyte/db/SourceOperations.java

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-09-08 17:13:41 +03:00
Charles
7bf531a967 SSH for Postgres Source (#5742) 2021-09-02 11:32:04 -07:00
Subodh Kant Chaturvedi
a53dd7eaf0 remove sleep logic when the queue is full from CDC (#5600)
* dont sleep when queue is full

* bump version
2021-08-30 17:45:53 +05:30
Sherif A. Nada
86bdb7e16f rename comprehensive test to typetest and add javadocs (#5675) 2021-08-26 16:53:41 -07:00
LiRen Tu
b9e1997d2f Split airbyte-db and move db dev commands to gradle (#5616)
# Summary

- A follow-up PR for #5543.
- This PR separates the `airbyte-db` project to two modules:
  - `lib` is the original `airbyte-db`.
  - `jooq` is for jOOQ code generation.
- This is necessary because the jOOQ generator requires a custom database implementation that can run Flyway migration. So the code generator logic needs to depend on the compilation of the original `airbyte-db` project.

# Commits
* Separate db to lib and jooq modules
* Update dependencies
* Add jobs db migrator test
* Fix compose build
* Add migration dev center
* Add schema dump task
* Update airbyte-db/lib/README.md
  * Co-authored-by: Davin Chia <davinchia@gmail.com>
* Update readme
* Remove bom dependency
* Update readme
* Use jooq code in db config persistence
* Remove AirbyteConfigsTable

Co-authored-by: Davin Chia <davinchia@gmail.com>
2021-08-26 10:44:09 -07:00
LiRen Tu
825c35843a Fix documentation links (#5544) 2021-08-19 20:01:05 -07:00
irynakruk
954d7ccbb2 🐛 Source Postgres: fix CDC OOM issue (#5304)
* Added functionality for pgoutput plugin

* Updated docs and tests

* refactoring

* bumped version;
fixed test

* updated description;

* bumped version;

Co-authored-by: Iryna Kruk <iryna.o.kruk@globallogic.com>
2021-08-19 14:49:57 +03:00
Subodh Kant Chaturvedi
da67afe6ea Convert debezium transaction timestamps data type (#5356)
* Add transactionTimestamp field

* Update CDC_timestamp type in integrations and tests

* no jsonschema timestamp type, use string

* Linting

* format

* fix compilation error

* fix compilation error

* fix test output

* upgrade version for mssql,mysql,postgres

* stupid mistake! forgot to upgrade docker file

Co-authored-by: danieldiamond <danieldiamond1@gmail.com>
2021-08-13 19:45:54 +05:30
Dmytro
7baefadbf9 Validate oneOf JSON Schema rules as part of connector Acceptance Test (#5242)
* 3962: Add oneOf schema rules validation for acceptance test

* Add spec acceptance test for mssql and postgres connectors


Co-authored-by: Dmytro Rezchykov <dmitry.rezchykov@zazmic.com>
2021-08-13 14:58:24 +03:00
Subodh Kant Chaturvedi
e2228359c4 fix postgres integration tests (#5370)
* fix postgres integration tests

* fix data type test
2021-08-13 02:37:18 +05:30
Subodh Kant Chaturvedi
cc7b376044 🎉 Source MSSQL: implementation for CDC (#4689)
* first few classes for mssql cdc

* wip

* mssql cdc working against unit tests

* increment version

* add cdc acceptance test

* tweaks

* add file

* working on comprehensive tests

* change isolation from snapshot to read_committed_snapshot

* finalised type tests

* Revert "change isolation from snapshot to read_committed_snapshot"

This reverts commit 20c6768071.

* small docstring fix

* remove unused imports

* stress test fixes

* minor formatting improvements

* mssql cdc docs

* finish off cdc docs

* format fix

* update connector version

* add to changelog

* fix for sql server agent offline failing cdc enable on tables

* final structure

* few more updates

* undo unwanted changes

* add abstract test + more refinement

* remove CDC metadata to debezium

* use new cdc abstraction for mysql

* undo wanted change

* use cdc abstraction for postgres

* add files

* pull in latest changes

* ready

* rename class + add missing property

* use renamed class + move constants to MySqlSource

* use renamed class + move constants to PostgresSource

* move debezium to bases + upgrade debezium version + review comments

* downgrade version + minor fixes

* bring in latest changes from cdc abstraction

* reset to minutes

* bring in the latest changes

* format

* fix build

* address review comments

* bring in latest changes

* bring in latest changes

* use common abstraction for CDC via debezium for sql server

* remove debezium from build

* finalise PR

* should return Optional

* pull in latest changes

* pull in latest changes

* address review comments

* use common abstraction for CDC via debezium for mysql (#4604)

* use new cdc abstraction for mysql

* undo wanted change

* pull in latest changes

* use renamed class + move constants to MySqlSource

* bring in latest changes from cdc abstraction

* format

* bring in latest changes

* pull in latest changes

* use common abstraction for CDC via debezium for postgres (#4607)

* use cdc abstraction for postgres

* add files

* ready

* use renamed class + move constants to PostgresSource

* bring in the latest changes

* bring in latest changes

* pull in latest changes

* lower version for tests to run on CI

* format

* Update docs/integrations/sources/mssql.md

Co-authored-by: Sherif A. Nada <snadalive@gmail.com>

* addressing review comments

* fix for testGetTargetPosition

* format changes

Co-authored-by: George Claireaux <george@claireaux.co.uk>
Co-authored-by: Sherif A. Nada <snadalive@gmail.com>
2021-07-14 17:15:55 +01:00
Subodh Kant Chaturvedi
9b1aa3cbaa throw exception if we close engine before snapshot is complete + increase timeout for subsequent records (#4730)
* throw exception if we close engine before snapshot is complete + increase timeout for subsequent records

* add comment + bump postgres version to use new changes
2021-07-14 01:19:38 +05:30
Subodh Kant Chaturvedi
5d2fc4a727 upgrade postgres version for new cdc abstraction (#4702) 2021-07-13 01:21:03 +05:30
Subodh Kant Chaturvedi
4863ea1a93 introduce common abstraction for CDC via debezium (#4580)
* wip

* add file

* final structure

* few more updates

* undo unwanted changes

* add abstract test + more refinement

* remove CDC metadata to debezium

* rename class + add missing property

* move debezium to bases + upgrade debezium version + review comments

* downgrade version + minor fixes

* reset to minutes

* fix build

* address review comments

* should return Optional

* use common abstraction for CDC via debezium for mysql (#4604)

* use new cdc abstraction for mysql

* undo wanted change

* pull in latest changes

* use renamed class + move constants to MySqlSource

* bring in latest changes from cdc abstraction

* format

* bring in latest changes

* pull in latest changes

* use common abstraction for CDC via debezium for postgres (#4607)

* use cdc abstraction for postgres

* add files

* ready

* use renamed class + move constants to PostgresSource

* bring in the latest changes

* bring in latest changes

* pull in latest changes
2021-07-12 22:39:38 +05:30
Rodrigo Menezes
17cf7bc314 🐛 Source PostgreSQL: Fixed PostgreSQL CDC numeric handling (#4568)
* 🐛 Source PostgreSQL: Fixed PostgreSQL CDC numeric handling

* Rm unnecessary tests for non-CDC

* Add more values to test in postgres cdc numeric

* Fix comment so it points to psql docs instead

* Oops, added to the wrong test file

* Add sourceType as well

* Fix precision on tests
2021-07-06 19:12:26 +01:00
Andrii Leonets
107f5b8d61 🎉 Abstract level for SQL relational database sources (#4123)
Abstract level for SQL relational database sources
2021-07-05 17:18:07 +03:00
etsybaev
3bbbfcc8cf 🎉 Source Postres: Added new comprehensive data type tests (#4074)
* [3795] Added Postres Source Comprehensive Tests
2021-06-16 23:10:09 +03:00
Charles
66e8eb9bbe Remove Tap / Target Nomenclature from Workers (#4149)
* StandardTapConfig => WorkerSourceConfig; StandardTargetConfig => WorkerDestinationConfig

* variable renames
2021-06-16 11:11:13 -07:00
Davin Chia
b04c080c95 Kube Queueing POC (#3464)
* Use CDK to generate source that can be configured to emit a certain number of records and always works.

* Checkpoint: socat works from inside the docker container.

* Override the entry point.

* Clean up and add ReadMe.

* Clean up socat.

* Checkpoint: connect to Kube cluster and list all the pods.

* Checkpoint: Sync worker pod is able to send output to the destination pod.

* Checkpoint: Sync worker creates Dest pod if none existed previously. It also waits for the pod to be ready before doing anything else. Sync worker will also remove the pod on termination.

* update readme

* Checkpoint: Dest pod does nott restart after finishing. Comment out delete command in Sync worker.

* working towards named pipes

* named pipes working

* update readme

* WIP named pipe / socat sidecar kube port forwarding (#3518)

* nearly working sources

* update

* stdin example

* move all kube testing yamls into the airbyte-workers directories. sort the airbyte-workers resource folder; place all the poc yamls together.

* Format.

* Put back the original KubeProcessBuilderFactory.

* Fix slight errors.

* Checkpoint: Worker pod knows its own IP. Successfully starts and writes to Dest pod after refactor.

* remove unused file and update readme

* Dest pod loops back into worker pod. However, the right messages do not seem to be passing in.

* Switch back to worker ip.

* SWEET VICTORY!.

* wrap kube pod in process (#3540)

also clean up kubernetes deploys.

* More clean up. (#3586)

The first 6 points of #3464.

The only interesting thing about this PR is the kube pod shutdown. For whatever reason, the OkHttpPool isn't respecting the evictAll call and 1 idle thread remains. So instead of shutting down immediately, the worker pod shuts down after 5 mins when the idle thread id reaped. There isn't an easy way to modify the pool's idle reap configuration now. I do not think this issue is blocking since it's relatively benign, so I vote we create a ticket and come back to this once we do an e2e test.

* Implements redirecting standard error as well. (#3623)

* Clean up before next implementation.

* kube process launching (#3790)

* processes must handle file mounting

* remove comment

* default to base entrypoint

* use process builder factory / select stdin / use a pool of ports

* fix up

* add super hacky copying example

* Checkpoint: Works end to end!

* Checkpoint: Use API to make sure init container is ready instead of blind sleep. Propagate exception in DefaultCheckConnectionWorker.

* Refactor KubePodProcess. Checked to make sure everything still works.

* Format.

* Clean up code. Begin putting this into variables and breaking up long constructor function.

* Add comments to explain what is happening.

* fix normalization test

* increase timeout for initcontainer

Co-authored-by: Davin Chia <davinchia@gmail.com>

* facepalm moment

* clean up kube poc pr (#3834)

* clean up

* remove source-always-works

* create separate commons-docker

* fix test

* enable kube e2e tests (#3866)

* enable kube e2e tests

* use more generally accepted env definition

* use new runners

* use its own runner and install minikube differently

* update name

* use kubectl alias

* use link instead of alias that doesn't propagate

* start minikube

* use driver=none

* go back to using action

* mess with versions

* revert runner

* install socat

* print logs after run

* also try re-runnining tasks

* always wait for file transfer

* use ports

* increase wait timeout for kube

* use different localhost ips and bump normalization to include an entrypoint

* proposed fix

* all working locally

* revert temporary changes

* revert normalization image change that's happening in a separate pr

* readability

* final comment

* Working Kube Cancel. (#3983)

* Port over the basic changes.

* Add logic to return proper exit code in the event of termination. Add comments to explain why.

* revert envs change and merge master to fix kube acceptance tests (#4012)

* use older env format

* fix build

Co-authored-by: jrhizor <me@jaredrhizor.com>
Co-authored-by: Jared Rhizor <jared@dataline.io>
2021-06-09 18:12:39 -07:00