Netflix/conductor

docker-compose up server failed to execute workflow because of "XContentType" class is not found

dingliu1 opened this issue · 13 comments

Describe the bug
docker-compose up server failed to execute workflow because of "XContentType" class is not found.

Details
Conductor version: v3.15.0 or the latest
Persistence implementation: Cassandra, Postgres, MySQL, Dynomite etc: Postgres
Queue implementation: Postgres, MySQL, Dynoqueues etc
Lock: Redis or Zookeeper?
Workflow definition:
Task definition:
Event handler definition:

To Reproduce
Steps to reproduce the behavior:

  1. Go to conductor-3.15.0\docker or the latest version\docker
  2. Execute below command
    docker-compose -f docker-compose-postgres.yaml build
    docker-compose -f docker-compose-postgres.yaml up
  3. Create some sample workflow definition and execute
    "Definition" -> "New Workflow Definition" -> set sample "uri" e.g.
    uri": "https://datausa.io/api/data?drilldowns=Nation&measures=Population",drilldowns=Nation&measures=Population",
    Save the definition -> Go to "Workbench" -> choose just created workflow name -> click execute
    Now the conductor server logs report:
    "org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/elasticsearch/common/xcontent/XContentType"
  4. The root cause seems that:
    The Dockerfile packaged "conductor-server.jar\BOOT-INF\lib" I can see elasticsearch-x-content-7.17.13.jar, the "XContentType" class is re-packaged.
    https://stackoverflow.com/questions/72428790/xcontenttype-is-removed-from-elasticsearch-ver-7-17-3

Expected behavior
docker-compose inside docker/server folder should work at any time

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

Can confirm we're facing the exact same issue.

Same issue

Strangely the same issue has surfaced on our side too

Me too. Is there any workaround?

Me too. Is there any workaround?

Seems to be due to some changes in the conductor-community repo. A temporary work-around could be to use an older commit of the conductor community repo in the docker/server/Dockerfile.

same here !

any update regarding this issue, is this fixed ?please reply

we also facing the same issue exactly

Hi @gajendrangnanasekaran , The issue is fixed in PR Netflix/conductor-community#303. It will be released in the next release.

Specifically, add
RUN git reset --hard 7e1b9122477ae0647b61d1206e49be87f0ae65d1
to line 39 in the Dockerfile https://github.com/Netflix/conductor/blob/main/docker/server/Dockerfile until v1r3n has made a new community release.

Thanks lot when it will get released?

Thanks lot when it will get released?

Just apply my fix for now, the community version can then release when they're ready.

Now its working fine as per @Nostras inputs, thanks lot @Nostras and @manan164