Deleting a connection which is used by an integration leads to inconsistent state
See original GitHub issueThis is a…
[ ] Feature request
[ ] Regression (a behavior that used to work and stopped working in a new release)
[X] Bug report
[ ] Documentation issue or request
After an import of integration with a broken connection (because of missing OAuth dance, see #2522), deleting the connection is possible without warning (e.g. “is used in an existing integration”). After the deletion, the following error happens on the integration overview:
and in the server logs there’s a NPE:
2018-05-02 09:24:07.765 INFO [-,,,] 1 --- [oller Scheduler] i.s.s.c.i.IntegrationController : Checking integrations for their status.
2018-05-02 09:24:23.529 ERROR [-,bbc75ec8b624358d,bbc75ec8b624358d,false] 1 --- [ XNIO-3 task-8] .s.e.v.h.e.SyndesisServerExceptionMapper : Internal Server Exception. null
java.lang.NullPointerException: null
at io.syndesis.server.endpoint.v1.handler.integration.IntegrationHandler.toCurrentConnection(IntegrationHandler.java:352) ~[server-endpoint-1.3.5-20180502.jar!/:1.3.5-20180502]
at java.util.Optional.map(Optional.java:215) ~[na:1.8.0_151]
at io.syndesis.server.endpoint.v1.handler.integration.IntegrationHandler.toCurrentSteps(IntegrationHandler.java:371) ~[server-endpoint-1.3.5-20180502.jar!/:1.3.5-20180502]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[na:1.8.0_151]
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1380) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[na:1.8.0_151]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:1.8.0_151]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[na:1.8.0_151]
at io.syndesis.server.endpoint.v1.handler.integration.IntegrationHandler.toCurrentIntegrationOverview(IntegrationHandler.java:333) ~[server-endpoint-1.3.5-20180502.jar!/:1.3.5-20180502]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[na:1.8.0_151]
at java.util.Collections$2.tryAdvance(Collections.java:4717) ~[na:1.8.0_151]
at java.util.Collections$2.forEachRemaining(Collections.java:4725) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[na:1.8.0_151]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[na:1.8.0_151]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:1.8.0_151]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[na:1.8.0_151]
at io.syndesis.server.endpoint.v1.handler.integration.IntegrationHandler.list(IntegrationHandler.java:149) ~[server-endpoint-1.3.5-20180502.jar!/:1.3.5-20180502]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_151]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_151]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_151]
Issue Analytics
- State:
- Created 5 years ago
- Comments:13 (3 by maintainers)
Top Results From Across the Web
Get `Inconsistent state for stream ` when integrating Heroku ...
1 Answer 1 · open your integration settings · navigate to "Tables to replicate" · manually un-check and re-check each table to be...
Read more >1.1 - Deleting a Connection - Teradata Analytic Apps
If you delete a connection used in a workflow or data integration, be sure to update the workflow or data integration to use...
Read more >Errors and troubleshooting for Databricks Repos
The repo could be in an inconsistent state and re-cloning is recommended. This error indicates that a problem occurred while deleting folders ......
Read more >How to re-index existing indexes — Integration Matters ...
Index state let you know, whether there are indexes left of previous version in your Elasticsearch. B: REFRESH updates the current page to...
Read more >Transaction locking and row versioning guide - SQL Server
In any database, mismanagement of transactions often leads to contention and performance problems in systems that have many users. As the number of...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Due to the late moment, I’ve discussed this with @aileenc and we were thinking to entirely disable the ability to delete a connection if it’s identified as in use.
This affects the UX but it should be relatively easy to implement server side and client side.
Any major objection to this?