Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 339492 - [Hibernate] Support backup/restore (export/import) feature
Summary: [Hibernate] Support backup/restore (export/import) feature
Status: CLOSED FIXED
Alias: None
Product: EMF
Classification: Modeling
Component: cdo.core (show other bugs)
Version: 4.1   Edit
Hardware: PC Linux
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Martin Taal CLA
QA Contact: Eike Stepper CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-10 05:57 EST by Michal Tkacz CLA
Modified: 2019-11-08 03:13 EST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Tkacz CLA 2011-03-10 05:57:19 EST
Build Identifier: 

Bug 330235 introduced backup/restore functionality for MEMStore and DBStore. It would be nice to have the same functionality for Hibernate Store.

According to Eike

"The new export/import mechanism requires at least the implementation of these optional IStore APIs:

org.eclipse.emf.cdo.server.IStoreAccessor.handleRevisions(EClass, CDOBranch, long, boolean, CDORevisionHandler)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawStore(InternalCDOPackageUnit[], OMMonitor)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawStore(InternalCDORevision, OMMonitor)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawCommit(double, OMMonitor)

Eventually plus these:

org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawStore(byte[], long, InputStream)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawStore(byte[], long, Reader)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawStore(CDOBranch, long, long, String, String, OMMonitor)
org.eclipse.emf.cdo.server.IStoreAccessor.Raw.rawDelete(CDOID, int, CDOBranch, EClass, OMMonitor)"

Reproducible: Always
Comment 1 Eike Stepper CLA 2011-06-23 03:56:55 EDT
Moving all open enhancement requests to 4.1
Comment 2 Eike Stepper CLA 2012-04-20 02:46:37 EDT
commit 47d969e972089caf5e58fef905a63180db2ce51d

I think I've fixed the CDORevision-->CDOID bug in WrappedHibernateList.

Then I've implemented the IStoreAccessor.Raw interface for the server import mechanism. Trying to find out now, what methods to implement from it...
Comment 3 Eike Stepper CLA 2012-04-20 02:49:49 EDT
commit 6ffdacfc9822b349a3cdbaee1753e68d22eca196

Okay, I've marked the following methods with // TODO:

org.eclipse.emf.cdo.server.internal.hibernate.HibernateStoreAccessor.rawStore(InternalCDOPackageUnit[], OMMonitor)
org.eclipse.emf.cdo.server.internal.hibernate.HibernateStoreAccessor.rawStore(InternalCDORevision, OMMonitor)
org.eclipse.emf.cdo.server.internal.hibernate.HibernateStoreAccessor.rawCommit(double, OMMonitor)
Comment 4 Martin Taal CLA 2012-04-25 06:48:41 EDT
I implemented the methods proposed by Eike, the backup tests works except for these 2:
featuremap
externalreference

I will leave these two open for now. The featuremap fails because featuremap support in CDO Hibernate does not seem complete, the externalreference is probably a setup question.

gr. Martin
Comment 6 Eike Stepper CLA 2012-09-21 07:16:08 EDT
Closing.
Comment 7 Martin Taal CLA 2012-11-04 22:29:50 EST
Featuremap and export of external references now also passed in the testcase. This is available in the 4.2 stream.