Bug 15447 - SBC fails to find all songs when searching
: SBC fails to find all songs when searching
Status: CLOSED FIXED
Product: SB Controller
Classification: Unclassified
Component: UI
: unspecified
: PC Windows XP
: P2 major (vote)
: 7.5.0
Assigned To: Ben Klaas
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-01-09 05:27 UTC by Finn Brodersen
Modified: 2010-04-08 17:24 UTC (History)
4 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Finn Brodersen 2010-01-09 05:27:52 UTC
Hi

When searching for songs "Home - Search - Songs" the SBC fails to find all the songs found by the web interface on the PC running SBS


Squeezebox Server Status 
Version: 7.4.2 - r29707 @ Wed Dec 30 04:03:03 PST 2009 
Hostname: xxx
Server IP Address: xxx
Server HTTP Port Number: 9001 
Operating system: Windows XP - EN - cp1252 
Platform Architecture: 586 
Perl Version: 5.10.0 - MSWin32-x86-multi-thread 
MySQL Version: 5.0.22-community-nt 
Total Players Recognized: 1   

SBC  7.4.1 r7915
Comment 1 Michael Herger 2010-01-10 23:39:32 UTC
In what way does it fail? What are you looking for? What does it not find? Any pattern?
Comment 2 Finn Brodersen 2010-01-16 07:49:21 UTC
Hi

I tried to investigate a little more.

It turns out the SBC seams to return one less hit than the SBS web search interface.

e.g. When searching for songs with the search key "nobody" SBC returns 17 hits, but SBS returns 18 :-)

When searching for "dong" SBC returns 11 hits and SBS returns 12 hits.

this is true for other searches as well

maybe there is a +-1 problem somewhere ?
Comment 3 Chris Owens 2010-02-01 08:53:56 UTC
Finn, is it always the same song that is not found?  Is there anything unusual about that song's title or filename?
Comment 4 Finn Brodersen 2010-02-02 08:50:57 UTC
hi

I am running 7.4.2 r29959 now and the bug is still there

SBC is always (95% sure of this) showing one less hit than the SBS search interface.

I am not able to find any pattern in the songs missing in the SBC search

e.g.


searching for "beso" SBS returns

1-17. El Beso by Xavier Cugat from Instrumental Moods    
1. Por un Beso by Gloria Estefan from Alma Caribeña    
10. Por un Beso by Gloria Estefan from Amor y Suerte 

SBC fails to find the last, but it is found when searching for "por"



searching for "yet" SBS returns
20. Not over you yet (Metro radio edit) by Diana Ross from Love & Life    
17. You Ain't Seen Nothing Yet by Bachman Turner Overdrive from Hits Of 73 & 74, Vol. 5    
2-14. I Haven't Stopped Dancing Yet by Pat & Mick from Stock Aitken Waterman Gold 

SBC fails to find the second, but it is found when searching for "nothing"

I can give countless other examples, but I'm not able to find any pattern in the missing hits.


Maybe I can enable some debug switch which allows to debug the problem ?


Is the problem when searching for the LAST part of a song title I wonder ??
Comment 5 Chris Owens 2010-02-02 13:10:15 UTC
Sure there are some debugging settings.  Click on the Squeezebox icon in the system tray and select 'Open Web Control...'.  Then select "Settings"  Go to the "Advanced" tab.  Select "Logging" from the drop-down menu.  Go to scan.info, and select "Debug"

If it turns out to be caused by that one song, could you attach the song to the bug so our devs can easily reproduce the problem?
Comment 6 Finn Brodersen 2010-02-03 09:16:22 UTC
some

debugging info

search for "beso"

[10-02-03 18:00:49.6741] Slim::Control::Request::dump (2417) Request: Query [00:04:20:16:24:f6->tracks] from /9aa772b9/slim/request|1154|  (Dispatchable)
[10-02-03 18:00:49.6746] Slim::Control::Request::dump (2419)    Param: [search] = [beso]
[10-02-03 18:00:49.6751] Slim::Control::Request::dump (2419)    Param: [menu_all] = [1]
[10-02-03 18:00:49.6755] Slim::Control::Request::dump (2419)    Param: [_index] = [0]
[10-02-03 18:00:49.6760] Slim::Control::Request::dump (2419)    Param: [menu] = [track]
[10-02-03 18:00:49.6764] Slim::Control::Request::dump (2419)    Param: [_quantity] = [200]
[10-02-03 18:00:49.6769] Slim::Control::Request::dump (2419)    Param: [menuStyle] = [album]
[10-02-03 18:00:49.6773] Slim::Control::Request::dump (2419)    Param: [_searchType] = [tracks]
[10-02-03 18:00:49.6778] Slim::Control::Request::dump (2419)    Param: [useContextMenu] = [1]

result

[10-02-03 18:00:49.8958] Slim::Control::Request::dump (2443)    Result: [base] = [HASH(0x6a5d124)]
[10-02-03 18:00:49.8963] Slim::Control::Request::dump (2443)    Result: [count] = [3]
[10-02-03 18:00:49.8968] Slim::Control::Request::dump (2430)    Result: [item_loop] is loop with 4 elements:
[10-02-03 18:00:49.8972] Slim::Control::Request::dump (2437)    Result:   0. [actions] = [HASH(0x753e0a4)]
[10-02-03 18:00:49.8977] Slim::Control::Request::dump (2437)    Result:   0. [icon-id] = [/html/images/playall.png]
[10-02-03 18:00:49.8981] Slim::Control::Request::dump (2437)    Result:   0. [text] = [Play all]
[10-02-03 18:00:49.8986] Slim::Control::Request::dump (2437)    Result:   0. [style] = [itemplay]
[10-02-03 18:00:49.8990] Slim::Control::Request::dump (2437)    Result:   1. [params] = [HASH(0x59dfc64)]
[10-02-03 18:00:49.8995] Slim::Control::Request::dump (2437)    Result:   1. [window] = [HASH(0x73896ec)]
[10-02-03 18:00:49.8999] Slim::Control::Request::dump (2437)    Result:   1. [icon-id] = [9230]
[10-02-03 18:00:49.9004] Slim::Control::Request::dump (2437)    Result:   1. [text] = [El Beso
Xavier Cugat - Instrumental Moods]
[10-02-03 18:00:49.9009] Slim::Control::Request::dump (2437)    Result:   1. [style] = [itemplay]
[10-02-03 18:00:49.9013] Slim::Control::Request::dump (2437)    Result:   2. [params] = [HASH(0x7587b24)]
[10-02-03 18:00:49.9018] Slim::Control::Request::dump (2437)    Result:   2. [window] = [HASH(0x753e374)]
[10-02-03 18:00:49.9022] Slim::Control::Request::dump (2437)    Result:   2. [icon-id] = [2794]
[10-02-03 18:00:49.9027] Slim::Control::Request::dump (2437)    Result:   2. [text] = [Por un Beso
Gloria Estefan - Alma Caribeña]
[10-02-03 18:00:49.9031] Slim::Control::Request::dump (2437)    Result:   2. [style] = [itemplay]
[10-02-03 18:00:49.9036] Slim::Control::Request::dump (2437)    Result:   3. [params] = [HASH(0x789e8f4)]
[10-02-03 18:00:49.9040] Slim::Control::Request::dump (2437)    Result:   3. [window] = [HASH(0x787a224)]
[10-02-03 18:00:49.9045] Slim::Control::Request::dump (2437)    Result:   3. [icon-id] = [2816]
[10-02-03 18:00:49.9050] Slim::Control::Request::dump (2437)    Result:   3. [text] = [Por un Beso
Gloria Estefan - Amor y Suerte]
[10-02-03 18:00:49.9054] Slim::Control::Request::dump (2437)    Result:   3. [style] = [itemplay]
[10-02-03 18:00:49.9059] Slim::Control::Request::dump (2443)    Result: [offset] = [0]

the last (result 3) is NOT show on the SBC display

e.g.

searching for "yet"

[10-02-03 17:57:26.1430] Slim::Control::Request::dump (2417) Request: Query [00:04:20:16:24:f6->tracks] from /9aa772b9/slim/request|1153|  (Dispatchable)
[10-02-03 17:57:26.1435] Slim::Control::Request::dump (2419)    Param: [search] = [yet]
[10-02-03 17:57:26.1440] Slim::Control::Request::dump (2419)    Param: [menu_all] = [1]
[10-02-03 17:57:26.1444] Slim::Control::Request::dump (2419)    Param: [_index] = [0]
[10-02-03 17:57:26.1449] Slim::Control::Request::dump (2419)    Param: [menu] = [track]
[10-02-03 17:57:26.1453] Slim::Control::Request::dump (2419)    Param: [_quantity] = [200]
[10-02-03 17:57:26.1458] Slim::Control::Request::dump (2419)    Param: [menuStyle] = [album]
[10-02-03 17:57:26.1462] Slim::Control::Request::dump (2419)    Param: [_searchType] = [tracks]
[10-02-03 17:57:26.1467] Slim::Control::Request::dump (2419)    Param: [useContextMenu] = [1]

result

[10-02-03 17:57:26.3695] Slim::Control::Request::dump (2443)    Result: [base] = [HASH(0x7879df4)]
[10-02-03 17:57:26.3699] Slim::Control::Request::dump (2443)    Result: [count] = [3]
[10-02-03 17:57:26.3704] Slim::Control::Request::dump (2430)    Result: [item_loop] is loop with 4 elements:
[10-02-03 17:57:26.3709] Slim::Control::Request::dump (2437)    Result:   0. [actions] = [HASH(0x782968c)]
[10-02-03 17:57:26.3713] Slim::Control::Request::dump (2437)    Result:   0. [icon-id] = [/html/images/playall.png]
[10-02-03 17:57:26.3718] Slim::Control::Request::dump (2437)    Result:   0. [text] = [Play all]
[10-02-03 17:57:26.3722] Slim::Control::Request::dump (2437)    Result:   0. [style] = [itemplay]
[10-02-03 17:57:26.3727] Slim::Control::Request::dump (2437)    Result:   1. [params] = [HASH(0x787a764)]
[10-02-03 17:57:26.3732] Slim::Control::Request::dump (2437)    Result:   1. [window] = [HASH(0x789e634)]
[10-02-03 17:57:26.3736] Slim::Control::Request::dump (2437)    Result:   1. [icon-id] = [10027]
[10-02-03 17:57:26.3741] Slim::Control::Request::dump (2437)    Result:   1. [text] = [I Haven't Stopped Dancing Yet
Pat & Mick - Stock Aitken Waterman Gold]
[10-02-03 17:57:26.3745] Slim::Control::Request::dump (2437)    Result:   1. [style] = [itemplay]
[10-02-03 17:57:26.3750] Slim::Control::Request::dump (2437)    Result:   2. [params] = [HASH(0x76f1bd4)]
[10-02-03 17:57:26.3754] Slim::Control::Request::dump (2437)    Result:   2. [window] = [HASH(0x78b5574)]
[10-02-03 17:57:26.3759] Slim::Control::Request::dump (2437)    Result:   2. [icon-id] = [1604]
[10-02-03 17:57:26.3764] Slim::Control::Request::dump (2437)    Result:   2. [text] = [Not over you yet (Metro radio edit)
Diana Ross - Love & Life]
[10-02-03 17:57:26.3768] Slim::Control::Request::dump (2437)    Result:   2. [style] = [itemplay]
[10-02-03 17:57:26.3773] Slim::Control::Request::dump (2437)    Result:   3. [params] = [HASH(0x7846f7c)]
[10-02-03 17:57:26.3777] Slim::Control::Request::dump (2437)    Result:   3. [window] = [HASH(0x753bbf4)]
[10-02-03 17:57:26.3782] Slim::Control::Request::dump (2437)    Result:   3. [text] = [You Ain't Seen Nothing Yet
Bachman Turner Overdrive - Hits Of 73 & 74, Vol. 5]
[10-02-03 17:57:26.3787] Slim::Control::Request::dump (2437)    Result:   3. [style] = [itemplay]
[10-02-03 17:57:26.3791] Slim::Control::Request::dump (2443)    Result: [offset] = [0]

again the LAST (result 3) is not shown on the SBC

A search with a longer result, e.g. "yesterday" does the same, the last song in the result list is not shown
Comment 7 Chris Owens 2010-02-05 17:19:10 UTC
Ben I'm assigning this to you since it seems different on SP than on the web ui.  However I certainly don't know if the root cause is something you can fix.
Comment 8 Ben Klaas 2010-02-06 07:03:14 UTC
Michael, if you feel differently feel free to pass back to me, but I think this one should be yours...
Comment 9 Ben Klaas 2010-02-06 07:05:26 UTC
Hmmm...actually maybe not. Since it's off by 1 this is really just as much mine as Michael's to fix. I'm sure this is another glorious incarnation of our issues with chunked responses and "special" items for browse lists.
Comment 10 SVN Bot 2010-02-17 14:41:45 UTC
 == Auto-comment from SVN commit #30191 to the  repo by bklaas ==
 == https://svn.slimdevices.com/?view=revision&revision=30191 ==

Fixed Bug: 15447
Description: titlesQuery inserts a playAll item on SP menus for song searches, so do the appropriate _fixCount() call to correct for the extra item and not cutoff the last search result.
Comment 11 SVN Bot 2010-02-17 14:51:42 UTC
 == Auto-comment from SVN commit #30193 to the  repo by bklaas ==
 == https://svn.slimdevices.com/?view=revision&revision=30193 ==

Bug: 15447
Description: reverting change as it broke normal track listings for albums.
I'll revisit this tomorrow.
Comment 12 Ben Klaas 2010-02-17 14:52:52 UTC
my checkin broke normal track listings, so I've reverted it. Reopening bug.
Comment 13 SVN Bot 2010-02-18 08:31:42 UTC
 == Auto-comment from SVN commit #30198 to the  repo by bklaas ==
 == https://svn.slimdevices.com/?view=revision&revision=30198 ==

Fixed Bug: 15447
Description: _fixCount() should only happen when we are inserting a Play All item, and in titlesQuery that check is both $insertAll and $search being true
step back a couple info level messages to debug
Comment 14 Finn Brodersen 2010-03-01 02:12:12 UTC
is it only fixed if 7.5.0?
Comment 15 Chris Owens 2010-04-08 17:24:54 UTC
This bug has been marked fixed in a released version of Squeezebox Server or the accompanying firmware or mysqueezebox.com release.

If you are still seeing this issue, please let us know!