drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-5863) Sortable table incorrectly sorts minor fragments and time elements lexically instead of sorting by implicit value
Date Tue, 31 Oct 2017 21:01:00 GMT

    [ https://issues.apache.org/jira/browse/DRILL-5863?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16227565#comment-16227565
] 

ASF GitHub Bot commented on DRILL-5863:
---------------------------------------

Github user kkhatua commented on a diff in the pull request:

    https://github.com/apache/drill/pull/987#discussion_r148126237
  
    --- Diff: exec/java-exec/src/main/java/org/apache/drill/exec/server/rest/profile/OperatorWrapper.java
---
    @@ -76,12 +77,14 @@ public String getId() {
       public String getContent() {
         TableBuilder builder = new TableBuilder(OPERATOR_COLUMNS, OPERATOR_COLUMNS_TOOLTIP,
true);
     
    +    Map<String, String> attributeMap = new HashMap<String, String>(); //Reusing
for different fragments
         for (ImmutablePair<ImmutablePair<OperatorProfile, Integer>, String> ip
: opsAndHosts) {
           int minor = ip.getLeft().getRight();
           OperatorProfile op = ip.getLeft().getLeft();
     
    +      attributeMap.put("data-order", String.valueOf(minor)); //Overwrite values from
previous fragments
    --- End diff --
    
    You are correct that the values must be zero padded. However, the padding by default is
only up till achieving a width of two digits. The sequencing didn't get messed up as long
as the number of minor fragments for each major fragment was less than 100.
    For greater than 100, the sequencing broke the way you described it.
    So, until this fix, you'll get the minor fragment ordered as: 
    01-01-XX ..... 01-10-XX, 01-100-XX, ....
    instead of 
    01-01-XX ..... 01-10-XX, 01-11-XX, .... 01-10-XX, 01-11-XX, .... 01-100-XX, 01-101-XX
    
    What we are doing is injecting the <td> element with an attribute that carries the
actual numeric value. The dataTable library will discover and sort the elements of a column
by the value of this attribute instead of the value that the element encapsulates.


> Sortable table incorrectly sorts minor fragments and time elements lexically instead
of sorting by implicit value
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-5863
>                 URL: https://issues.apache.org/jira/browse/DRILL-5863
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Web Server
>    Affects Versions: 1.12.0
>            Reporter: Kunal Khatua
>            Assignee: Kunal Khatua
>            Priority: Minor
>             Fix For: 1.12.0
>
>
> The fix for this is to use dataTable library's {{data-order}} attribute for the data
elements that need to sort by an implicit value.
> ||Old order of Minor Fragment||New order of Minor Fragment||
> |...|...|
> |01-09-01  | 01-09-01|
> |01-10-01  | 01-10-01|
> |01-100-01 | 01-11-01|
> |01-101-01 | 01-12-01|
> |... | ... |
> ||Old order of Duration||New order of Duration|||
> |...|...|
> |1m15s  | 55.03s|
> |55s  | 1m15s|
> |...|...|



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message