No deployed process definition found with id

Hi Camundos!

I have a problem with Optimize, which is returning the following error:

18:03:30.645 [ThreadPoolTaskScheduler-1] ERROR o.c.o.s.i.e.f.i.ProcessDefinitionXmlFetcher - Error during fetching of entities. Please check the connection with [camunda-bpm]!
javax.ws.rs.ProcessingException: java.net.ConnectException: Connection refused (Connection refused)

In Camunda the error looks like this:

Exception while closing command context: no deployed process definition found with id ‘ce2253cd-81d7-11eb-ab33-92a92f8da9bb’: processDefinition is null

Probably because I removed a Camunda process deployment. I would like to know how to make Optimize forget the processDefinition ce2253cd-81d7-11eb-ab33-92a92f8da9bb.

I’m working on localhost with camunda-optimize-3.3.0-demo and camunda-bpm-ee-tomcat-7.14.4-ee.

Thanks!

Hi @rodrigo.carlstrom!

From the exception log it sounds more to me like Optimize cannot connect to your engine properly when trying to fetch definition information (Please check the connection with [camunda-bpm]! javax.ws.rs.ProcessingException: java.net.ConnectException: Connection refused (Connection refused)).

Could you double check that your camunda-bpm engine is up and running and that the connection from Optimize to the engine is configured correctly? It would also be helpful if you could post the complete Optimize log, maybe there is more information in there that could help us determine what the issue is.

As for the deletion of the process: Usually, deleting definitions should not cause any issues with Optimize, here is some more background info on how Optimize handles data deletion if you are interested.

Hello Helene, thanks for the information!

Sorry, I copied the wrong log (after shutting down Camunda). I’m putting the complete Optimize log for you to see.

optimize.log (2.1 MB)

I will read the documentation you sent me.

Hi again @rodrigo.carlstrom!

Thanks for posting the log - that makes more sense now, I think you are correct:
It looks to me as if Optimize has already imported the definition (without XML), then the definition was deleted, and now Optimize is attempting to fetch the XML of the definition that no longer exists, which is why the engine returns a 400.
However, usually Optimize should not retry to fetch this XML, so let’s see if we can figure out why this retry is happening - I will look into this further tomorrow and get back to you then.
In the meantime, could you confirm that it is indeed just one definition that has been deleted and not multiple?

I deleted several. In fact, I removed all of them, to start a PoC I’m working on from scratch. But it seems that Optimize complains about only one. Cleaning was last week.

Approving, I read documentation on cleaning, and to force cleaning I configured the following:

historyCleanup:
cronTrigger: ‘*/1 * * * *’
ttl: ‘P2D’
processDataCleanup:
enabled: true
cleanupMode: ‘all’
processDataCleanupMode:
perProcessDefinitionConfig:
decisionDataCleanup:
enabled: true
perDecisionDefinitionConfig:
ingestedEventCleanup:
enabled: true

But the problem still remains.

Hi again!

In that case if you are wanting to start completely from scratch, you could consider doing a complete reimport of all engine data.
This would be easier than manually deleting a specific definition (which would require you to also find and remove other associated data, eg reports/instance data for this definition), but please note that this will remove all data that has already been imported from the engine (including the data that has since been removed from the engine) before reimporting everything currently present in the engine, so make sure you really don’t need any of this removed engine data before starting the reimport.
Let me know if that works for you!

Very cool!

That solved my case!

Thank you very much Helene!