Ticket #195 (new meta)

Opened 3 years ago

Last modified 8 weeks ago

Clean shutdown

Reported by: ichthyo Owned by:
Priority: normal Milestone: 2beta
Component: lumiera Keywords: QA architecture meta
Cc: Blocked By: #196, #201, #574, #624, #693, #700, #712, #804, #837, #842, #867
Blocking: #198

Description (last modified by ichthyo) (diff)

clean Application shutdown

this is a tracking ticket -- individual tasks depending.

Even while Lumiera is designed allowing simply to »pull the plug«, it is important to care for a super clean shutdown with zero leaks, races and suppressed exceptions. Because, usually, these are common symptoms of conceptual mismatches, which shouldn't be allowed to linger

Change History

comment:1 Changed 3 years ago by ichthyo

  • Blocked By 196 added

comment:2 in reply to: ↑ description Changed 3 years ago by ct

  • Description modified (diff)

Replying to ichthyo:

clean Application shutdown

this is a meta-ticket to keep track of relevant issues

Even while Lumiera is designed allowing simply to »pull the plug«, it is important to care for a super clean shutdown with zero leaks, races and suppressed exceptions. Because, usually, these are common symptoms of conceptual mismatches, which shouldn't be allowed to linger

Moreover I was thinking about different shutdown compiletime options. That is 'clean but slow' shutdown for ALPHA and BETA builds and a 'fast' shutdown for RELEASE builds. A lot objects don't really need to be deconstructed on shutdown but this is twofold and we need to prepare it in a way that the necessary actions are still guaranteed to be executed at fast shutdown (that likely implies a 2 or 3 stage shutdown for some classes, close eg: -> destroy -> free).

Further there is the 'resourcecollector' which manages emergency shutdowns, generally I want to be able to pull the plug at any time without loosing (much..) work. but even this can be done in multiple stages, writing as much data as possible out and syncing the log.

comment:3 Changed 3 years ago by ichthyo

  • Keywords meta added
  • Blocking 198 added
  • Description modified (diff)

comment:4 Changed 3 years ago by ichthyo

yeah, good point. I think, on a large extent, we are already kapable of doing so. Off the top of my head, I can't recall any dtor doing any state saving. Anyway, I'll add a separate ticket to track fast shutdown

comment:5 Changed 3 years ago by ichthyo

  • Blocked By 201 added

comment:6 Changed 2 years ago by ct

  • Type changed from planned to meta

comment:7 Changed 2 years ago by ichthyo

  • Blocked By 574 added

comment:8 Changed 20 months ago by ichthyo

  • Blocked By 624 added

comment:9 Changed 16 months ago by ichthyo

  • Blocked By 693 added

comment:10 Changed 16 months ago by ichthyo

  • Blocked By 700 added

comment:11 Changed 15 months ago by ichthyo

  • Blocked By 712 added

comment:12 Changed 9 months ago by ichthyo

  • Blocked By 804 added

comment:13 Changed 4 months ago by ichthyo

  • Blocked By 837 added

comment:14 Changed 4 months ago by ichthyo

  • Blocked By 842 added

comment:15 Changed 8 weeks ago by ichthyo

  • Blocked By 867 added
Note: See TracTickets for help on using tickets.