Bug0030
- Description
- Pickling of log drivers causes them to break.
PyFlag uses the python pickle module to pickle log presets. Log presets are basically classes extending the Log base class which implement the logic behind processing specific log types. This pickling causes the loaded objects to retain their old form even if the classes were upgraded or changed slightly.
This makes the whole log present management very fragile because classes will fail in unexpected ways (due to missing attributes or changed APIs).
The solution is to implement a more robust serialise/unserialised mechanism for each log driver which, although, less generic will be more robust to changes in internal structure. Probably best to just save the query string used to create the driver in the first place (from its parse argument).
Get back to the BugIndex
No Log Drivers are asked to serialise themselves using the query string. This should ensure that older presets can be loaded into newer drivers and that drivers are not as fragile.
