Hi all, I would like to ask you two questions:
1) Is there any way to sort varchar fields which happen to numbers, more precisely ipv4s? query.addOrdering(Ip4Address.IP_ADDRESS_PROPERTY, SortOrder.ASCENDING); This of course sets the hundreds as first in line, any tips on some custom sorting? 2) I was filling ip table with available ranges like this: ObjectContext oc = DataContext.getThreadObjectContext(); for (int i = 33; i < 255; i++) { Ip4Address ip = oc.newObject(Ip4Address.class); ip.setIpAddress("XX.XX.XX." + i); ip.setUsed(Boolean.FALSE); ip.setNat(Boolean.FALSE); } but cayenne inserted rows like this (probably hashed order for optimization): INFO - QueryLogger - [bind: 1->ipAddress:'XX.XX.XX.97', 2->nat:'false', 3->used:'false'] INFO - QueryLogger - Generated PK: Ip4Address.id = 1 INFO - QueryLogger - === updated 1 row. INFO - QueryLogger - [bind: 1->ipAddress:'XX.XX.XX.71', 2->nat:'false', 3->used:'false'] INFO - QueryLogger - Generated PK: Ip4Address.id = 2 INFO - QueryLogger - === updated 1 row. Is there any way how to override this mechanism in order to preserve order of inserted rows? TIA, -- Marek Šabo