[jira] [Updated] (OFBIZ-10298) Fluent API Bug in getFieldList()

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Updated] (OFBIZ-10298) Fluent API Bug in getFieldList()

Nicolas Malin (Jira)

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

Michael Brohl updated OFBIZ-10298:
----------------------------------
               Sprint: OFBiz Community Day (Feb 2020)
    Affects Version/s: Release Branch 18.12
                       Release Branch 17.12

> 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: Trunk, Release Branch 17.12, Release Branch 18.12
>            Reporter: Benjamin Jugl
>            Assignee: Michael Brohl
>            Priority: Minor
>         Attachments: 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)