Feature(backend): Add a command-line utility for running gallery maintenance#8827
Open
lstein wants to merge 2 commits intoinvoke-ai:mainfrom
Open
Feature(backend): Add a command-line utility for running gallery maintenance#8827lstein wants to merge 2 commits intoinvoke-ai:mainfrom
lstein wants to merge 2 commits intoinvoke-ai:mainfrom
Conversation
Collaborator
Author
|
Note that @Pfannkuchensack has a more comprehensive db maintenance/gallery package in a separate repository at https://github.com/Pfannkuchensack/sqlite_invokeai_db_tool . We should promote it in the documentation. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR provides a command-line utility for synchronizing the InvokeAI database with the image galleries. It cures problems arising from image files that were removed by the OS from the outputs directory, missing thumbnails, and extraneous image files that have no corresponding database entries.
It has three functions:
This functionality actually dates back to a 3.x era
invokeai.backend.util.db_maintenance.pymodule, that hasn't worked in a while. I made minor fixes to it and added an executable wrapper inscripts.Related Issues / Discussions
Closes #4365
QA Instructions
Because this script will mess with your galleries, you might wish to create a fresh root directory to experiment with.
a. Removing images from
outputs/imagesb. Adding image files that were generated outside of InvokeAI.
c. Removing thumbnails from
outputs/images/thumbnailspython3 ./scripts/gallery_maintenance.py --root INVOKEAI_ROOT --operation allYou should see the following actions:
Merge Plan
Simple merge.
Checklist
What's Newcopy (if doing a release after this PR)