Skip to content
This repository was archived by the owner on Sep 16, 2020. It is now read-only.
This repository was archived by the owner on Sep 16, 2020. It is now read-only.

Occasional crash on server upgrade #50

Description

@timsu

When running a single OTP server and using hot upgrades, Toniq 1.2.3 will occasionally crash, preventing the upgrade.

From the logs, I see a few different crashes:

=CRASH REPORT==== 18-May-2018::18:23:09 ===
  crasher:
    initial call: Elixir.Toniq.DelayedJobTracker:init/1
    pid: <0.1866.0>
    registered_name: 'Elixir.Toniq.DelayedJobTracker'
    exception error: bad argument
      in function  erlang:send_after/3
         called as erlang:send_after(nil,<0.1866.0>,flush)
      in call from 'Elixir.Toniq.DelayedJobTracker':schedule_work/0 (lib/toniq/delayed_job_tracker.ex, line 57)
      in call from 'Elixir.Toniq.DelayedJobTracker':handle_info/2 (lib/toniq/delayed_job_tracker.ex, line 48)
      in call from gen_server:try_dispatch/4 (gen_server.erl, line 616)
      in call from gen_server:handle_msg/6 (gen_server.erl, line 686)
    ancestors: ['Elixir.Toniq.Supervisor',<0.1855.0>]
    message_queue_len: 0
    messages: []
    links: [<0.1856.0>]
    dictionary: []

Seems like self() is returning nil?

=CRASH REPORT==== 18-May-2018::18:23:09 ===
  crasher:
    initial call: Elixir.Toniq.Takeover:init/1
    pid: <0.2542.0>
    registered_name: []
    exception error: no match of right hand side value {error,badarg}
      in function  'Elixir.Toniq.Takeover':init/1 (lib/toniq/takeover.ex, line 16)
      in call from gen_server:init_it/2 (gen_server.erl, line 365)
      in call from gen_server:init_it/6 (gen_server.erl, line 333)
    ancestors: ['Elixir.Toniq.Supervisor',<0.1855.0>]
    message_queue_len: 0
    messages: []
    links: [<0.1856.0>]
    dictionary: []

My OTP environment:
Erlang/OTP 20 [erts-9.3] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:10] [hipe] [kernel-poll:false]

Any ideas as to how I can prevent these? Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions