[hibernate-dev] Could UUID be one of the default strategy when AUTO is requested
Steve Ebersole
steve at hibernate.org
Fri Jan 23 08:36:57 EST 2015
Just to clarify, there are 2 things here. Gail the 2 issues you mention
are only tangentially related.
What Emmanuel is asking about it the determination of the id gen strategy
to use when we see AUTO. The real difficulty there is that the code, as it
was originally written, is hard to isolate. It does quite a few things and
iirc it does them in different places.
Part of what AUTO interpretation does is to set the Type name. If we start
supporting UUID with AUTO (and again I vote we should), then that is where
these other issues come up. I left a pretty detailed comment on HHH-9574
On Tue, Jan 20, 2015 at 9:41 AM, Steve Ebersole <steve at hibernate.org> wrote:
> The problem with both of these is the lack of knowing Dialect when
> building the mapping model. 5.0 is a first step toward fixing that. 6.0
> (metamodel) is the complete step.
>
> In general there are a lot of things we can do knowing the Dialect while
> building the mapping model, things we cannot do now.
>
> On Mon, Jan 19, 2015 at 3:44 PM, Gail Badner <gbadner at redhat.com> wrote:
>
>> There are some jiras for using UUIDs (in general, not specifically for
>> IDs) for using a single mapping that would work for different dialects:
>> - https://hibernate.atlassian.net/browse/HHH-9562
>> - https://hibernate.atlassian.net/browse/HHH-9574
>>
>> It seems that these are related...
>>
>> ----- Original Message -----
>> > From: "Gunnar Morling" <gunnar at hibernate.org>
>> > To: "Sanne Grinovero" <sanne at hibernate.org>
>> > Cc: "Hibernate Dev" <hibernate-dev at lists.jboss.org>
>> > Sent: Monday, January 19, 2015 8:15:42 AM
>> > Subject: Re: [hibernate-dev] Could UUID be one of the default strategy
>> when AUTO is requested
>> >
>> > We discussed a while ago whether it should be pluggable how AUTO is
>> > resolved:
>> >
>> https://lists.jboss.org/pipermail/hibernate-dev/2014-November/011948.html
>> >
>> > I still think that's a good idea.
>> >
>> > In the case of OGM, it may even be a bit more complex. For example with
>> > MongoDB the following should result in IDENTITY being used (which is
>> mapped
>> > to store-assigned object ids) rather than UUID:
>> >
>> > @Id
>> > @GeneratedValue(strategy = GenerationType.AUTO)
>> > @Type(type = "objectid")
>> > String id;
>> >
>> > So the @Type would have to be taken into account as well for mapping
>> AUTO.
>> >
>> > > For String, I wonder if someone would argue that it should actually
>> map
>> > to a string-encoded output of a sequence.. "1", "2" ...
>> >
>> > I don't think you can use sequences with String (only numeric values),
>> so
>> > anyone having this expectation would also be unhappy as of today.
>> >
>> > --Gunnar
>> >
>> >
>> > 2015-01-19 15:58 GMT+01:00 Sanne Grinovero <sanne at hibernate.org>:
>> >
>> > > On 19 January 2015 at 13:33, Emmanuel Bernard <emmanuel at hibernate.org
>> >
>> > > wrote:
>> > > > Hey,
>> > > >
>> > > > I am throwing an idea, let me know what you think.
>> > > > If the return type of the id property of an entity is either String
>> or
>> > > UUID, could we automatically consider one fo the uuid strategy as the
>> one
>> > > matching AUTO?
>> > >
>> > > +1
>> > > That seems spot-on for the UUID type.
>> > > For String, I wonder if someone would argue that it should actually
>> > > map to a string-encoded output of a sequence.. "1", "2" ...
>> > > I'd personally agree that this is horrible and it should default to
>> > > UUID, just wondering.
>> > >
>> > > Would this violate any spec?
>> > >
>> > > >
>> > > > It would be useful for Hibernate OGM but I am also thinking that it
>> > > makes equal sense to Hibernate ORM users.
>> > > >
>> > > > Thoughts? I’m sure there are incompatibilities I have not think of.
>> > > >
>> > > > Emmanuel
>> > > > _______________________________________________
>> > > > hibernate-dev mailing list
>> > > > hibernate-dev at lists.jboss.org
>> > > > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>> > >
>> > > _______________________________________________
>> > > hibernate-dev mailing list
>> > > hibernate-dev at lists.jboss.org
>> > > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>> > >
>> > _______________________________________________
>> > hibernate-dev mailing list
>> > hibernate-dev at lists.jboss.org
>> > https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>> _______________________________________________
>> hibernate-dev mailing list
>> hibernate-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>
>
More information about the hibernate-dev
mailing list