Skip to content

Infinite loop of "unable to schedule timer" when cycles run low #706

@ranile

Description

@ranile

If the canister does not have enough cycles to schedule a timer (or interval), the library ends up in what is effectively an infinite loop of reattempts:

Canister logs

[7359. 2026-04-01T07:07:55.841725127Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7360. 2026-04-01T07:07:56.25502391Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7361. 2026-04-01T07:07:56.723303182Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7362. 2026-04-01T07:07:57.144843964Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7363. 2026-04-01T07:07:57.488891711Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7364. 2026-04-01T07:07:57.963775576Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7365. 2026-04-01T07:07:58.346957392Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7366. 2026-04-01T07:07:58.767879228Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7367. 2026-04-01T07:07:59.228574857Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7368. 2026-04-01T07:07:59.642307946Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7369. 2026-04-01T07:08:00.004852977Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7370. 2026-04-01T07:08:00.418322193Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7371. 2026-04-01T07:08:00.85038844Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7372. 2026-04-01T07:08:01.252940375Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7373. 2026-04-01T07:08:01.675909951Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7374. 2026-04-01T07:08:02.084408966Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7375. 2026-04-01T07:08:02.501918417Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7376. 2026-04-01T07:08:02.906392949Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7377. 2026-04-01T07:08:03.314078906Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7378. 2026-04-01T07:08:03.745544949Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7379. 2026-04-01T07:08:04.160874185Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7380. 2026-04-01T07:08:04.560114921Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7381. 2026-04-01T07:08:04.979469778Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7382. 2026-04-01T07:08:05.400479551Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7383. 2026-04-01T07:08:05.814826355Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7384. 2026-04-01T07:08:06.293797354Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7385. 2026-04-01T07:08:06.694427817Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7386. 2026-04-01T07:08:07.13025302Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles
[7387. 2026-04-01T07:08:07.546944138Z]: [ic-cdk-timers] unable to schedule timer: not enough liquid cycles

Reproduction steps

  1. Schedule a timer
  2. Wait for cycles to drain
  3. Watch the logs

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions