[ 
https://issues.apache.org/jira/browse/OFBIZ-10298?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Brohl updated OFBIZ-10298:
----------------------------------
    Attachment: OFBIZ-10298_fluent_API_Bug.patch

> Fluent API Bug in getFieldList()
> --------------------------------
>
>                 Key: OFBIZ-10298
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-10298
>             Project: OFBiz
>          Issue Type: Bug
>          Components: framework
>    Affects Versions: Release Branch 18.12, Release Branch 17.12, Trunk
>            Reporter: Benjamin Jugl
>            Assignee: Michael Brohl
>            Priority: Minor
>         Attachments: OFBIZ-10298_fluent_API_Bug.patch, 
> OFBIZ-10298_org.apache.ofbiz.entity.util_distinct_to_primitive.patch, 
> OFBIZ-10298_org.apache.ofbiz.entity.util_getFieldList_Fix.patch
>
>
> In EntityQuery the method getFieldList() uses the class variable {{distinct}} 
> to decide if the list of genericValues should be stored in a set to eliminate 
> duplicate values. This variable is set by the function distinct() and 
> normally it should only be used for the sql statement. But here the flag gets 
> mistreated since, if the list of values was ordered because of orderBy(), the 
> order of values gets lost by putting them into a set. To summarize, the 
> following statement:
> {{....orderBy("...").dinstinct().getFieldLlist("...");}}
> does not produce an ordered list.
> Replacing the HashSet by a LinkedHashSet fixes this issue.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to