Yesterday I came across this thing:
http://common-lisp.net/project/cl-migrations/
It might be useful later on, when we start to tackle the user-managed
parts of schema evolution. Ian, do you have more details on when
you will be ready?
Leslie
--
My personal blog: http://blog.viridian-proj
I am no expert at how elephant does this now, I've been digging more
in the low level areas.
But I think that after some time you really will want schema changes
to be saved, and to be able to have different versions of classes, and
to have a lazy update of instances. It makes working with the sys
Ian Eslick wrote:
> Redefining a class via defclass, thus initiating calls to change-
> instance-for-redefined-class is harder because it is lazy in some
> (or all) lisps. When a defclass causes a change in a standard class
> schema, the instances of that class are updated at latest when an
> obj
So there are a number of cases where you might want to know you are
being shot in the foot.
1) You re-evaluate a defclass which drops a persistent slot.
a) the class is indexed, so the system checks for instances - if
there are none, it succeeds silently otherwise do (b)
b) the class is
I kind of agree with Robert. It has taken me some time to realize
that Elephant is not a DBMS. As such, and as documented in the
manual, if someone changes the schema, s/he would be responsible for
writing such a function to walk down the entire DB and refresh the data.
If the other solutio
This is a very complex subject.
In the greatest generality, one needs a function to go from one schema
to the next; for example, if you change the type or encoding of a slot,
one must provide a translation function for the slot.
I personally, in the style in which I am working, would be most
comf
Another detail to iron down is the implications of change-class and
redefining a class via defclass.
change-class is pretty easy as it is an explicit call by the user to
change a given instance. I added a warning mechanism that signals if
you are going to delete data from a store by droppi