1
0
mirror of synced 2026-01-07 09:05:45 -05:00
Files
airbyte/airbyte-integrations/connectors/source-postgres
VitaliiMaltsev f5f4de2e5f JDBC sources: consolidate date/time values mapping (#20346)
* JDBC sources: consolidate date/time values mapping

* fixed Snowflake acceptance tests

* fixed TestJdbcUtils

* refactoring

* update setDate for incremental sync

* fixed CockroachDbJdbcSourceAcceptanceTest

* fixed CockroachDbSourceDatatypeTest

* fixed CockroachDbSourceDatatypeTest

* fixed MsSQLSourceDatatypeTest

* fixed MsSQL cdc datatype test

* refactoring

* fixed mssql cdc test

* fixed Redshift tests

* fixed Redshift tests

* updated db2 datatype tests

* fixed DB2 tests

* fixed DB2 strict-encrypt tests

* fixed Oracle strict-encrypt tests

* refactoring

* updated changelog

* refactoring

* removed redundant overrides

* bump versions

* auto-bump connector version

* resolved merge conflicts

* auto-bump connector version

* auto-bump connector version

* auto-bump connector version

* auto-bump connector version

* bump postgres version

* auto-bump connector version

* updated seed definitions

* revert generated definitions for Postgres

* auto-bump connector version

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
2023-01-18 19:21:11 +02:00
..
2020-11-03 10:56:36 -08:00
2022-12-29 12:32:42 -08:00

Postgres Source

Performance Test

To run performance tests in commandline:

./gradlew :airbyte-integrations:connectors:source-postgres:performanceTest [--cpulimit=cpulimit/<limit>] [--memorylimit=memorylimit/<limit>]

In pull request:

/test-performance connector=connectors/source-postgres [--cpulimit=cpulimit/<limit>] [--memorylimit=memorylimit/<limit>]
  • cpulimit: Limit the number of CPUs. The minimum is 2. E.g. --cpulimit=cpulimit/2.
  • memorylimit: Limit the size of the memory. Must include the unit at the end (e.g. MB, GB). The minimum size is 6MB. E.g. --memorylimit=memorylimit/4GB.
  • When none of the CPU or memory limit is provided, the performance tests will run without memory or CPU limitations. The available resource will be bound that those specified in ResourceRequirements.java.

Use Postgres script to populate the benchmark database

In order to create a database with a certain number of tables, and a certain number of records in each of them, you need to follow a few simple steps.

  1. Create a new database.
  2. Follow the TODOs in 3-run-script.sql to change the number of tables, and the number of records of different sizes.
  3. On the new database, run the following script:
    cd airbyte-integrations/connectors/source-postgres
    psql -h <host> -d <db-name> -U <username> -p <port> -a -q -f src/test-performance/sql/1-create-copy-tables-procedure.sql
    psql -h <host> -d <db-name> -U <username> -p <port> -a -q -f src/test-performance/sql/2-create-insert-rows-to-table-procedure.sql
    psql -h <host> -d <db-name> -U <username> -p <port> -a -q -f src/test-performance/sql/3-run-script.sql
    
  4. After the script finishes, you will receive the number of tables specified in the script, with names starting with test_0 and ending with test_(the number of tables minus 1).