Not being able to deploy using cimg/elixir:1.14

Recently my teammates and I were trying to upgrade our Elixir app from Elixir 1.12 to the 1.14 version.

On our .circleci/config.yml file, we just change the given line from

 build_test_stage:
    parallelism: 1
    docker:
      - image: cimg/elixir:1.12
        environment:
          MIX_ENV: test

to:

 build_test_stage:
    parallelism: 1
    docker:
      - image: cimg/elixir:1.14
        environment:
          MIX_ENV: test

But when we try to deploy we are getting the following errors:

INFO -- : STARTING: Configure SSL Policy for endpoint app-48362.on-aptible.com
INFO -- : COMPLETED (after 0.04s): Configure SSL Policy for endpoint app-48362.on-aptible.com
INFO -- : WAITING FOR: Start app containers for service cmd

INFO -- : WAITING FOR: Start app containers for service cmd
INFO -- : COMPLETED (after 12.65s): Start app containers for service cmd
INFO -- : STARTING: Wait up to 180s for containers in service cmd to respond to HTTP health checks
INFO -- : STARTING: Start logging containers for app-feature-1-cmd to log drain app-prod-v2
INFO -- : STARTING: Start logging containers for app-feature-1-cmd to log drain log-tail-wgzfaq
INFO -- : STARTING: Start metric collectors for app-feature-1-cmd to metric drain grafana-influxdb
INFO -- : STARTING: Start proxy containers for endpoint app-48362.on-aptible.com
INFO -- : WAITING FOR: Start logging containers for app-feature-1-cmd to log drain app-prod-v2, Start logging containers for app-feature-1-cmd to log drain log-tail-wgzfaq, Start metric collectors for app-feature-1-cmd to metric drain grafana-influxdb, Start proxy containers for endpoint app-48362.on-aptible.com, Wait up to 180s for containers in service cmd to respond to HTTP health checks
ERROR -- : 1 of 1 HTTP health checks failed
ERROR -- : Container for cmd (running ["start"]) failed to start (exited with status 127 after 0 seconds).
ERROR -- : Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __extendhfdf2: symbol not found
ERROR -- : Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __truncdfhf2: symbol not found
ERROR -- : Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: _ZSt28__throw_bad_array_new_lengthv: symbol not found
ERROR -- : Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: pthread_getname_np: symbol not found
ERROR -- : Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __truncxfhf2: symbol not found
ERROR -- : For more information, review: https://deploy-docs.aptible.com/docs/http-health-checks-failed/
ERROR -- : FAILED: Wait up to 180s for containers in service cmd to respond to HTTP health checks
WARN -- : STARTING ROLLBACK: This operation encountered an error, Aptible is now attempting to rollback your infrastructure to its initial state.
INFO -- : COMPLETED (after 2.27s): Start logging containers for app-feature-1-cmd to log drain app-prod-v2
INFO -- : COMPLETED (after 2.27s): Start logging containers for app-feature-1-cmd to log drain log-tail-wgzfaq
INFO -- : ROLLING BACK: Start logging containers for app-feature-1-cmd to log drain app-prod-v2
INFO -- : ROLLING BACK: Start logging containers for app-feature-1-cmd to log drain log-tail-wgzfaq
INFO -- : ROLLING BACK: Configure IP filtering for endpoint app-48362.on-aptible.com

If we go back to the 1.12 it works fine.

Is there any new dependency I need to add, or any odd behavior with Elixir 1.14 images?

Extra info:

  • We use aptible as our infra solution where the application runs
  • CircleCI was always our solution to build the CI/CD flow

Thanks ahead!

Henry from the Aptible team here! Happy to help in any way I can.

I see you’ve already been in touch with our support engineers and we made a recommendation to try to point you in the right direction.

We can’t see your CircleCI config, but it seems the most relevant portion of the logs you posted related to the error is:

 Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __extendhfdf2: symbol not found
 Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __truncdfhf2: symbol not found
 Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: _ZSt28__throw_bad_array_new_lengthv: symbol not found
 Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: pthread_getname_np: symbol not found
 Error relocating /home/elixir/app/erts-13.1.5/bin/beam.smp: __truncxfhf2: symbol not found

Based on this, our hunch is this is not an Aptible-specific problem, but nonetheless we’d like to try to help.

Using this snippet we did some quick Googling and found this Stack Overflow thread that covers the “relocating” error message.

Please let us know if this gives you any leads. If it doesn’t, our support team is certainly standing by to further assist if we can. And I’ll monitor this thread to see if I can be of any use.

Henry
Aptible

1 Like

Thanks for the reply @aptible-henry I will try.

But I already trie different images such cimg, hexpm and neither ubuntu:latest and they all raise the same issue.

I was able to fix it.

The error was not in the image from CI but in my docker file image.

I have set my Dockerfile to use this one: hexpm/elixir:1.14.0-erlang-24.1.7-alpine-3.14.2 and worked fine!

Thanks!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.