#195 new meta

Clean shutdown

Reported by: Ichthyostega Owned by:
Priority: normal Milestone: 2beta
Component: lumiera Keywords: QA architecture
Sub Tickets: #196, #201, #574, #624, #693, #700, #712, #804, #837, #842, #845, #867, #954, #1034, #1035, #1133, #1146, #1160, #1161, #1198, #1416 Parent Tickets: #198

Description (last modified by Ichthyostega)

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 (25)

comment:1 by Ichthyostega, at 2009-07-29T14:12:50Z

blockedby: 196

in reply to:  description comment:2 by Christian Thäter, at 2009-07-29T14:22:30Z

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 by Ichthyostega, at 2009-07-31T16:14:16Z

blocking: 198
Description: modified (diff)
Keywords: meta added

comment:4 by Ichthyostega, at 2009-07-31T16:16:57Z

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 by Ichthyostega, at 2009-07-31T16:29:54Z

blockedby: 196196, 201

comment:6 by Christian Thäter, at 2010-01-16T12:08:30Z

Type: plannedmeta

comment:7 by Ichthyostega, at 2010-03-12T20:52:43Z

blockedby: 196, 201196, 201, 574

comment:8 by Ichthyostega, at 2010-06-02T02:40:28Z

blockedby: 196, 201, 574196, 201, 574, 624

comment:9 by Ichthyostega, at 2010-10-20T02:38:32Z

blockedby: 196, 201, 574, 624196, 201, 574, 624, 693

comment:10 by Ichthyostega, at 2010-10-24T02:26:28Z

blockedby: 196, 201, 574, 624, 693196, 201, 574, 624, 693, 700

comment:11 by Ichthyostega, at 2010-11-06T18:55:35Z

blockedby: 196, 201, 574, 624, 693, 700196, 201, 574, 624, 693, 700, 712

comment:12 by Ichthyostega, at 2011-05-21T15:58:34Z

blockedby: 196, 201, 574, 624, 693, 700, 712196, 201, 574, 624, 693, 700, 712, 804

comment:13 by Ichthyostega, at 2011-09-25T16:13:02Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804196, 201, 574, 624, 693, 700, 712, 804, 837

comment:14 by Ichthyostega, at 2011-09-25T16:39:15Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837196, 201, 574, 624, 693, 700, 712, 804, 837, 842

comment:15 by Ichthyostega, at 2011-12-10T01:25:01Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867

comment:16 by Ichthyostega, at 2014-10-13T01:56:34Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954

comment:17 by Ichthyostega, at 2016-10-29T12:41:40Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954, 1035

comment:18 by Ichthyostega, at 2016-12-11T00:25:32Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954, 1035196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954, 1034, 1035

comment:19 by Ichthyostega, at 2018-03-31T00:24:00Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 867, 954, 1034, 1035196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035

comment:20 by Ichthyostega, at 2018-03-31T00:36:44Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133

comment:21 by Ichthyostega, at 2018-08-29T13:31:22Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160

comment:22 by Ichthyostega, at 2018-08-29T13:44:06Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161

comment:23 by Ichthyostega, at 2019-06-16T14:36:39Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161, 1198

comment:24 by Undercover Agent, at 2025-12-25T00:00:00Z

blockedby: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161, 1198
blocking: 198
Parent Tickets: 198
Sub Tickets: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161, 1198

Migration MasterTickets ⟼ Subtickets-plugin

comment:25 by Ichthyostega, at 2026-03-03T02:54:11Z

Sub Tickets: 196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1160, 1161, 1198196, 201, 574, 624, 693, 700, 712, 804, 837, 842, 845, 867, 954, 1034, 1035, 1133, 1146, 1160, 1161, 1198, 1416
  • Add subticket #1416 (clarify lifecycle of the »Vessel«)
  • in addition, also connect to #1146 (complete application startup sequence)
Note: See TracTickets for help on using tickets.