Hi,

Thank you for the kind words, Alexey.

I was able to reproduce your bug and I have also found the issue.

The problem is that we did not create the parser with the engine_options used 
in the yaql library by default when using the CLI.
Specifically, the "yaql.limitIterators" was missing… I am not sure that this 
settings should have this affect but maybe the Yaql guys can comment on that.

If we will change yaqluator to use this setting it will mean that yaqluator 
will not be consistent with Mistral because Mistral is using YAQL without this 
engine option (If I use your example in a workflow, Mistral returns exactly 
like the yaqluator returns)


Workflow:


---
version: '2.0'

test_yaql:
  tasks:
    test_yaql:
      action: std.noop
      publish:
        output_expr: <% [1,2].join([3], true, [$1, $2]) %>

Workflow result:


[root@s53-19 ~(keystone_admin)]# mistral task-get-published 
01d2bce3-20d0-47b2-84f2-7bd1cb2bf9f7
{
    "output_expr": [
        [
            1,
            3
        ]
    ]
}


As Matthews pointed out, the yaqluator is indeed OpenSource and contributions 
are welcomed.

[1] 
https://github.com/ALU-CloudBand/yaqluator/commit/e523dacdde716d200b5ed1015543d4c4680c98c2



From: Dougal Matthews <[email protected]<mailto:[email protected]>>
Reply-To: "OpenStack Development Mailing List (not for usage questions)" 
<[email protected]<mailto:[email protected]>>
Date: Monday, 27 June 2016 at 16:44
To: "OpenStack Development Mailing List (not for usage questions)" 
<[email protected]<mailto:[email protected]>>
Subject: Re: [openstack-dev] [mistral] [murano] [yaql] yaqluator bug

On 27 June 2016 at 14:30, Alexey Khivin 
<[email protected]<mailto:[email protected]>> wrote:
Hello, Moshe

Tomorrow I discovered yaqluator.com<http://yaqluator.com> for myself! Thanks 
for the useful tool!

But suddenly I was said that the expression
[1,2].join([3], true, [$1, $2])
evaluated to [[1,3]] on the yaqluator

A the same time this expression evaluated right when I using raw yaql 
interpreter.

Could we fix this issue?

By the way, don't you want to make yaqluator opensource? If you would transfer 
yaqluator to Openstack Foundation, then  community will be able to fix such 
kind of bugs

It looks like it is open source, there is a link in the footer: 
https://github.com/ALU-CloudBand/yaqluator


Thank you!
Best regards, Alexey Khivin



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
[email protected]?subject:unsubscribe<http://[email protected]?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to