[hibernate-dev] any suggestion about how to fix HHH-5992?
Max Rydahl Andersen
max.andersen at redhat.com
Wed Nov 30 12:10:53 EST 2011
> Well a long term solution is to move to resultset value extraction based on position rather than name. Which I believe we should do, but it wont happen any time soon. That would actually fix this problem.
Yes, but you would still have the problem then for auto discovered scalar queries into a map.
smaller corner case at least ;)
/max
>
>
> On Wed 30 Nov 2011 10:57:31 AM CST, Max Rydahl Andersen wrote:
>>
>> On Nov 30, 2011, at 15:22, Steve Ebersole wrote:
>>
>>> Not sure when you sent this out, but I already fixed this (my) yeasterday. The only real option, IMO, is to throw an exception. As long as we are tied to pulling resultset values based on column name this is going to be a situation that we simply cannot reasonably support. Modifying the sql query is extremely difficult.
>>
>> Agreed - seems you throw only when duplicated aliases and with auto discovery - that seems like the best option yes.
>>
>> Might break existing queries though - but thats better than the silent bug problem.
>>
>> /max
>>
>>
>>>
>>>
>>>
>>> On Tue 29 Nov 2011 11:37:59 AM CST, Max Rydahl Andersen wrote:
>>>>> I agree we should not do any magic on a native query; but following
>>>>> this reasoning just anything should be possible, and I wouldn't expect
>>>>> Hibernate to apply such magic to the results either.
>>>>> Why is it even looking at names in the resultset? As a user I'd want
>>>>> it to just return the same ordered sequence of values.
>>>>
>>>> At the time of original implementation there wasn't any other way to do the mapping as I recall.
>>>>
>>>> I guess in this very special case (no scalars, nor entity mappings) adding on the query it could be handled differently.
>>>>
>>>> Note though that we need to ensure if you apply a result transformer to this query it will actually return something sensible
>>>> (i.e. named aliases for a map vs just indexes)
>>>>
>>>> The rearranging of hibernate core might allow for handling this now but I'm not uptodate on that.
>>>>
>>>> /max
>>>>
>>>>> I would consider it very important to allow a full "jdbc fallback"
>>>>> experience, otherwise instead of being a nice tool it becomes an
>>>>> impediment and users will rightfully hate you.
>>>>>
>>>>> Sanne
>>>>>
>>>>> On 29 November 2011 15:25, Max Rydahl Andersen<max.andersen at redhat.com> wrote:
>>>>>> the original idea of the native sql approach is to avoid/reduce doing anything magical with the query since
>>>>>> there is no way to fix these generally without a full sql parser.
>>>>>>
>>>>>> So I would say it works as expected.
>>>>>>
>>>>>> /max
>>>>>>
>>>>>> On Nov 29, 2011, at 11:59, Strong Liu wrote:
>>>>>>
>>>>>>> T_User
>>>>>>> id username
>>>>>>> 1 stliu
>>>>>>> 2 gail
>>>>>>>
>>>>>>> for example a native query sql "select v1.username, v2.username from T_User v1, T_User v2 where v1.id = '1' and v2.id = '2'"
>>>>>>>
>>>>>>> but the query returns ["stliu", "stliu"] instead of the expected ["stliu", "gail"]
>>>>>>>
>>>>>>> this is because hibernate uses column alias (in this case, both are "username") to get the result from ResultSet, and since the two result in RS are all keyed by "username"
>>>>>>>
>>>>>>>
>>>>>>> should we generate a alias for each like hql does?
>>>>>>>
>>>>>>>
>>>>>>> -------------------------
>>>>>>> Best Regards,
>>>>>>>
>>>>>>> Strong Liu<stliu at hibernate.org>
>>>>>>> http://about.me/stliu/bio
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> hibernate-dev mailing list
>>>>>>> hibernate-dev at lists.jboss.org
>>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>>>>
>>>>>> /max
>>>>>> http://about.me/maxandersen
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> hibernate-dev mailing list
>>>>>> hibernate-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>>>>
>>>>
>>>> /max
>>>> http://about.me/maxandersen
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> hibernate-dev mailing list
>>>> hibernate-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>
>>> --
>>> steve at hibernate.org
>>> http://hibernate.org
>>
>> /max
>> http://about.me/maxandersen
>>
>>
>>
>
> --
> steve at hibernate.org
> http://hibernate.org
/max
http://about.me/maxandersen
More information about the hibernate-dev
mailing list