I've had my head in the sand for several months; my apps still use
Dulcinea-0.1 (and quixote-0.7a3, and are deployed on python-2.2).
In starting to sync up to later revisions of all, starting with dulcinea,
I see that dulcinea-0.3 now speaks Durus, not ZODB. Both my apps use
dulcinea+zodb for sessions; one keeps its app data in the same single
zodb instance as sessions, the other uses mysql.
I would rather keep using Dulcinea for sessions because It Works and
I don't have to think about it, and thus can focus on my apps. Well,
I'm thinking about it now, but, yknow. :)
It would be very helpful if any of you might help sanity-check this
migration plan:
For the app with app-data in mysql: just swap in new dulcinea/durus
for old dulcinea/zodb. Write a probably-straightforward script to
make sure the simple DulcineaUserDatabase instance migrates adequately,
perhaps bridging the two with a mysql table. All set.
For the app with both sessions and app-data in zodb: it's more
complicated. Options include:
A. "upgrade" to dulcinea-0.2.1+zodb (or, even, stay with 0.1)
Pro: it will work with little (or no) modification
Con: it appears this combo is no longer supported
B. upgrade session mgmt to dulcinea-0.3+durus; leave current app
data in zodb
Pro: it will be supported
Con: will need a perhaps-complicated script to transfer the
old DulcineaUserDatabase (which contains much app data)
into a more-independent zodb instance. could simplify
this by folding the dulcinea-0.2.1 UserDatabase into my
codebase or something equivalent.
C. upgrade session mgmt to dulcinea-0.3+durus; move app data to
an rdmbs.
Pro: i'll probably need to do the latter anyway
Con: back to SQL?? Gack!
D. move everything to dulcinea-0.3+durus.
Pro: it will be supported
Con: already using BTrees heavily, and db needs to scale to
100000s of records quickly, so maybe this isn't really a
reasonable option
Do these options reflect a reasonable understanding of where things stand
w/r/to Dulcinea and Durus? If so, I'll probably do (A) for now and do
(C) when I need to move to the rdbms. Sadly, when that day arrives,
I might also need to rewrite everything in java anyway, which would be
traumatic in its own right, but that's another story.
Any feedback would be greatly appreciated.
Thanks, -Dan
--
Daniel Chudnov
Yale Center for Medical Informatics
(203) 737-5789