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
