On 29.12.2013 19:55, Stan Hoeppner wrote:
> On 12/29/2013 3:50 AM, Dave Chinner wrote:
> ...
> > I think you are forgetting that developer time is *expensive* and
> > *scarce*. This is essentially a solved problem: An SSD in a USB3
> > enclosure as a temporary swap device is by far the most cost
> > effective way to make repair scale to arbitrary amounts of metadata.
> > It certainly scales far better than developer time and testing
> > resources...
>
> Now this is an interesting idea Dave. I hadn't considered temporary
> swap. Would USB be reliable enough for this? I've seen lots problem
> reports with folks using USB storage with Linux, random disconnections
> and what not.
It's certainly a problem with several variables.
- Quality of USB-Stack (should be quite good nowadays, but there can
always be (new) bugs)
- Quality of SATA <-> USB(3) Chip
- Quality of SSD itself
And with Quality i mean everything from physical chip up to firmware.
I'm not quite sure what happens when SWAP crapps out. I think it can be
everything from "machine goes dead" down to "all programs with pages in
swap are terminated".
I've transfert quite a few TB over USB3 and i can say, it mostly works.
But random disconnects happen and you can't really be sure which part is
the problem as it only happens rarely.
For e.g. currently i have a HDD that randomly but seldomly craps out in
an USB3 enclosure, after coping a few hundert GB. The drive works
flawlessly when connected directly by SATA to a (different) computer, at
least i haven't had a failure after i moved the drive. Is it the drive,
chip in enclose, firmware between HDD & enclosure not playing nice (like
too high command timeouts on HDD side and too low on enclosure-sde),
USB3 stack. Can't really tell.
So:
I would consides SWAP on a device connected via USB3 to be on the risky
side.
I would validate beforehand if that specific combination of
xhci/enclosure chip/SSD survies a prolonged time of "high I/O stress".
Like several days of full bandwidth/random I/O.
--
Matthias
|