[Chandler-dev] Reload is not import
morgen at osafoundation.org
Fri Apr 13 12:26:04 PDT 2007
On Apr 13, 2007, at 11:52 AM, Heikki Toivonen wrote:
> It seems there is some confusion what reload really means. pje's
> understanding was that it be used only as an upgrade path/data
> path, meaning the expectation on reload is for all userdata to go away
> and be replaced with what is in the dump.
> However, my understanding of some of the reload code seems to be
> that it
> is acting more like an import, i.e. adding that data in the dump to
> current repository.
Well, it is
> The current reload menu item perpetrates this import interpretation of
> this as well; if it was truly about reload then it should restart
> chandler with --create and use some new option to point to the dump.
> Can we agree that reload means "blow away all current data and
> reload dump"?
> If so, we have some work to do...
My understanding is that a reload happens to a repository that has
just gone through a --create. In other words, out of the box items
have been created. Now as it stands, some of those out of the box
items are actually modified by a user during their use of Chandler.
Those cases are:
#1 I proposed earlier to solve by creating such out-of-the-box
accounts outside of //parcels and instead in //userdata so they get
dumped like any other item. What I think I left out was that they
should be given fixed UUIDs so that during reload the user-modified
account items will have their data applied to the out-of-the-box
items (and avoid creating duplicates)
#2 Preferences are handled by explicitly yielding the appropriate
records within translator.finishExport( )
#3 Is handled by a combination of #1 and #2: the sidebar is given a
fixed UUID, and also its collection-membership records are explicitly
yielded in finishExport( )
So reload should mean "start with a fresh repository, load parcels
(thereby creating out-of-the-box items), then reload dump"
More information about the chandler-dev