Hi all,

I came across with an issue regarding comparing a long value.
My intention was to check if the time difference is greater that 30 days,
and then insert the corresponding values to target stream.

I tested this behavior with APIM Analytics 2.0.0.

However I noticed an unusual behavior.

I have mentioned an example stream below.

*define stream democondition (timediff long, status bool);*

*define stream finalStream (timediff long, status bool);*

*from democondition[timediff > 30*24*60*60*1000]*
*select timediff, status*
*insert into finalStream;*

Ideally, If I give a value greater than 30*24*60*60*1000 only, values
should be inserted into finalStream.
However I observed even if I give 1 as timeDiff, the values in timeDiff and
status get inserted into finalStream.

When I check the validity of the execution plan through the admin console,
it gets success.
However I replaced the value 30*24*60*60*1000 with 2592000000 and it
produces and error.

However when I append the "l" add the end (2592000000l), it got worked.
I tried to use the same with 30*24*60*60*1000 -> 30l*24l*60l*60l*1000l and
I couldn't get it worked since it produce an error while validating the

The reason I am using 30*24*60*60*1000 is because I want the value "30" to
be configured. It should be changed using the template manager.

Please advice on how should I get it into working?


Dinusha Dissanayake
Software Engineer
WSO2 Inc
Mobile: +94712939439 <+94%2071%20293%209439>
Dev mailing list

Reply via email to