Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No launching while the catalog is being updated #52

Closed
egabrum opened this issue Apr 22, 2016 · 14 comments
Closed

No launching while the catalog is being updated #52

egabrum opened this issue Apr 22, 2016 · 14 comments

Comments

@egabrum
Copy link

egabrum commented Apr 22, 2016

I can't seem to be able to launch anything while KP is refreshing the catalog, which in my case takes a few minutes. It does seem to grant my latest request, but only after it finishes refreshing the catalog.

Together with issue #22, this pretty much makes my KP a sitting duck when I launch it

@polyvertex
Copy link
Member

It's in my todo list since ages.

I does seem to grant my last request, but only after it finishes refreshing the catalog.

Which one? #22?

@egabrum
Copy link
Author

egabrum commented Apr 22, 2016

What I meant to say is:
If, while KP is refreshing the catalog, I try to launch a couple of programs from KP's launch box, it won't do anything.
Once the catalog refresh is completed, KP will launch only the last program that I commanded to open, not the other ones that I tried during the refresh.

@polyvertex polyvertex modified the milestone: catalog May 5, 2016
@polyvertex polyvertex modified the milestone: catalog May 5, 2016
@egabrum
Copy link
Author

egabrum commented Jul 29, 2016

I don't know how much of a problem this is across the user base but, at least for me, it is a major inconvenience:
After logging in (the moment when normally you need the launcher the most), Keypirinha rebuilds the entire catalogue and won't allow me to open anything until it's done cataloguing.
Same occurs every time I undock/dock my laptop (PATH changed).

My catalogue takes a bunch of minutes to rebuild, which renders the tool unpractical for me.

I say this only for feedback, not cynically at all, but this issue, together with #16 (#32) are the only ones that are keeping me from transitioning from Launchy to Keypirinha. I know the day will come, I'm just sharing what the trigger will be for me.

@polyvertex
Copy link
Member

The day will come indeed. Feature requests #22, #52 (this one) and #60 are likely to be implemented altogether since they're all related to the Catalog machinery.
I assume you meant to reference #24 instead of #16 and #32.

@polyvertex
Copy link
Member

@egabrum I'm marking this as "done" because this issue, at least the way I understood it, should mechanically be solved by the implementation of a persistent catalog mechanism, which will be available in the next release (#22). Your items will be available and searchable at startup time while plugins fetch their items. Once they're done, the list of new items is then merged into the catalog.

Now this "merge" operation becomes the true bottleneck here because catalog is not searchable while being updated (it doesn't duplicate itself to avoid increasing too much memory usage). However it takes only from a few milliseconds up to a second to be done, depending on the size of the catalog and the speed of the CPU.

It's insignificant in most cases but if you still happen to use Keypirinha and experience annoyance after upgrading to next release, do not hesitate to comment here.

@polyvertex
Copy link
Member

Should now be obsoleted by the persistent catalog feature implement in v2.10 (see #22).

@arhohryakov
Copy link

After upgrading to version 2.10 still cannot run any item from catalog during updating.

@polyvertex
Copy link
Member

@aleksey-khokhryakov many parts of Keypirinha are involved during catalog's updating, I would need more info so I can reproduce the issue, or at least help to track it down. Please try to follow these guidelines. Also, it may help to share the content of your Profile\User folder without the history file (for privacy concerns).

@ueffel
Copy link

ueffel commented Jan 30, 2017

I can reproduce to issue to some extend:
Steps:
Situation A:

  1. Trigger "Refresh Catalog"
    Log:
12:31:48.216 Apps.EnvPath: Cataloged 1052 items in 0.4 seconds
12:31:48.732 Bookmarks.Bookmarks: Referenced 203 bookmarks
  1. As fast as possible launch Notepad via KP => Notepad launches immediately: OK
    Log:
12:31:54.440 Apps.ExtraPaths: Cataloged 6750 items in 6.7 seconds

Note that Notepad would be within the Apps.EnvPath Catalog, which already finished refreshing
Situation B:

  1. Trigger "Refresh Catalog"
    Log:
12:42:47.945 Apps.EnvPath: Cataloged 1052 items in 0.4 seconds
12:42:48.463 Bookmarks.Bookmarks: Referenced 203 bookmarks
  1. As fast as possible launch any item that originates from the extra_paths of the Apps Package (in my case ConsoleZ) via KP nothing happens yet: FAIL
12:42:54.236 Apps.ExtraPaths: Cataloged 6750 items in 6.7 seconds

=> After finishing the Apps.ExtraPaths catalog KP launches my item (ConsoleZ)

So i think items from the catalog that is currently refreshing cannot be launched, items from any other calalog can.
I didn't notice this, because updating is very fast. But i could imagine for a large number of ExtraPaths this could become a problem.

@polyvertex
Copy link
Member

polyvertex commented Jan 30, 2017

Mmh situation B is not supposed to happen that way since the Catalog is cleared/merged only at the end of the on_catalog task. Which means the content of the Catalog should be available still. I will investigate, thanks for your feedback.

EDIT Reopening this during investigation...

@polyvertex polyvertex reopened this Jan 30, 2017
@polyvertex
Copy link
Member

Silly me, of course it doesn't work! Everyone here is talking about launching an item, whereas, for some mystical reason I thought you folks meant it was because items were not searchable at cataloging time.
Apologizes and it will be improved in the next release (once for all hopefully).

@arhohryakov
Copy link

Thank you in advance 8)

@polyvertex
Copy link
Member

Should be fine now as of 2.11

@arhohryakov
Copy link

Excellent work!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

4 participants