You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2017/10/02 17:59:02 UTC

[jira] [Commented] (ASTERIXDB-2119) Project Rule has non-deterministic ordering of variables

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

ASF subversion and git services commented on ASTERIXDB-2119:
------------------------------------------------------------

Commit ce348d68475a88c9bbf364abc284b64ac7f17e34 in asterixdb's branch refs/heads/master from [~luochen01]
[ https://git-wip-us.apache.org/repos/asf?p=asterixdb.git;h=ce348d6 ]

[ASTERIXDB-2119][COMP] Fix variable ordering of projects

- user model changes: no
- storage format changes: no
- interface changes: no

Details:

The current IntroduceProjectsRule implementation uses HashSet to
calculate projected variables, which makes the ordering of output
variables unpreditable. This patch fixes this undesired behavior by
using LinkedHashSet to ensure the project variables have the same
ordering from the original variables.

Change-Id: Id96a5fe048dd11b7f2e97f4d4a802736ba5ba003
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2043
Sonar-Qube: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Contrib: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Taewoo Kim <wa...@gmail.com>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>


> Project Rule has non-deterministic ordering of variables
> --------------------------------------------------------
>
>                 Key: ASTERIXDB-2119
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-2119
>             Project: Apache AsterixDB
>          Issue Type: Improvement
>          Components: COMP - Compiler
>            Reporter: Chen Luo
>            Assignee: Chen Luo
>
> IntroduceProjectsRule introduces projections whenever needed to eliminate unnecessary variables. However, the current implementation depends on HashSet, which makes the ordering of output variables indeterministic. This is undesirable for tests, and some operators which may depend on the ordering of variables.



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