Resuming the vote.. I investigated the issue with the mapping and found it to be a user mapping error. There's room for validation improvement there, but no Cayenne bug as such. I'll wait till Dima confirms this before closing the vote, but I think it is safe now to resume the vote.
Andrus On Feb 15, 2013, at 4:43 PM, Andrus Adamchik <[email protected]> wrote: > Ok, I checked with Dima - my fix per CAY-1794 didn't help. I'll have to spend > some more time reproducing the problem. I guess I'll be suspending the vote > for a few days until we identify the problem and decide whether it warrants > the release cancelation. > > Andrus > > On Feb 15, 2013, at 2:50 PM, Andrus Adamchik <[email protected]> wrote: > >> Thanks for the information. Let me try to reproduce this. >> >> On Feb 15, 2013, at 11:32 AM, Dzmitry Kazimirchyk <[email protected]> >> wrote: >> >>> From what I was able to find now it seems like it is related to CAY-1729. >>> I'm not sure how it used to work before but now for us the problem is that >>> we have id property declared in super entity and inherited by sub entities. >>> Now this property is present in every sub entity descriptor's >>> declaredProperties list which itself looks like it is meant to accumulate >>> only NEW UNIQUE properties declared in sub entities and not present in >>> parent. This in turn leads to id column descriptor type of super entity >>> always being reset to VOID by following code inside SelectTranslator and >>> therefore field always containing null value. >>> >>> private void appendColumn(.......... { >>> if (skipSet.add(new ColumnTracker(alias, attribute))) { >>> ..... add new column descriptor....... >>> } >>> else if (objAttribute != null) { >>> ............. >>> for (ColumnDescriptor column : columns) { >>> if (attribute.getName().equals(column.getName())) { >>> ........ >>> if (original != null) { >>> if (attributeOverrides == null) { >>> attributeOverrides = new HashMap<ObjAttribute, >>> ColumnDescriptor>(); >>> } >>> >>> attributeOverrides.put(original, column); >>> column.setJavaClass(Void.TYPE.getName()); >>> } >>> .............. >>> } >>> } >>> } >>> } >>> >>> ELSE part is executed if the attribute is already present: the case we get >>> with id props coming again from sub entities. >>> >>> Not sure if my rough investigation is helpful in some way but probably >>> might be a place to start with. >>> >>> Dima >>> >>> On 02/15/2013 01:29 PM, Andrus Adamchik wrote: >>>> Dima, do you have the details of the problem to post on this list? >>> >>> >> >> > >
