1 The effect of "disorder reconfigure"
2 ====================================
4 This is current rather vaguely defined and implemented. This file
5 will lay out what you can and cannot change over a reconfigure. Any
6 other changes will require a full server restart.
8 The situation is gradually improving; this file tracks the current
11 * Options that might have to remain the same across restart
13 Arguably if there is anything in this section then that's a serious
16 ** alias (enforced at reload only)
18 This defines how aliases are inserted into the track database. Need
19 to think about how changing it will affect things.
23 Probably affects alias construction.
27 The search database will have to be rebuilt from scratch. This is
28 do-able but AFAIK we don't detect it.
30 ** user (enforced at reload only)
32 All the files will be owned by the wrong user!
34 * Options that must remain the same across reload
36 Some things will just require a restart. We should either enforce
37 this (refusing to accept modified configurations that purport to
38 change them) or explicitly ignore it.
40 ** home (enforced at reload)
42 We absolutely cannot accept changing our state directory.
44 ** lock (generates a deprecation warning)
46 Liable to be removed anyway.
48 ** nice_speaker (generates a warning)
50 You can't renice a running speaker to make it less nice (and we don't
51 try to make it more nice).
53 * Options that ought to be changable across reload but aren't
55 These options need some work somewhere to be changeable just by a
60 The main server will cope fine with this changing. The speaker will
61 ignore the change however.
65 The speaker will ignore the change.
69 The speaker will ignore the change.
73 If the set of collections change we ought to initiate a rescan.
77 The speaker will ignore the change.
81 The speaker will ignore the change.
85 The speaker will ignore the change.
89 The speaker will ignore the change.
93 The speaker will ignore the change.
97 The speaker will ignore the change.
99 * Options that can be changed across reload
101 These options can be changed at reload and it should just work.
103 ** authorization_algoritm
121 Wouldn't affect an already-running rescan, but reload already cancels
122 and restarts the underway rescan anyway.
138 * Options that can change, but with a caveat
140 These options can be changed at reload but there is some caveat about
141 this (which ought to be documented, and in some cases is).
145 Plugin path. You can change the plugin path but an already-loaded
146 plugin may stay loaded.
148 ** cookie_key_lifetime
150 Only affects subsequently generated keys - cannot shorten (or extend)
151 the lifetime of the current key.
153 ** cookie_login_lifetime
155 Only affects subsequently generated cookies - cannot shorten (or
156 extend) the lifetime of already-generated cookies.
160 The history might not shorten until it's next written.
164 Won't affect running players or decoders.
168 Won't shrink the queue.
172 Won't affect already-computed lengths.
174 * Implementation Considerations
176 A likely change is that the speaker will be created on demand and
177 stopped when idle. Some changes will still be handled via SM_RELOAD
178 but others may require the speaker to quit and restart.