1
0
mirror of synced 2026-01-05 21:02:13 -05:00
Commit Graph

627 Commits

Author SHA1 Message Date
Benoit Moriceau
bbb59d8675 Bmoric/temporal cleaning cron (#16414)
* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* Add the injected temporal client to airbyte-cron

* Update cron to make it work

* Remove useless Bean factory

* PR comments

* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* Improve conditional bean check

* Match existing Optional functionality

* Add notEquals check

* Add missing env var to Helm chart

* Fix typo

* Mark LogConfigs as Singleton

* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* Improve conditional bean check

* Match existing Optional functionality

* Add notEquals check

* Add missing env var to Helm chart

* Fix typo

* Mark LogConfigs as Singleton

* Env vars for log/state storage type

* Remove use of Optional in bean declarations

* Fix typo in config property name

* Support Temporal Cloud namespace

* Change to @Value

* Use correct value for conditional check

* Upgrade Micronaut

* Fix merge conflict

* Formatting

* Add missing env var

* Use sync task queue environment variable

* Handle sync task queue as set

* format and force http

* Handle case where sync task queue is empty

* Add correct path to config property

* Remove unused import

* Remove conflict

* Remove unused parameter

* Formatting

* Use pattern for condition process factory beans

* Cleanup

* PR feedback

* Revert hack for testing

* Fix temporal restart by status (#16447)

* Update application.yml

* Re add worker dep

* Add missing env var

* PR comments

* Bmoric/move temporal client (#16778)

* tmp

* tmp

* View diff

* Move part of the temporal client

* tmp

* copy Temporal Utils test

* Uniq Temporal Utils

* Uniq Temporal Workflow Utils

* Move CancellationHandler

* Move commons-temporal to being shared between platform, connector and CLI

* Rm worker dependency from cron

* Fix build

* Update with right value for cron.

* Fix dep conflict

Co-authored-by: jdpgrailsdev <jpearlin1@gmail.com>
Co-authored-by: pmossman <parker@airbyte.io>
Co-authored-by: Jonathan Pearlin <jonathan@airbyte.io>
2022-09-26 15:14:35 -07:00
Davin Chia
517466eb66 Remove unused webbackend search code. (#17008)
* Remove unused webbackend search code.

* Remove unused request body.

* Remove unused request body.

* Remove failing test.

* Remove failing test.

* Remove failing test.

Co-authored-by: Parker Mossman <parker@airbyte.io>
2022-09-26 10:46:01 -07:00
Michael Siega
32a984123e convert the workspace update api to patch style (#16739)
* convert the workspace api to patch style

* check for empty email in workspace update
2022-09-26 11:29:51 +02:00
Davin Chia
4fe6a8bac2 Make listing all connections for workspace faster. (#17004)
Instead of always listing all the connections in the workspace and filtering deleted connections in memory, we want to do this in the database.
2022-09-23 12:20:07 -05:00
Octavia Squidington III
8dfb8b0c92 Bump Airbyte version from 0.40.8 to 0.40.9 (#17093)
Co-authored-by: terencecho <terencecho@users.noreply.github.com>
2022-09-23 09:46:09 -05:00
Cole Snodgrass
e662cf0d3a rm airbyte-scheduler; migrate existing client to airbyte-server (#17051)
* wip; move scheduler client to server package

* remove additional references to airbyte-scheduler

* removed more references to airbyte-scheduler
2022-09-22 10:25:52 -07:00
Octavia Squidington III
387b96a924 Bump Airbyte version from 0.40.7 to 0.40.8 (#17009)
Co-authored-by: gosusnp <gosusnp@users.noreply.github.com>
2022-09-21 15:57:29 -07:00
Davin Chia
03ae8bc4a4 Remove the webbackend list all route. (#17006)
Web backend routes are used by the Frontend.

This is not used today, and we don't imagine using it in the near future.
2022-09-21 16:21:09 -05:00
Davin Chia
19f4f5ebcb Better logging in the Orchestrator. (#16842)
Add logging statements so we can understand what in the orchestrator is not working.
2022-09-21 08:49:36 -05:00
Cole Snodgrass
c6519430da move job persistence code out of airbyte-scheduler (#16831)
* wip for moving scheduler-persistence to airbyte-persistence

* move main/resources

* move settings include to match existing includes

* fix incorrect import paths

* fix import order
2022-09-20 13:37:35 -07:00
Volodymyr Pochtar
a72cb7d1f8 feat: replace openjdk with amazoncorretto:17.0.4 on platform for security compliance (#16919) 2022-09-20 19:01:48 +03:00
Parker Mossman
1a0ea82c34 Change ConnectionUpdate to PATCH behavior (#16157)
* remove operationIds from WebBackendConnectionUpdate, just use operations

* refactor connection updates to patch-style update, where null fields remain unchanged

* better comment and arg name

* format

* make sure we are still 'dual-writing' to the old schedule column, even when the patch doesn't specify anything for it

* update acceptance test to update with new schedule syntax

* add catalog sorting to preserve stream order during patch, and more tests

* format

* add description, throw runtime exception for impossible branches, move streamReset to private helper

* PR suggestions

* add nested test classes and write a test for the catalog sorting method

* format

* add comment clarifying that the catalog sort is for UX, and isn't critical

* format

* format

* update acceptance tests to send proper catalog patches instead of whole new catalog

* format

* format

* simplify catalog patching - now, if a catalog is present on the request, replace the entire catalog with it.
Otherwise, if catalog on the request is null, leave the catalog unchanged

* format

* format

* Revert "update acceptance tests to send proper catalog patches instead of whole new catalog"

This reverts commit 71922648b4e070f46ff6c468813b7ab8dd9d6651.

* adjust description
2022-09-19 18:36:34 -05:00
Octavia Squidington III
607a7d68ff Bump Airbyte version from 0.40.6 to 0.40.7 (#16785)
Co-authored-by: benmoriceau <benmoriceau@users.noreply.github.com>
2022-09-16 11:36:44 -07:00
Parker Mossman
07c5f13d5a rewrite buildWebBackendConnectionRead to avoid fetching all jobs (#16811)
* rewrite buildWebBackendConnectionRead to avoid fetching all jobs

* format

* query for latest sync job in addition to latest running sync job

* fix query

* add test coverage for new methods

* simplify optional logic and add another test case
2022-09-16 11:16:11 -07:00
Jonathan Pearlin
9903415376 Always record tracking metrics (#16779)
* Always record tracking metrics

* PR feedback
2022-09-16 13:43:04 -04:00
Jonathan Pearlin
474642868c Convert airbyte-workers to Micronaut (#16434)
* WIP Convert airbyte-workers to Micronaut framework

* Rebase cleanup

* Fix broken tests

* Simplify code

* Support control vs data plane configuration

* make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests

* Formatting

* Pairing on Worker Micronaut (#16364)

* add RouteToSyncTaskQueue activity

* use new route activity in connection manager workflow

* format

* call router service for task queue

* Revert temporal proxy changes

* Formatting

* Fix default value

* register new route activity in test

* fix SyncWorkflowTest now that it isn't doing any routing

* Update dependencies

* More dependency updates

* Update dependencies

* Improve conditional bean check

* Match existing Optional functionality

* Add notEquals check

* Add missing env var to Helm chart

* Fix typo

* Mark LogConfigs as Singleton

* Env vars for log/state storage type

* Remove use of Optional in bean declarations

* Fix typo in config property name

* Support Temporal Cloud namespace

* Change to @Value

* Use correct value for conditional check

* Upgrade Micronaut

* Fix merge conflict

* Formatting

* Add missing env var

* Use sync task queue environment variable

* Handle sync task queue as set

* format and force http

* Handle case where sync task queue is empty

* Add correct path to config property

* Remove unused import

* Remove unused parameter

* Formatting

* Use pattern for condition process factory beans

* Cleanup

* PR feedback

* Revert hack for testing

Co-authored-by: pmossman <parker@airbyte.io>
2022-09-14 13:10:23 -04:00
Michael Siega
835ff309ea use new scheduling schema for new connection tracking to support cron strings (#16690) 2022-09-14 17:57:41 +02:00
Parker Mossman
1d29672122 add jobInfoLight API endpoint that excludes attempt information (#16682)
* add jobInfoLight API endpoint that excludes attempt information, which can be enormous as it includes all log lines

* update replication activity to call new light endpoint
2022-09-13 17:04:47 -07:00
Octavia Squidington III
83799372cf Bump Airbyte version from 0.40.5 to 0.40.6 (#16656)
Co-authored-by: benmoriceau <benmoriceau@users.noreply.github.com>
2022-09-13 11:56:33 -07:00
Jimmy Ma
123971acd3 Store protocol version from the seeds (#16609) 2022-09-12 17:20:38 -07:00
Lake Mossman
a15288ad0f Improve job list API with more fetching capabilities (#16415)
* start implementation of new persistence method

* add includingJobId and totalJobCount to job list request

* format

* update local openapi as well

* refactor queries into JOOQ and return empty list if target job cannot be found

* fix descriptions and undo changes from other branch

* switch including job to starting job

* fix job history handler tests

* rewrite jobs subqueries in jooq

* fix multiple config type querying

* remove unnecessary casts

* switch back to 'including' and return multiple of page size necessary to include job

* undo webapp changes

* fix test description

* format
2022-09-12 16:32:04 -07:00
Octavia Squidington III
d8285cb24f Bump Airbyte version from 0.40.4 to 0.40.5 (#16610)
Co-authored-by: alovew <alovew@users.noreply.github.com>
2022-09-12 14:29:38 -07:00
Michael Siega
88a3249a38 Fix missing schedule dual write and consume the new format for tracking metadata (#16590)
* make sure we dual write the old schedule format

* consume the new schedule format for the tracking metadata
2022-09-12 17:32:07 +02:00
Evan Tahler
834ac1a3bb Remove shared getDockerBuildTask to enable parallel docker builds (#16384)
Define logic in root build.gradle to create a task in each subproject if the subproject contains dockerImageName in the gradle.properties file.

Some caveats:
- We also define a copyGeneratedTar task that is applied to all subprojects with the dockerImageName property.
- This does not need to be used in each subproject. We leave it up to each subproject to define what task is depends on since some projects have more custom copy logic.
2022-09-09 18:40:35 -07:00
Jimmy Ma
9ad847bd8e Store protocol version from spec (#16416)
* Update protocol version from actor defs API operations

* Implement default airbyte protocol version support

* Add version parsing

* Add acceptance tests

* Fix Acceptance Tests

* format

* Make test package private
2022-09-08 18:21:28 -07:00
Anne
d856731029 Implement more Error Prone PMD rules (#15491)
* AvoidFieldNameMatchingTypeName rule
* AvoidInstanceofChecksInCatchClause
* compareObjectsWithEquals
* DoNotTerminateVM and ConstructorCallsOverridableMethod
* EmptyIfStmt and EmptyStatementNotInLoop
* ImplicitSwitchFallThrough, InvalidLogMessageFormat, and MoreThanOneLogger
2022-09-07 13:20:32 -07:00
Parker Mossman
790343e93f Remove US/Pacific-New because it doesn't work with micronaut and it isn't recognized by the US Government (#16385) 2022-09-06 20:03:24 -07:00
Charles
ce201bc412 deprecate import / export endpoints (#16175)
* deprecate import / export endpoints

* remove fe deps on import / export

* additional fe clean up
2022-09-06 09:34:18 -07:00
Octavia Squidington III
abc01d3c49 Bump Airbyte version from 0.40.3 to 0.40.4 (#16275)
Co-authored-by: timroes <timroes@users.noreply.github.com>
2022-09-02 20:17:00 +02:00
Parker Mossman
6a06c5b0ff Upgrade OpenAPI Generator to 6.1.0-SNAPSHOT (#16026) 2022-08-26 18:36:01 -07:00
Octavia Squidington III
9e17f97e24 Bump Airbyte version from 0.40.2 to 0.40.3 (#16028)
Co-authored-by: zzztimbo <zzztimbo@users.noreply.github.com>
2022-08-26 14:46:54 -07:00
Parker Mossman
614ebb615d Multi-Cloud MVP: Combined branch for testing and merge (#15997)
* add new Configs for multi-cloud

* add api endpoints for setting workflow attempt id and createOrUpdate state

* update activities to call APIs instead of persistence

* workerApp refactor to separately initialize control or data plane dependencies

* modify syncWorkflow to call new activity that decides which task queue for data plane tasks

* misc to get build working

* move StateConverter to worker, so that server and worker can both access without needing to introduce any new dependencies

* update configs - remove extranneous helpers, clarify naming and comments, removed COMBINED value

* forgot to actually remove COMBINED enum value, this removes it

* add WorkerApp todo for breaking API Client into a scoped client

* rename decideTaskQueueActivity var to routeToTaskQueueActivity

* pr comments

* naming fix

* refactor secretHydrator instantiation

* WorkerApp PR feedback: move API client logic to separate class, use updated configs, etc

* add a RouterService class that is injected into RouteToTaskQueueActivityImpl

* AttemptApi cleanup and added unit test coverage

* fix confusion between AttemptId and AttemptNumber in new AttemptApi

* remove unused getDataPlaneSecretsHydrator

* remove unused import

Co-authored-by: Xiaohan Song <xiaohan@airbyte.io>
2022-08-26 14:10:19 -07:00
Davin Chia
5b455320d8 Fix incorrect log paths. (#15948)
Log paths were missing a slash, causing certain cases on Cloud to drop logs. This PR fixes this.

Instead of concatenating strings, use the Path class to make sure slashes always exist.
2022-08-26 12:02:55 -07:00
Anne
f63d9f834e Return full catalog from update API endpoint (#15992)
* Return full catalog from update API endpoint
2022-08-26 11:11:58 -07:00
Michael Siega
dca92b0a52 add a test to keep available cron time zones in sync (#15929)
* add a test to keep available cron time zones in sync

* clarify test comment
2022-08-25 17:53:58 +02:00
George Claireaux
ea44a0c589 Report Normalization failures to Sentry (#15695)
* bulk

* simplification

* voila

* normalization version

* key prefix & pmd fix

* bits

* test fix

* handle more dbt error structures and DRY

* format

* better code comment

* enum for keys

* fix pmd

* I _love_ pmd
2022-08-25 11:44:03 +01:00
Xiaohan Song
883d0ee57b apply shutdown hook to airbyte server to allow graceful termination (#15934) 2022-08-24 15:33:19 -07:00
Octavia Squidington III
b7b18dfcc0 Bump Airbyte version from 0.40.1 to 0.40.2 (#15931)
Co-authored-by: lmossman <lmossman@users.noreply.github.com>
2022-08-24 11:02:50 -07:00
Lake Mossman
377a1499cf Move 'updateNew' logic into 'update', and remove 'updateNew' (#15863)
* save

* clean up more usages and remove withRefreshedCatalog

* make webapp use correct endpoint

* add back intercept

* fix acceptance test

* fix log

* remove 'new' from test name
2022-08-23 11:36:48 -07:00
Evan Tahler
381326f4d3 Bump Airbyte version from 0.40.0-alpha to 0.40.1 (#15857) 2022-08-22 14:34:17 -07:00
Evan Tahler
4774949ab0 Remove -alpha tags from Airbyte release versions (#15766)
* Remove alpha tags in autobump files

* remove more alpha tags
2022-08-22 11:06:49 -07:00
Anne
6b592368b7 Track state message counts during syncs (#15526)
* Track state message counts from source and destination connectors during syncs
- Add new field to SyncStats and update existing field
2022-08-11 12:38:37 -07:00
Michael Siega
294ee8f226 Expose cron scheduling in the Connections APIs (#15253)
* Expose cron scheduling in the Connections APIs

* Update airbyte-api/src/main/openapi/config.yaml

Co-authored-by: terencecho <terence@airbyte.io>

* Update airbyte-server/src/test/java/io/airbyte/server/helpers/ConnectionHelpers.java

Co-authored-by: terencecho <terence@airbyte.io>

* update octavia-cli tests for new schedule schema, and fix update API impl

* check for null schedule data before updating

* handle new schedule related fields in generate / apply / import

* update octavia-cli changelog

* ensure that legacy manual schedule flag is consistent with schedule_type

* update octavia cli test coverage for new schedule schema

* fix failing octavia cli integration tests

* fix file diff check

* Update octavia-cli/unit_tests/test_apply/test_resources.py

Co-authored-by: Augustin <augustin.lafanechere@gmail.com>

Co-authored-by: terencecho <terence@airbyte.io>
Co-authored-by: alafanechere <augustin.lafanechere@gmail.com>
2022-08-11 19:27:08 +02:00
Octavia Squidington III
c1a0cbc0d0 Bump Airbyte version from 0.39.42-alpha to 0.40.0-alpha (#15493)
Co-authored-by: benmoriceau <benmoriceau@users.noreply.github.com>
2022-08-10 10:20:12 +08:00
Anne
e9afa9bef3 Error Prone PMD rules (#15010)
* Implement ErrorProne PMD rules:
AssignmentInOperand
AvoidAccessibilityAlteration
AvoidBranchingStatementAsLastInLoop
AvoidCatchingNPE
AvoidCatchingThrowable
AvoidDuplicateLiterals rule
2022-08-09 15:30:48 -07:00
Octavia Squidington III
5031e72426 Bump Airbyte version from 0.39.41-alpha to 0.39.42-alpha (#15335)
Co-authored-by: xiaohansong <xiaohansong@users.noreply.github.com>
Co-authored-by: Xiaohan Song <xiaohan@airbyte.io>
2022-08-05 14:43:31 -07:00
Michael Siega
3b85a74723 Dual write old and new schedule schemas (#15039)
* dual write old and new schedule schemas

* validate that the old and new schedule types match
2022-08-03 18:37:21 +02:00
Pedro S. Lopez
f924359fad report synchronous check/spec/discover failures to JobErrorReporter (#14818)
* report failures for synchronous check/discover, refactor common logic

* allow null workspace, send spec errors

* add failure origin, format

* rm connector_type, fix failing tests

* add tests for other job types

* log instead of throw

* move swallow to common spot

* connector jobs use context instead of passing full config

* sync jobs use context instead of passing raw config

* fix failing test

* fix failing scheduler client test
2022-08-02 10:23:04 -04:00
Octavia Squidington III
3d5237cdaf Bump Airbyte version from 0.39.40-alpha to 0.39.41-alpha (#15085)
Co-authored-by: girarda <girarda@users.noreply.github.com>
2022-07-27 14:07:53 -07:00
Octavia Squidington III
d665188964 Bump Airbyte version from 0.39.39-alpha to 0.39.40-alpha (#15046)
Co-authored-by: davinchia <davinchia@users.noreply.github.com>
Co-authored-by: Davin Chia <davinchia@gmail.com>
2022-07-26 20:38:12 -07:00