0.84/Reliability

< 0.84
Revision as of 06:33, 20 September 2008 by Marcopg (talk | contribs)

Datastore rework

People

Owner: Tomeu Vizoso

Peers:

  • Marco Pesenti Gritti

TODO

  • The datastore code needs to be rewritten, to simplify and improve maintainability. As a first step the API will not be changed at all (other than removing removable devices support, see next goal), so that the new implementation can be swapped in without changes to activities and Sugar. (tomeu)
  • Drop for now the management of removable devices inside the DS. Removable devices support in Sugar should happen without intervention from the DS. This will require that Sugar grows some kind of simple file manager that access the file system directly. (tomeu)
  • #8155 The datastore should hard link identical files, to handle repeated downloads of the same content without filling up NAND. (tomeu)
  • When an existing entry is modified, keep the old version and reference them with a version number. Compress versions with deltas. The journal needs to add a possibility to launch different versions of an activity from within the detail view. (tomeu)
  • Degrade gracefully if a database gets corrupted- Basic functionality should only depend on the filesystem being available. Any other data structures (full text index) should be rebuildable from the filesystem. (tomeu)

Status

  • Tomeu is working on a prototype of the datastore rewrite.
  • If the journal is not going to display the contents of removable devices, we (Eben) need to design an alternative UI.
  • More work needed to define the goals.