Repository navigation
not throwing config error - #36577
Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
| val rootThrowable = ConnectorExceptionUtil.getRootConfigError(Exception(throwable)) | ||
|
|
||
| if (ConnectorExceptionUtil.isConfigError(rootThrowable)) { | ||
| terminate() |
There was a problem hiding this comment.
will this exit 1 or exit 0?
There was a problem hiding this comment.
|
|
||
| val rootThrowable = ConnectorExceptionUtil.getRootConfigError(Exception(throwable)) | ||
|
|
||
| if (ConnectorExceptionUtil.isConfigError(rootThrowable)) { |
There was a problem hiding this comment.
Since destinations also use this handler. Is the expected behavior shared by them as well?
cc: Joe Bell (@jbfbell)
There was a problem hiding this comment.
This makes sense to me, so essentially if it's a config error, don't throw two errors?
There was a problem hiding this comment.
exactly - it will still exit 1, but we are not sending a system_error trace message anymore to platform if it's a config error.
Akash Kulkarni (akashkulk)
left a comment
There was a problem hiding this comment.
Makes sense.
Can you file a follow-up with the platform to determine whether config errors should be retried? I think its ok for now
|
/publish-java-cdk
|
|
/publish-java-cdk
|
https://github.com/airbytehq/oncall/issues/4710
When we throw an exception in the source connector, it will go to IntegrationRunner.kt, in which it will generate an error trace message, where error type is dependent on the type of the exception, and then rethrow it, which is then to be caught in
AirbyteExceptionHandler. In the handler it will then re-generate a trace message withsystem_error.Thus if a configException goes into a source connector, we currently will generate 1 config_error trace message and 1 system_error trace message.
The fix is to not throw
system_errorinAirbyteExceptionHandlerif the root cause of exception is config error.Tested on postgres, behavior change now is that we will start retrying those syncs, which is not ideal but it aligns with the description from https://docs.google.com/document/d/1ywZazxJ5DO41V1afaHY_0UfKuMHeiqRqn8wborwTSkY/edit I'm not sure why we were not retrying before?