-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
MWS: Add support for large tiddlers to be stored as attachment files #8022
Closed
Conversation
This file contains 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
This is needed in order for our CI to be able to run the tests
It is now possible to create and edit tiddlers, using the existing tiddlywebadaptor syncing mechanism. There are a lot of hacks and lumpiness to make things compatible, so I think I will end up with an independent implementation
May not actually be needed
Avoids "string too long" errors when working with big tiddlers (>100MB)
Cannot yet specify the bags for the new recipe
Currently hard wired to kick in for tiddlers over 10MB (in base64 representation for binary tiddlers)
I intend to further refactor things, but wanted to capture the point at which things are working end-to-end.
And fix up the response timing
These changes have now reached a stable point and so I'm going to merge into #7915, and carry across the todo items that are not complete |
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.
Note: This PR targets the branch for MultiWikiServer
This PR adds support for storing large tiddlers as attachment files. There are several motivations:
Questions
This PR includes a change to the schema. At this point, we can probably just merge it and instruct testers to delete their existing database files, if necessary using
--mws-save-archive
to first take a backup. But it is also a good opportunity to think through how we want to handle database upgrades in the future. Perhaps we should start versioning the schema and add a metadata table to the schema that includes the version number. Or maybe it would be more resilient to just make the creation of each table and field be conditional on whether it already exists.Progress
GET /attachments/:attachment_name
route. The plan is to identify attachments by the combination of bag name and title, which will allow the database to be consulted for security checks before allowing access--mws-save-archive
to handle attachments