Re: [JIRA] Created: (CAY-968) Portable Data with Cayenne - database load/unload feature

From: Adrian Wiesmann (awiesman..omap.org)
Date: Mon Jan 21 2008 - 01:15:01 EST

  • Next message: Ari Maniatis (JIRA): "[JIRA] Commented: (CAY-968) Portable Data with Cayenne - database load/unload feature"

    Hello all

    Sorry for commenting here and not in JIRA...

    > Here's a dream: I run an ant target or a set of API calls with proper
    > configuration against a database configured with Cayenne, it gives me a
    > set of files or just one file, possibly some compressed archive format
    > such as zip which contain all I need to recreate the same data under the
    > same DBMS or a different one. So whenever needed, I can send this file
    > or files to a colleague who would run a reverse ant target (or a set of
    > API calls) and have the same database ready for use in the DBMS of his
    > choice.

    I did something you dream of. This is what we currently call Snapshot
    files. A snapshot file contains one file per table. These files contain
    xml-serialised DataObjects. Everything is then packed together in one
    single ZIP file, together with a Manifest file which contains basic infos
    regarding included tables, record count, size, signature etc.

    If somebody is interested to include this in Cayenne I would be more than
    happy to discuss our approach and share sources. Although we moved to
    GPLv3 I/we own the copyright and re-licencing would not be a problem.

    > Cayenne has plenty of good stuff which would make this possible and my
    > team is currently implementing subset of this functionality tailored to
    > our specifics: it requires some manual effort on the part of indicating
    > the sequence in which the tables should be loaded, manual adjustment of
    > primary key generation info after loading a table etc. Would be good to
    > have this implemented in a core or an optional extension. The portable
    > format should be versionable plain text such as XML or JSON - that would
    > allow me to to use the VCS to keep my test data, demo data etc, properly
    > versioned.

    Primary key generation is not a problem in our solution. We only use UUID
    as primary keys...

    Cheers,
    Adrian



    This archive was generated by hypermail 2.0.0 : Mon Jan 21 2008 - 01:15:42 EST