[wp-trac] [WordPress Trac] #60375: Site Transfer Protocol
WordPress Trac
noreply at wordpress.org
Fri Feb 2 23:08:58 UTC 2024
#60375: Site Transfer Protocol
-------------------------+------------------------------
Reporter: zieladam | Owner: (none)
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Import | Version:
Severity: normal | Resolution:
Keywords: | Focuses:
-------------------------+------------------------------
Comment (by zieladam):
> The more I consider it the more I see these as the same thing, whereby
the ZIP format is the means through which we normalize the transfer. I
could be totally overlooking obvious things here though, so I would like
to know where this idea makes no sense.
I think you're right here. To me, Host <-> to ZIP is a version of the Host
<-> Host scenario where one of the Hosts passively accepts the stream and
never asks to pause, rewind, resume, compute delta etc.
> The challenges I'm capable of seeing at the moment are all more related
to whether we ship wp-content assets the same way we ship database and
config values. It's all about bulk data and less about the destination of
the transfer.
I consider both bulk data. Database dumps may be as large as 300GB.
Harmonizing the transfer infrastructure for both seems like more reliably
and less code.
> Of course there'd be duplication of content in the WXR vs. the tables,
but I see the database as the authoritative source for non-asset content
while the WXR could be a reasonable signaling protocol to guide the
import.
We should bet a clearer idea of what's worth including in WXR and
duplicating from the database once we start shaping the code. I remain
open minded.
> Even if we have post content in the WXR it will lack the meta
information unless we also export it there as well, which I guess we could
do, and even remove those rows from the sqlite database 🤷♂️
I'm hesitant about this. We'd have to preserve IDs so it would be just
moving the data for the sake of moving it.
It should be fine to ship a WXR file that has no content at all, only the
guiding metadata. I even wonder whether Blueprints could be expressed as
WXR, in which case the exported WXR file would be a Blueprint.
> yeah we'll need another layer of error handling, but we should be able
to restart the ZIP mid-sequence on the source site.
Agreed! Here's a fancy idea – we could support partial uploads. Instead of
uploading the entire 1GB ZIP all at once, it would become a series of
requests, each transmitting a part of that ZIP. This way no crash would
invalidate all the work. Even if the internet goes down, you'd just
"upload" the ZIP file again and only the unprocessed bytes would be
uploaded – and stream-processed during the upload.
> is to create a relatively small manifest on the source site to start the
process. this could do a number of things:
It could be bundled in WXR perhaps.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/60375#comment:10>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list