The Open Anzo Project

Semantic Application Middleware

Ticket #367 (closed defect: fixed)

Opened 6 months ago

Last modified 3 months ago

Client Persistence and reconnection

Reported by: ben Assigned to: mroy
Priority: major Milestone: 3.0 milestone2
Component: openanzo Version: 3.0
Keywords: Cc:

Description

AnzoClient? reconnection and persistence have a related set of problems that must be solved together, so we place them under a single ticket..

- Basic Client Peristence problem

  • clear the transaction persistence after update completes

  • must implement single transaction removal from the store
  • we should not close graphs on client close

- Client Peristence and Reconnection enhancements

  • when we reconnect, or start an anzo client atop persistence we want to

  • mark all graphs as disconnected (disconnect only)

  • we now must make sure we do getServerGraph on server graph table on connect() because we can have server graphs in a non-connected state

  • in getReplicaGraph() replicate all graphs directly to quad store, but use revision in quad store DONE

  • change replicateNewGraphsToQuadStore -> replicateGraphsToQuadStore DONE

  • do we persist graph table?

  • do we want the replica/server graph objects and events to come back automatically?

  • or is this something that the app should do on startup?

  • is it ok to have statements in the local replica for which we don't have a replica graph in memory?

(probably not for memory replica, but ok and expected for persistence)

(Probably not, but here is the approach in case we would)

  • we can instantiate the graph tables from IQuadStoreComponent

  • when the client starts up:

  • reinstate graph table

  • instantiate all Replica and Server graphs as necessary

  • make sure all are disconnected

Change History

05/21/08 03:36:47 changed by ben

(In [2350]) First round of changes for getting persistence working re #367

05/21/08 22:23:04 changed by ben

(In [2354]) Fixed transaction persistence bugs re #367

05/29/08 16:07:39 changed by ben

(In [2376]) implemented graph table persistence re #367

05/31/08 18:02:50 changed by ben

(In [2394]) Client disconnection, reconnection cleanup re #367

06/09/08 13:29:37 changed by ben

  • owner changed from ben to mroy.

Matt, take a quick look at the reconnect unit tests at the end of TestAnzoClientIntegration? to make sure I did a reasonable job.

08/25/08 09:31:45 changed by mroy

  • status changed from new to closed.
  • resolution set to fixed.

Looks fine

Copyright © 2007 - 2008 OpenAnzo.org