Modify

Ticket #552 (closed task: fixed)

Opened 2 years ago

Last modified 2 years ago

Wishlist Inactive?

Reported by: anonymous Owned by: quinox
Priority: normal Milestone: Release 1.2.14
Component: nicotine Version: 1.2.14
Keywords: Cc:

Description

At what interval are entries in Wishlist searched for? It only seems to work once, immediately after clicking OK to add something.

Attachments

Change History

comment:1 Changed 2 years ago by anonymous

I'm not sure, but looking at the source code I get the feeling only the first 3 wishlist entries are search for every single time. Do you have more than that?

comment:2 Changed 2 years ago by anonymous

Yes, I have about two dozen. If only three are searched for, why is more than that allowed? And what do you mean by "every single time", are Wishlist entries only searched upon each time a user connects to the Soulseek server? I was under the impression they're searched for periodically while the client is running. Perhaps this is Soulseek-only, but shouldn't Nicotine+ have this implemented?

comment:3 Changed 2 years ago by anonymous

with "every single time" I meant every time the wishlist-search kicks in. We do a search for wishlist items periodically indeed - I think the interval time is given by the server.

I don't actually know if we're only searching for the first three items, I didn't write the code - I just made an observation based on the search.py file. I'll rig it and see how it behaves

comment:4 Changed 2 years ago by anonymous

13:10:42 Doing a wishlist search for '1'
13:10:56 Doing a wishlist search for '2'
13:11:05 Doing a wishlist search for '3'
13:11:18 Doing a wishlist search for '4'
13:11:48 Doing a wishlist search for '5'
13:12:00 Doing a wishlist search for '6'
13:20:52 Doing a wishlist search for '1'
13:20:52 Doing a wishlist search for '2'
13:20:52 Doing a wishlist search for '3'
13:32:52 Doing a wishlist search for '4'
13:32:52 Doing a wishlist search for '5'
13:32:52 Doing a wishlist search for '6'
13:44:52 Doing a wishlist search for '1'
13:44:52 Doing a wishlist search for '2'
13:44:52 Doing a wishlist search for '3'

so every time the wishlist search kicks in it searches for the next three items on your list.

My next guess: do you close the tabs after you've examined the search results and do you have the option "Reopen closed search tabs" unchecked?

comment:5 Changed 2 years ago by anonymous

The wishlist does stop working if you hit the 'ignore' button, so I assume it stops as well when you have that option "Reopen closed search tabs" turned off. Can you confirm?

comment:6 Changed 2 years ago by anonymous

yup that's indeed what's happening - I'll see if I can fix it tomorrow

comment:7 Changed 2 years ago by anonymous

By the way, is there a limit to how many entries in Wishlist will actually be searched for? Does it go through the list a certain amount and then reset to the beginning?

comment:8 Changed 2 years ago by anonymous

No limit. It works as follows:

  • Upon login the server sends the client a message informing it about the wishlist interval. Currently the NS sends a value of 720 seconds (=12 minutes). This tells the client how often it's allowed to commit wishlist searches - I imagine they increase this value when for example the server load gets too high. We always follow what the server tells us (if the server tells us 0 seconds we disable the WishList? searches)
  • After receiving this message Nicotine will search for the first three items on your wishlist.
  • N+ also starts a timer which triggers every wishlist-interval seconds (so right now every 12 minutes). When this timer goes off it searches for the next three wishlist items.
  • When it gets to the end of the list it continues from the beginning. If you have 4 items N+ will first search for {1,2,3}, after 12 minutes for {4,1,2}, after another 12 {3,4,1} etc.

Internally the items are changing position in the wishlist whenever we search for them. This means that if you have 30 items and you shut down N+ after it has done searches for the first 15 items (after +- 49 minutes) it will continue with the other 15 the next time you start N+.

(I didn't realize that last bit the first time I looked at the code, that's why I wondered if we only searches for the first 3 items over and over again)

comment:9 Changed 2 years ago by anonymous

Thanks for the info.

comment:10 Changed 2 years ago by quinox

  • Status changed from new to closed
  • Resolution set to fixed
View

Add a comment

Modify Ticket

Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.