7f497e7d

By: Michael Lynch <git@mtlynch.io>

Stream Tinybeans imports one entry at a time

Load and convert a single entry's media in memory, then persist its metadata
transactionally before processing the next entry. This keeps completed imports
when a later entry fails and leaves the command as dependency wiring.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 2s 12s 12s 15s 2s
Eval 11s 46s 46s 57s 0s
Build 27s 7m02s 1m37s 2m05s 0s
Suite 2s 8m01s 2m03s 2m05s 2s

Timeline

0s10s20s30s40s50s1m1m10s1m20s1m30s1m40s1m50s2m