Re: Streaming Expression intersect() behaviour

2018-06-08 Thread Joel Bernstein
yes, I was going to suggest that as well. Joel Bernstein http://joelsolr.blogspot.com/ On Fri, Jun 8, 2018 at 9:20 AM, Christian Spitzlay < christian.spitz...@biologis.com> wrote: > As a temporary workaround until that issue is fixed > one could wrap the right stream with a select that renames t

Re: Streaming Expression intersect() behaviour

2018-06-08 Thread Christian Spitzlay
As a temporary workaround until that issue is fixed one could wrap the right stream with a select that renames the field: intersect( cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA asc"), select(cartesianProduct(tuple(fieldB=array(a,c)), fieldB, productSort="fieldB as

Re: Streaming Expression intersect() behaviour

2018-06-08 Thread Joel Bernstein
You're correct, after testing again the only way that this works correctly appears to be: intersect( cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA asc"), cartesianProduct(tuple(fieldA=array(a,c)), fieldA, productSort="fieldA asc"), on="fieldA" ) I suspect that the

Re: Streaming Expression intersect() behaviour

2018-06-08 Thread Christian Spitzlay
Hi, > Am 08.06.2018 um 03:42 schrieb Joel Bernstein : > > And when you transpose the "on" fields like this: > > intersect( > cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA > asc"), > cartesianProduct(tuple(fieldB=array(a,c)), fieldB, productSort="fieldB > asc"), > on

Re: Streaming Expression intersect() behaviour

2018-06-07 Thread Joel Bernstein
This expression works as expected: intersect( cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA asc"), cartesianProduct(tuple(fieldA=array(a,c)), fieldA, productSort="fieldA asc"), on="fieldA" ) And when you transpose the "on" fields like this: intersect( cartesianProdu

Re: Streaming Expression intersect() behaviour

2018-06-07 Thread Christian Spitzlay
> Am 07.06.2018 um 11:34 schrieb Christian Spitzlay > : > > intersect( > cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA > asc"), > cartesianProduct(tuple(fieldB=array(a,c)), fieldB, productSort="fieldB asc"), > on="fieldA=fieldB" > ) > > I simplified it a bit, too

Re: Streaming Expression intersect() behaviour

2018-06-07 Thread Joel Bernstein
Nice example! I'll take a look at this today. I believe there was/is a bug with the some of the joins where the "on" parameter is transposing the fields. Its possible that is the case here as well. Joel Bernstein http://joelsolr.blogspot.com/ On Thu, Jun 7, 2018 at 5:34 AM, Christian Spitzlay

Re: Streaming Expression intersect() behaviour

2018-06-07 Thread Christian Spitzlay
Hi, I noticed that my mail program broke the test case by replacing a double quote with a different UTF-8 character. Here is the test case again and I hope it will work this time: intersect( cartesianProduct(tuple(fieldA=array(a,b,c,c)), fieldA, productSort="fieldA asc"), cartesianProduct(tuple

Streaming Expression intersect() behaviour

2018-06-06 Thread Christian Spitzlay
Hi, I don’t seem to get the behaviour of the intersect() stream decorator. I only ever get one doc from the left stream when I would have expected more than one. I constructed a test case that does not depend on my concrete index: intersect( cartesianProduct(tuple(fieldA=array(c,c,a,b,d,d)), fi