Re: reverse engineering partially changed schema

From: Tobias Schoessler (tobias.schoessle..mail.com)
Date: Wed May 13 2009 - 05:45:17 EDT

  • Next message: Andrus Adamchik: "Re: reverse engineering partially changed schema"

    I just tried to track down the error and started with a simple two table
    schema and enhancing it step by step with relationships to see where it
    breaks.

    I was not able to recreate the issues this way.

    I then got back to my production schema/mapping and tried to simplify the
    schema to see where it breaks.

    It turns out that the error occurs even without a change to the database
    schema.

    So with the complete cayenne map, reverse engineering the same database
    schema gives me the "No error message" popup.

    I started from scratch yesterday reverse engineered the database and added
    the custom mappings with the modeler. So some of my custom mapping must
    cause this error.

    this is the same in 1.2 and 3.

    I am a bit anxious posting the production schema/mapping here in the mailing
    list. Would someone look at it if I did?

    thanks

    Tobias

    On Tue, May 12, 2009 at 4:06 PM, Andrus Adamchik <andru..bjectstyle.org>wrote:

    > Thanks! We'll take a look at it.
    >
    > In general, is there an overview to see the differences of the 3 versions
    >>> 1.x, 2.x and 3.x?
    >>>
    >>
    >
    > 2.0.x is exactly the same as corresponding 1.2.x, only with package names
    > changed from org.objectstyle to org.apache. 2.0.x is great for migration
    > from the ObjectStyle releases as it does not introduce any new
    > functionality.
    >
    > 3.0, while still in development is being used in production by many
    > companies already. We are trying to wrap up the final release soon, but
    > there are still a few things to finish. Here is a fairly complete overview
    > of 3.0 new features already available:
    >
    > http://cayenne.apache.org/doc/guide-to-30-features.html
    >
    > The list is pretty long and it has a lot of great things (useable query
    > caching, leak free DataContext, greatly enhanced Modeler, lifecycle
    > callbacks, more supported attribute types, including Java 5 enums, etc.,
    > etc.)
    >
    > Andrus
    >
    >
    >
    > On May 12, 2009, at 4:37 AM, Tobias Schoessler wrote:
    >
    > I just downloaded 3.0. Started up the Modeler and did the same remove /
    >> reengineer / skip existing operation and I got the same empty error
    >> message
    >> as with 1.2.
    >>
    >> On Tue, May 12, 2009 at 9:48 AM, Tobias Schoessler <
    >> tobias.schoessle..mail.com> wrote:
    >>
    >> Thanks Andrus, I have postedit as
    >>>
    >>> *CAY-1224 <https://issues.apache.org/jira/browse/CAY-1224>*
    >>>
    >>> Andrus, 3.0 is marked in developement. Is it save to be used in
    >>> production?
    >>>
    >>> In general, is there an overview to see the differences of the 3 versions
    >>> 1.x, 2.x and 3.x?
    >>>
    >>> Tobias
    >>>
    >>>
    >>> On Tue, May 12, 2009 at 2:50 AM, Andrus Adamchik <andru..bjectstyle.org
    >>> >wrote:
    >>>
    >>> Hi Tobias,
    >>>>
    >>>> This looks like a bug to me. Probably worth opening a bug report, but
    >>>> the
    >>>> easiest thing would be to upgrade to Cayenne 3.0 for instance. Chances
    >>>> are
    >>>> this problem is fixed there already.
    >>>>
    >>>> Andrus
    >>>>
    >>>>
    >>>>
    >>>> On May 11, 2009, at 10:24 AM, Tobias Schoessler wrote:
    >>>>
    >>>> Hi,
    >>>>
    >>>>>
    >>>>> I get an error in the CayenneModeler 1.2.4 when reverse engineering my
    >>>>> schema partially.
    >>>>>
    >>>>> CayenneModeler INFO [Thread-13 04-27 15:02:50]
    >>>>> org.objectstyle.cayenne.modeler.dialog.db.DbLoaderHelper: Exception on
    >>>>> reverse engineering
    >>>>> java.lang.NullPointerException
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.access.DbLoader.loadDbRelationships(DbLoader.java:661)
    >>>>>
    >>>>> at
    >>>>>
    >>>>> org.objectstyle.cayenne.access.DbLoader.loadDbEntities(DbLoader.java:488)
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.access.DbLoader.loadDataMapFromDB(DbLoader.java:775)
    >>>>>
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.access.DbLoader.loadDataMapFromDB(DbLoader.java:758)
    >>>>>
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.modeler.dialog.db.DbLoaderHelper$LoadDataMapTask.execute(DbLoaderHelper.java:388)
    >>>>>
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.modeler.util.LongRunningTask.internalExecute(LongRunningTask.java:251)
    >>>>>
    >>>>> at
    >>>>>
    >>>>>
    >>>>> org.objectstyle.cayenne.modeler.util.LongRunningTask$1.run(LongRunningTask.java:139)
    >>>>>
    >>>>> at java.lang.Thread.run(Unknown Source)
    >>>>>
    >>>>>
    >>>>> I have updated a portion of the schema in the database. I delete the
    >>>>> DbEntities and ObjEntities of the tables that were changed.
    >>>>>
    >>>>> I then click reverse Engineer from database. I get popups asking
    >>>>> whether
    >>>>> to
    >>>>> overwrite existing Objects. I click "remember my decision" and NO.
    >>>>>
    >>>>> at the end I get an error popup without a message. It is just
    >>>>> containing
    >>>>> the
    >>>>> red error icon and a title reading "Error Reengineering Database".
    >>>>>
    >>>>>
    >>>>> This error does occur also when I select not to remember my decision
    >>>>> and
    >>>>> click through each popup one by one.
    >>>>>
    >>>>> When reverse engineering the whole database, removing all ObjEntities
    >>>>> and
    >>>>> all DBEntities, before reverse engineering the error does not occur. I
    >>>>> have
    >>>>> many custom mappings redoing the existing mapping is not really an
    >>>>> option.
    >>>>>
    >>>>> Any help highly appreciated.
    >>>>>
    >>>>> thanks,Tobias
    >>>>>
    >>>>>
    >>>>
    >>>>
    >>>
    >



    This archive was generated by hypermail 2.0.0 : Wed May 13 2009 - 05:45:51 EDT