usually this is done by supporting multiple rows with version and live
flags. the system always try to query objects that are marked live, so
instead of saying something like

FROM User u WHERE u.name=? you would do FROM User u WHERE u.name=? AND
u.live=true

this saves you from having to support what essentially are two sets of
the same tables in the same schema.

this is also how soft deletes work, which is something you will
probably have to support if you want to support versioning properly...

just some high level thoughts.

-igor

On 10/29/07, Tauren Mills <[EMAIL PROTECTED]> wrote:
> I have a wicket/hibernate/spring project that manages a set of live
> data.  Users of the system view the live version of the data.
> Currently, administrative CRUD alters the live data as well.  Changes
> by an admin are immediately reflected on the site to users.
>
> But a new set of features is going to require that administrators
> should be able to make updates and changes without affecting the live
> data.  Once they are satisfied with the changes they have made, they
> can save/publish the "working data" to be "live data" on the site.
>
> The modification/editing of this data can take a fair amount of time,
> perhaps several days.  Thus, I can't just put the working data into
> the session and then save it to the DB a few minutes later when the
> editing is done.  The working data needs to be able to persist as well
> as the live data.
>
> Also, I'm reluctant to just make copies of all the data from the live
> version to the working version, because there are certain aspects of
> the live data that can be altered by the users.  The users don't
> actually edit the basic data, but additional information is attached
> to the data as the user uses it.  If the admin is editing data and it
> takes a few days, the copy of the data could get stale as users use
> it.  Then I'd have data synchronization issues to deal with.
>
> I would google for patterns or techniques to deal with this type of
> situation, but I'm not sure what to even search for.  Has anyone had
> to deal with anything similar?  Any advice or suggestions?  Or even
> keywords to search for?
>
> Thanks!
> Tauren
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to