Hello everyone, I am trying to build a connectors....
# replication-troubleshooting
s
Hello everyone, I am trying to build a connectors. All the tests and commands run without issue until this point. To test is locally I ran this command and docker build . -t airbyte/source-impact:dev and tried to add on the UI side but getting an error :
Internal Server Error: Get Spec job failed.
Am I missing something here? Appreciate your help.
m
Are the
spec
commadn working for this connector?
s
Yes its working
(.venv) name@ip source-impact-connector % python main.py spec
{"type": "SPEC", "spec": {"documentationUrl": "<https://integrations.impact.com/impact-brand/reference/authentication>", "connectionSpecification": {"$schema": "<http://json-schema.org/draft-07/schema#>", "title": "Impact Source Spec", "type": "object", "required": ["username", "password"], "additionalProperties": true, "properties": {"username": {"type": "string", "description": "username", "airbyte_secret": true}, "password": {"type": "string", "description": "password", "airbyte_secret": true}}}}}
(.ve
Bumping this one to see if anyone has resolved this issue. I am also getting this error on docker log
INFO i.a.c.s.DefinitionsUpdater(updateDefinitions):54 - Connector definitions update disabled.
m
Try to change the documentationUrl to localhost or docsurl.com
Sometimes you’re using a page which cause problems
m
I found the below code block in DefinitionsUpdater.java
public DefinitionsUpdater(final ConfigRepository configRepository,
final DeploymentMode deploymentMode,
@Value("${airbyte.remote-connector-catalog-url}") final String remoteCatalogUrl,
@Value("${airbyte.cron.update-definitions.enabled}") final boolean shouldUpdateDefinitions) {
<http://log.info|log.info>("Creating connector definitions updater");
this.configRepository = configRepository;
this.deploymentMode = deploymentMode;
this.remoteCatalogUrl = remoteCatalogUrl != null ? URI.create(remoteCatalogUrl) : null;
this.shouldUpdateDefinitions = shouldUpdateDefinitions;
}
@Trace(operationName = SCHEDULED_TRACE_OPERATION_NAME)
@Scheduled(fixedRate = "30s",
initialDelay = "1m")
void updateDefinitions() {
if (!shouldUpdateDefinitions) {
<http://log.info|log.info>("Connector definitions update disabled.");
return;
}
I changed the env variable in the airbyte/cron but it didn't help
s
Yep and updating the docsurl didn't help either
a
hi ! I'm encountering the same issue. any chance you solved it already ?
m
I’m testing with my local setup and don’t see this error. @Alexandre Chouraki can you follow the API request in network tab? (see image attached)
a
I get something like this
m
Please click in Response tab, where is the response from the API
this error generally appears when you’re trying to use a image the Airbyte instance doesn’t have access to it
s
I have not been able solve it yet. And I am also getting the same error on console
a
Copy code
{
  "message": "Internal Server Error: Get Spec job failed.",
  "exceptionClassName": "java.lang.IllegalStateException",
  "exceptionStack": [
    "java.lang.IllegalStateException: Get Spec job failed.",
    "\tat com.google.common.base.Preconditions.checkState(Preconditions.java:502)",
    "\tat io.airbyte.server.converters.SpecFetcher.getSpecFromJob(SpecFetcher.java:14)",
    "\tat io.airbyte.server.handlers.SourceDefinitionsHandler.getSpecForImage(SourceDefinitionsHandler.java:323)",
    "\tat io.airbyte.server.handlers.SourceDefinitionsHandler.sourceDefinitionFromCreate(SourceDefinitionsHandler.java:221)",
    "\tat io.airbyte.server.handlers.SourceDefinitionsHandler.createCustomSourceDefinition(SourceDefinitionsHandler.java:208)",
    "\tat io.airbyte.server.apis.SourceDefinitionApiController.lambda$createCustomSourceDefinition$0(SourceDefinitionApiController.java:31)",
    "\tat io.airbyte.server.apis.ApiHelper.execute(ApiHelper.java:17)",
    "\tat io.airbyte.server.apis.SourceDefinitionApiController.createCustomSourceDefinition(SourceDefinitionApiController.java:31)",
    "\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)",
    "\tat java.base/java.lang.reflect.Method.invoke(Method.java:578)",
    "\tat org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)",
    "\tat org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)",
    "\tat org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)",
    "\tat org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:219)",
    "\tat org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)",
    "\tat org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:469)",
    "\tat org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:391)",
    "\tat org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:80)",
    "\tat org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:253)",
    "\tat org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)",
    "\tat org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)",
    "\tat org.glassfish.jersey.internal.Errors.process(Errors.java:292)",
    "\tat org.glassfish.jersey.internal.Errors.process(Errors.java:274)",
    "\tat org.glassfish.jersey.internal.Errors.process(Errors.java:244)",
    "\tat org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)",
    "\tat org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:232)",
    "\tat org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:680)",
    "\tat org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)",
    "\tat org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)",
    "\tat org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)",
    "\tat org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)",
    "\tat org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)",
    "\tat org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:763)",
    "\tat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:569)",
    "\tat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)",
    "\tat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1377)",
    "\tat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)",
    "\tat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:507)",
    "\tat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)",
    "\tat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1292)",
    "\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)",
    "\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)",
    "\tat org.eclipse.jetty.server.Server.handle(Server.java:501)",
    "\tat org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)",
    "\tat org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)",
    "\tat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)",
    "\tat org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:273)",
    "\tat org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)",
    "\tat org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)",
    "\tat org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)",
    "\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)",
    "\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)",
    "\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)",
    "\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)",
    "\tat org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)",
    "\tat org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)",
    "\tat org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)",
    "\tat java.base/java.lang.Thread.run(Thread.java:1589)"
  ]
}
Above is what I get in the response tab
m
Can you try to see if the instance you’re running Airbyte has the image? docker images | grep <YOUR_IMAGE_NAME>
a
it does
Capture d’écran 2022-12-01 à 17.38.56.png
m
Can you share the panel you’re trying to add this to the UI?
a
Capture d’écran 2022-12-01 à 17.40.03.png
this?
m
But your version locally is
latest
not
dev
a
oh you're right!
it works with latest
my bad, it was just a silly docker tag issue
thanks a lot!
👍 1
s
I am still getting the same error
m
Can do the same processs as Alexandre?
docker images | grep impact
s
(.venv) sapindahal@ip-192-168-1-131 source-impact-connector % docker images | grep impact
airbyte/source-impact-data     dev    c92ca733e081  About an hour ago  111MB
airbyte/source-impact       dev    c92ca733e081  About an hour ago  111MB
m
docker run --rm airbyte/source-impact:dev spec
what is the output of this command?
s
(.venv) sapindahal@ip-192-168-1-131 source-impact-connector % docker run --rm airbyte/source-impact:dev spec
{"type": "SPEC", "spec": {"documentationUrl": "<https://docsurl.com>", "connectionSpecification": {"$schema": "<http://json-schema.org/draft-07/schema#>", "title": "Impact Source Spec", "type": "object", "required": ["username", "password"], "additionalProperties": true, "properties": {"username": {"type": "string", "description": "username", "airbyte_secret": true}, "password": {"type": "string", "description": "password", "airbyte_secret": true}}}}}
m
This is the same server Airbyte is running?
docker ps
output
s
Yes
image.png
a
we're having the same issue as well (again) but this time with our prod instance 😕
(please note it's working with the exact same image locally)
u
Hello Sapin Dahal, it's been a while without an update from us. Are you still having problems or did you find a solution?
s
Hello Marcos, I haven't found a solution yet.
s
Hey @Alexandre Chouraki and @Sapin Dahal were you able to successfully add the connector to the Airbyte UI? How can I help here?