Is there a way to manually store the database without exiting Everything?

Discussion related to "Everything" 1.5 Alpha.
Post Reply
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Is there a way to manually store the database without exiting Everything?

Post by Biff »

Is there a way to manually store the database without exiting Everything? Or let Everything do it periodically?

When I tried to shut down the computer there was a message on the blue screen that Everything saves the database so one had to wait some time until it is finished. But instead of the computer shutting down the computer went to the login screen to one's account. So it did not shut down. Everything was still running. Is there a way to let Everything automatically exit when shutting down the computer?
raccoon
Posts: 1017
Joined: Thu Oct 18, 2018 1:24 am

Re: Is there a way to manually store the database without exiting Everything?

Post by raccoon »

You may have accidentally hit "Log off" instead of "Shut down" in Windows.

Try it again.
therube
Posts: 4985
Joined: Thu Sep 03, 2009 6:48 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by therube »

About how many files are we talking?
Saving to the .db should ("ordinarily") be (relatively) quick (to the point where shutdown should not be affected).
(I rarely every shut down [27 days 13 hours 44 minutes 22 seconds] or restart. Simply sleep.)


There are ways to save the .db, "manually", & I believe (at least in 1.5), that it does it automatically, periodically, as it is (even outside of quitting Everything).
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

You may have accidentally hit "Log off" instead of "Shut down" in Windows.
I would actually rule that out, the menu item is not available here. It also happened two or three times in a row
(I rarely every shut down [27 days 13 hours 44 minutes 22 seconds] or restart. Simply sleep.)
Sorry, I do not understand that, what does that mean?
There are ways to save the .db, "manually"
That sounds great. What ways are these?
& I believe (at least in 1.5), that it does it automatically, periodically, as it is (even outside of quitting Everything).
Sorry, what does "as it is" here mean?
therube
Posts: 4985
Joined: Thu Sep 03, 2009 6:48 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by therube »

(I rarely every shut down [27 days 13 hours 44 minutes 22 seconds] or restart. Simply sleep.)
Just pointing out that I rarely actually shut down (or restart), so I won't normally run into a situation where Everything would save it's .db on shutdown.

(I do Quit everything, every so often - mostly around the time an alpha update comes out [but otherwise is always open].)


/save-db
Save the database to disk
viewtopic.php?t=10091

-save-db
Save the Everything database to disk.
Returns after saving completes.
https://www.voidtools.com/support/every ... interface/


Now whether a manual save, ahead of time, would help with the issue you are seeing is a different matter (as Everything would still want to save, again, at the time you actually went to shut down your system)?
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

Just pointing out that I rarely actually shut down (or restart), so I won't normally run into a situation where Everything would save it's .db on shutdown.
Ah, sorry for my bad understanding. But yes, that is what I do as well, let it go to hibernate "always" (to not to open all of the programs / instances from the last session again what is extremely enoying), respectively I did it, because that Win crap does not (properly) work anymore after some time without shutting it down.
(I do Quit everything, every so often - mostly around the time an alpha update comes out [but otherwise is always open].)
So do / did I.
/save-db
Save the database to disk
viewtopic.php?t=10091
This can be entered in the search field and after pressing ENTER? So I could use a bookmark to give that command?
-save-db

Save the Everything database to disk.

Returns after saving completes.
What returns?
Now whether a manual save, ahead of time, would help with the issue you are seeing is a different matter (as Everything would still want to save, again, at the time you actually went to shut down your system)?
Yes, it would: I could manually save the db, then shut down and in that windwo click something like "shut down anyway" so Everything will be closed without saving the database. That does not matter any more because I have saved it before.
void
Developer
Posts: 16773
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by void »

Everything will periodically save your database to disk.

The default is every day at 4am.
If your PC is not running at 4am, and a scheduled save is missed, then the next time you close an Everything search window.



From memory, your Everything database is quite large.

Everything will need to write out your entire database to disk on windows shutdown.

Please try reducing the number of files/folders you are indexing.
Please try reducing the number of properties you are indexing.
Please store your Everything.db on a faster device.



If you wish to save your Everything database to disk without exiting Everything:
  • In Everything, type in the following search and press ENTER:
    /save-db
-or-
  • From a command prompt, call:
    Everything.exe -save-db

Is there a way to let Everything automatically exit when shutting down the computer?
No.

There is a -no-db command line option to prevent loading-from/saving-to your Everything.db
However, this is most likely not want you want as it will rebuild your index in memory every time you start Everything.

I will consider an option to disabling saving the db to disk on exit.
Enabling such an option will cause Everything to take a very long time to reprocess changes to your index on the next startup.
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

That is very great, this must be a new option. Many thanks!

Oops, yes, very good memory. It now has 3,25 GB. I am afraid it will still get bigger, I have tried to order two 20 TB hard drives from Amazonk (one for back up) but that shitty seller allows to order only one per subservient.
Please store your Everything.db on a faster device.
Yes, OK, I will try then to buy a notebook with a faster SSD than mine has now on that so called Black Friday or in this so called Black Week, including an extra 8 GB RAM bar (Everything often use up to more than 4 GB RAM) for Everything.

Is there an option to let Everything automatically save the database after plugging off a drive (or some time, about 5, 10, 15 minutes after plugging it off to wait for another drive being plugged in after a drive before is plugged off) or / and after plugging in a drive and after it is fully (re)indexed? So the new data / files / properties would be saved immediately (instead sometime later with the risk losing them).
A list of all the new Everything 1.5 ini settings.
Does it mean that is a list (containing ALL options / functions) of the new Everything 1.5 or it is a list of (the) new(est) options / functions (cotaining only these and not the older options / functions of the new Everything 1.5) of Everything 1.5?
If your PC is not running at 4am, and a scheduled save is missed, then the next time you close an Everything search window.
Does that mean, if a save is missed the interval moves? So if the next automatically saving would be at 4 pm (of two a day) it would be moved to 5 pm if the first automatic save would be at e.g 5 am (after closing a search window? Or ALWAYS be at 4 pm?

Can one enter to hours here (when one wants the db to automatically be saved at 10 pm and 4:30 pm(?):
db_auto_save_at_hour=22
db_auto_save_idle_delay=60000
This means if the computer is idle or Everything?

So these are all the entries that effects the saving:

db_auto_save_interval=43200000
db_auto_save_type=2
db_auto_save_at_hour=21
db_auto_save_at_minute=0
db_auto_save_on_close=1
db_auto_save_idle_delay=60000
db_save_on_rebuild=0

So this means that Everythings two times a day at 9 pm and at 9 am saves the db. Is that right?
So saving periodically and db_auto_save_at_hour cannot be used at the same time, I assume.

I just removed two offline indexes from the Everything NTFS tab / index. Now Everything rescans / try to rescan ALL of the volumes and sorts filenames, etc. Why is that (because there are no new / old data / drives to (re)index)? Could one avoid that? It takes very long, 15, 20 minutes or so and it uses some resources:
Image

To manage / coordinate all of those ("nested") (instructions) save settings for the database somehow looks like it is a little inconvenient (for people like me) who forget everything (maybe that's where the name Everything comes from, but I...well...) what they have never understood anyway the next day or even the same day. Instructions in the ini file appeared to be good (but not possible, I assume, for all the options, would bloat up the file immensely and cause very much work).

Is there a way to somehow show when (during that process) the db is saved / it is finished? Maybe a message that it is finished or / and instead of the Everything symbol to disappear when clicking "exit" it might be replaced with an icon being shown until the saving of the db is finished.
If you wish to save your Everything database to disk without exiting Everything:

In Everything, type in the following search and press ENTER:
/save-db
How could I make a bookmark that I could start by pressing a shortcut without showing the bookmark / opening a search window. Just save the db?
There is a -no-db command line option to prevent loading-from/saving-to your Everything.db
However, this is most likely not want you want as it will rebuild your index in memory every time you start Everything.
Yes, that is true.
I will consider an option to disabling saving the db to disk on exit.
Many thanks. But maybe that's not such a good option (regardless of the fact that would be quite disadvantageous, I guess:
Image
Saving the newest state on exit is quite important, I assume. Unless one has automatically saved the db some minutes or so before.

Is there a way to show displays like this, "Saving to disk...", processes being just running / executed with a background colour to get them noticeable easier or at all?
Image
Or with a progress bar (like the green one shown while scanning properties) or / and a display of the time remaining or so?
void
Developer
Posts: 16773
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by void »

Is there an option to let Everything automatically save the database after plugging off a drive (or some time, about 5, 10, 15 minutes after plugging it off to wait for another drive being plugged in after a drive before is plugged off) or / and after plugging in a drive and after it is fully (re)indexed? So the new data / files / properties would be saved immediately (instead sometime later with the risk losing them).
Currently, no.
I will consider an option to do this.


Does it mean that is a list (containing ALL options / functions) of the new Everything 1.5 or it is a list of (the) new(est) options / functions (cotaining only these and not the older options / functions of the new Everything 1.5) of Everything 1.5?
Only new ini settings.
Everything 1.4 ini settings can be found here.
I am working on merging these.


Does that mean, if a save is missed the interval moves? So if the next automatically saving would be at 4 pm (of two a day) it would be moved to 5 pm if the first automatic save would be at e.g 5 am (after closing a search window? Or ALWAYS be at 4 pm?
Yes, if Everything misses a scheduled save, a new save date/time is scheduled.
This will be 4am the next day by default.

If you close the Everything window in the meantime, the database will be saved to disk.


Can one enter to hours here (when one wants the db to automatically be saved at 10 pm and 4:30 pm(?):
No, only one daily time can be specified.


This means if the computer is idle or Everything?
If you are using your PC at 4am, Everything will wait til there's no mouse or keyboard activity for 1 minute before saving the db.


So this means that Everythings two times a day at 9 pm and at 9 am saves the db. Is that right?
No, db_auto_save_type is the auto save type, not how many times to save.
db_auto_save_type=2 means save daily.

db_auto_save_at_hour specifies the hour to save each day.
db_auto_save_type must be set to 2, or db_auto_save_at_hour is ignored.


So saving periodically and db_auto_save_at_hour cannot be used at the same time, I assume.
Correct.


I just removed two offline indexes from the Everything NTFS tab / index. Now Everything rescans / try to rescan ALL of the volumes and sorts filenames, etc. Why is that (because there are no new / old data / drives to (re)index)? Could one avoid that? It takes very long, 15, 20 minutes or so and it uses some resources:
Hard to say without seeing logs.

The next time you remove a volume, could you please enable debug logging:
  • In Everything, from the Tools menu, under the Debug submenu, check Start Debug Logging.
  • from the Tools menu, click Options.
  • Click the NTFS tab.
  • Select your offline NTFS volume.
  • Click Remove.
  • Click OK.
    -- wait for reindexing to complete - status is shown in the status bar--
  • From the Tools menu, under the Debug submenu, click Stop Debug Logging.
    The Everything Debug Log will open in Notepad.
  • Please save this file to the Desktop and send to support@voidtools.com
    Privacy


Everything should be reindexing with the existing indexes.
This will still take several minutes when you are indexing several million files.
Resorting indexes is also necessary.

I have on my TODO list to improve the resorting performance when volumes are only removed.


Is there a way to somehow show when (during that process) the db is saved / it is finished? Maybe a message that it is finished or / and instead of the Everything symbol to disappear when clicking "exit" it might be replaced with an icon being shown until the saving of the db is finished.
Saving... is shown in the statusbar when Everything is saving the database to disk.
This text will disappear when Everything has completed saving the database to disk.

I will consider showing a dialog on the completion of the save.


How could I make a bookmark that I could start by pressing a shortcut without showing the bookmark / opening a search window. Just save the db?
Without showing Everything?
-If so, create a shortcut to Everything on your desktop or in the start menu.
Right click the shortcut and set the target to:
"C:\Program Files\Everything\Everything64.exe" -save-db
(where C:\Program Files\Everything\Everything64.exe is your Everything location)
Set a shortcut key.
Click OK.


Is there a way to show displays like this, "Saving to disk...", processes being just running / executed with a background colour to get them noticeable easier or at all?
Or with a progress bar (like the green one shown while scanning properties) or / and a display of the time remaining or so?
Currently, no.
I will consider an option to highlight this status and will consider a progress bar.

Thanks for the suggestions.
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

Currently, no.
I will consider an option to do this.
Many thanks!
Does it mean that is a list (containing ALL options / functions) of the new Everything 1.5 or it is a list of (the) new(est) options / functions (cotaining only these and not the older options / functions of the new Everything 1.5) of Everything 1.5?

Only new ini settings.
Everything 1.4 ini settings can be found here.
I am working on merging these.
Sorry, I did not mean the 1.4 settings. Only 1.5. Are those the NEW settings for 1.5 or ALL of its (1.5) settings?
Does that mean, if a save is missed the interval moves? So if the next automatically saving would be at 4 pm (of two a day) it would be moved to 5 pm if the first automatic save would be at e.g 5 am (after closing a search window? Or ALWAYS be at 4 pm?

Yes, if Everything misses a scheduled save, a new save date/time is scheduled.
This will be 4am the next day by default.
Sorry again, I meant: the first save would be at 4 am, the second at 4 pm, two per day. Now Everything is started at 5 am, so it does the next when closing the result window, e.g. it is closed at 5:30 am. Will the second save on this day be at 4:00 pm anyway or also be moved to 5:30 pm?
So this means that Everythings two times a day at 9 pm and at 9 am saves the db. Is that right?

No, db_auto_save_type is the auto save type, not how many times to save.
db_auto_save_type=2 means save daily.

Very sorry again, I meant:
db_auto_save_interval=43200000

from
db_auto_save_interval=43200000
db_auto_save_type=2
db_auto_save_at_hour=21
db_auto_save_at_minute=0
db_auto_save_on_close=1
db_auto_save_idle_delay=60000
db_save_on_rebuild=0

So this means that Everythings two times a day at 9 pm and at 9 am saves the db. Is that right?

db_auto_save_interval=43200000

So this does not mean two times will be saved per day?
Hard to say without seeing logs.

The next time you remove a volume, could you please enable debug logging:
OK. Thank you.
I have on my TODO list to improve the resorting performance when volumes are only removed.
Many thanks!
Saving... is shown in the statusbar when Everything is saving the database to disk.
Yes, as you can see on my screenshot, I guess.
I will consider showing a dialog on the completion of the save.
Thank you very much!
How could I make a bookmark that I could start by pressing a shortcut without showing the bookmark / opening a search window. Just save the db?

Without showing Everything?
Yes, I just want to store the db, there is no need to view anything. That is great, many thanks!
I will consider an option to highlight this status and will consider a progress bar.
Many thanks!
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

How to exit Everything without saving the database?

Post by Biff »

How to exit Everything without saving the database?
void
Developer
Posts: 16773
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by void »

Are those the NEW settings for 1.5 or ALL of its (1.5) settings?
The new settings.


Sorry again, I meant: the first save would be at 4 am, the second at 4 pm, two per day. Now Everything is started at 5 am, so it does the next when closing the result window, e.g. it is closed at 5:30 am. Will the second save on this day be at 4:00 pm anyway or also be moved to 5:30 pm?
Everything will only save once daily.
The default is at 4am.

If the database is saved to disk on close, the next scheduled save is not changed.

If you missed a scheduled save and you close your Everything window at 3:59am, Everything will save your database to disk.
Everything will then attempt to save again at 4am (in one minute) with your scheduled auto save.

Disable db_auto_save_on_close if you don't want to save the database to disk when closing an Everything window.


Very sorry again, I meant:
db_auto_save_interval=43200000

from
db_auto_save_interval=43200000
db_auto_save_type=2
db_auto_save_at_hour=21
db_auto_save_at_minute=0
db_auto_save_on_close=1
db_auto_save_idle_delay=60000
db_save_on_rebuild=0
db_auto_save_interval is ignored here.
db_auto_save_interval is only valid when db_auto_save_type is set to: 1
When db_auto_save_type is set to 1 ( Save periodically with the specified Interval ) you cannot specify the hour when the save occurs.
The db_auto_save_interval is calculated from when Everything is started, so if you start Everything at 8am, Everything will save at 8pm/8am.

db_auto_save_interval


How to exit Everything without saving the database?
Type in the following search and press ENTER:
/exit-now

Everything will exit immediately.
Changes to your settings and data will be lost.
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

Many thanks!

How could I make Everything automatically save the db twice a day at 9 am and 9 pm?
Type in the following search and press ENTER:
/exit-now

Everything will exit immediately.
Changes to your settings and data will be lost.
Oops, even the settings are not saved? Newly added properties, drives (to the indexes, etc.), ALL of the new data, as well? How could I let Everything not to save the db but everything else, e.g. settings / ALL of the new data? I assume, only saving new settings, data should be quite fast?

So this autmatically saves the db at 9 pm every day?

Code: Select all

db_auto_save_interval=43200000
db_auto_save_type=2
db_auto_save_at_hour=21
db_auto_save_at_minute=0
db_auto_save_on_close=1
db_auto_save_idle_delay=60000
void
Developer
Posts: 16773
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by void »

How could I make Everything automatically save the db twice a day at 9 am and 9 pm?
Everything doesn't have an option to do this.

Please consider a Windows scheduled task that runs at 9am and 9pm daily, that calls:
Everything.exe -save-db


Oops, even the settings are not saved? Newly added properties, drives (to the indexes, etc.), ALL of the new data, as well? How could I let Everything not to save the db but everything else, e.g. settings / ALL of the new data? I assume, only saving new settings, data should be quite fast?
Correct.
All changes to your settings are lost.

Saving settings is fast.
Saving data is slow.

/exit-now is designed to not save any settings or data.


So this autmatically saves the db at 9 pm every day?

db_auto_save_interval=43200000
db_auto_save_type=2
db_auto_save_at_hour=21
db_auto_save_at_minute=0
db_auto_save_on_close=1
db_auto_save_idle_delay=60000
Yes.



Everything 1.5.0.1330a did add a db_save_on_exit ini setting to save to your Everything.db on exit.

To disable db_save_on_exit:
  • Copy and paste the following into your Everything search box:
    /db_save_on_exit=0
  • Press ENTER in your Everything search box.
  • If successful, db_save_on_exit=0 is shown in the status bar for a few seconds.
If disabled, Everything will no longer save your database to disk on exit.
When you exit Everything, you will lose all your changes to your index since the last scheduled save.
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

Please consider a Windows scheduled task that runs at 9am and 9pm daily, that calls:
Everything.exe -save-db
Too complicated somehow. And does not work on other / new systems (without adding that task again there). OK, so I will a one per day option, thank you.

This obviously
/restart
restarts Everything? So it does the same like clicking "Exit" does and additionally it starts Everything after the db is saved?

Everything 1.5.0.1330a did add a db_save_on_exit ini setting to save to your Everything.db on exit.

To disable db_save_on_exit:
No, no, thank you, that's a pretty important option I want rather left enabled. If I want to close Everything while it is saving the db I could do that with the Task Manager by just deleting the process without causing any problems?
When you exit Everything, you will lose all your changes to your index since the last scheduled save.
So the settings are saved anyway?
void
Developer
Posts: 16773
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is there a way to manually store the database without exiting Everything?

Post by void »

/restart
restarts Everything? So it does the same like clicking "Exit" does and additionally it starts Everything after the db is saved?
/restart
will exit Everything, saving your settings and database to disk.
Everything will automatically restart after exiting completes.


If I want to close Everything while it is saving the db I could do that with the Task Manager by just deleting the process without causing any problems?
Yes, this should be fine.


When you exit Everything, you will lose all your changes to your index since the last scheduled save.
So the settings are saved anyway?
With db_save_on_exit disabled, your settings are still saved on exit.
Biff
Posts: 1158
Joined: Mon May 25, 2015 7:09 am

Re: Is there a way to manually store the database without exiting Everything?

Post by Biff »

OK, great, many thanks!
Post Reply