lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dominique Bejean <dominique.bej...@eolya.fr>
Subject Re: Innerjoin streaming expressions - Invalid JoinStream error
Date Tue, 18 Apr 2017 13:49:34 GMT
Furthermore, it looks like due to the fact "all incoming stream comparators
(sort) must be a superset of this stream's equalitor" condition, it isn't
possible to sort the stream on a other field such as for instance in my
example pubyear_s (books collection) or review_dt (reviews collection).

Dominique


Le mar. 18 avr. 2017 à 15:28, Dominique Bejean <dominique.bejean@eolya.fr>
a écrit :

> Hi,
>
> I reply to myself
>
> I just had to invert the "on" clause to make it work
>
> curl --data-urlencode 'expr=innerJoin(
>                                 search(books,
>                                    q="*:*",
>                                    fl="id",
>                                    sort="id asc"),
>                                 searchreviews,
>                                    q="*:*",
>                                    fl="id_book_s",
>                                    sort="id_book_s asc"),
>                                 on="id_books_s=id"
>                             )' http://localhost:8983/solr/books/stream
>
>
> 
>
> {
>   "result-set": {
>     "docs": [
>       {
>         "title_s": "The Way of Kings",
>         "pubyear_i": 2010,
>         "stars_i": 5,
>         "id": "book1",
>         "id_book_s": "book1",
>         "review_dt": "2015-01-03T14:30:00Z"
>       },
>       {
>         "title_s": "The Way of Kings",
>         "pubyear_i": 2010,
>         "stars_i": 3,
>         "id": "book1",
>         "id_book_s": "book1",
>         "review_dt": "2014-03-15T12:00:00Z"
>       },
>       {
>         "title_s": "The Way of Kings",
>         "pubyear_i": 2010,
>         "stars_i": 4,
>         "id": "book1",
>         "id_book_s": "book1",
>         "review_dt": "2014-12-15T12:00:00Z"
>       },
>       {
>         "title_s": "Friends",
>         "pubyear_i": 1994,
>         "stars_i": 5,
>         "id": "book2",
>         "id_book_s": "book2",
>         "review_dt": "1995-01-03T14:30:00Z"
>       },
>       {
>         "title_s": "Friends",
>         "pubyear_i": 1994,
>         "stars_i": 3,
>         "id": "book2",
>         "id_book_s": "book2",
>         "review_dt": "1994-03-15T12:00:00Z"
>       },
>       {
>         "title_s": "Friends",
>         "pubyear_i": 1994,
>         "stars_i": 4,
>         "id": "book2",
>         "id_book_s": "book2",
>         "review_dt": "1994-12-15T12:00:00Z"
>       },
>       {
>         "EOF": true,
>         "RESPONSE_TIME": 35
>       }
>     ]
>   }
> }
>
>
> However, I don't understand the reason as in debug mode I see
> the isValidTupleOrder method should return true in both case.
>
> Regards.
>
> Dominique
>
>
>
>
>
> Le mar. 18 avr. 2017 à 14:51, Joel Bernstein <joelsolr@gmail.com> a
> écrit :
>
>>  I looked through the test cases I don't think we have this covered
>> exactly
>> as it's written.  Can you log a jira for this?
>>
>> Joel Bernstein
>> http://joelsolr.blogspot.com/
>>
>> On Tue, Apr 18, 2017 at 6:33 AM, Dominique Bejean <
>> dominique.bejean@eolya.fr
>> > wrote:
>>
>> > Hi,
>> >
>> > I don not understand what I am doing wrong il this simple query.
>> >
>> > curl --data-urlencode 'expr=innerJoin(
>> >                                 search(books,
>> >                                    q="*:*",
>> >                                    fl="id",
>> >                                    sort="id asc"),
>> >                                 searchreviews,
>> >                                    q="*:*",
>> >                                    fl="id_book_s",
>> >                                    sort="id_book_s asc"),
>> >                                 on="id=id_books_s"
>> >                             )' http://localhost:8983/solr/books/stream
>> >
>> > {"result-set":{"docs":[{"EXCEPTION":"Invalid JoinStream - all incoming
>> > stream comparators (sort) must be a superset of this stream's
>> > equalitor.","EOF":true}]}}
>> >
>> >
>> > It is tottaly similar to the documentation example
>> > 
>> > innerJoin(
>> >   search(people, q=*:*, fl="personId,name", sort="personId asc"),
>> >   search(pets, q=type:cat, fl="ownerId,petName", sort="ownerId asc"),
>> >   on="personId=ownerId"
>> > )
>> >
>> >
>> >
>> > Queries on each collection give :
>> >
>> > $ curl --data-urlencode 'expr=search(books,
>> >                                    q="*:*",
>> >                                    fl="id, title_s, pubyear_i",
>> >                                    sort="pubyear_i asc",
>> >                                    qt="/export")'
>> > http://localhost:8983/solr/books/stream
>> >
>> > {
>> >   "result-set": {
>> >     "docs": [
>> >       {
>> >         "title_s": "Friends",
>> >         "pubyear_i": 1994,
>> >         "id": "book2"
>> >       },
>> >       {
>> >         "title_s": "The Way of Kings",
>> >         "pubyear_i": 2010,
>> >         "id": "book1"
>> >       },
>> >       {
>> >         "EOF": true,
>> >         "RESPONSE_TIME": 16
>> >       }
>> >     ]
>> >   }
>> > }
>> >
>> >
>> > $ curl --data-urlencode 'expr=search(reviews,
>> >                                    q="author_s:d*",
>> >                                    fl="id, id_book_s, stars_i,
>> review_dt",
>> >                                    sort="id_book_s asc",
>> >                                    qt="/export")'
>> > http://localhost:8983/solr/reviews/stream
>> >
>> > {
>> >   "result-set": {
>> >     "docs": [
>> >       {
>> >         "stars_i": 3,
>> >         "id": "book1_c2",
>> >         "id_book_s": "book1",
>> >         "review_dt": "2014-03-15T12:00:00Z"
>> >       },
>> >       {
>> >         "stars_i": 4,
>> >         "id": "book1_c3",
>> >         "id_book_s": "book1",
>> >         "review_dt": "2014-12-15T12:00:00Z"
>> >       },
>> >       {
>> >         "stars_i": 3,
>> >         "id": "book2_c2",
>> >         "id_book_s": "book2",
>> >         "review_dt": "1994-03-15T12:00:00Z"
>> >       },
>> >       {
>> >         "stars_i": 4,
>> >         "id": "book2_c3",
>> >         "id_book_s": "book2",
>> >         "review_dt": "1994-12-15T12:00:00Z"
>> >       },
>> >       {
>> >         "EOF": true,
>> >         "RESPONSE_TIME": 47
>> >       }
>> >     ]
>> >   }
>> > }
>> >
>> >
>> > Can someone help me to find my mistake ?
>> >
>> > Regards
>> >
>> > Dominique
>> > --
>> > Dominique Béjean
>> > 06 08 46 12 43
>> >
>>
> --
> Dominique Béjean
> 06 08 46 12 43
>
-- 
Dominique Béjean
06 08 46 12 43

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message