CLI
vendor/bin/storh stats <root> [collection] [doc|log|queue]
vendor/bin/storh verify <root> [collection] [doc|log|queue]
vendor/bin/storh compact <root> [collection] [doc|log]
vendor/bin/storh reindex <root> [collection]
A(z) <root> az a tárolási gyökérkönyvtár, amellyel a motorokat megnyitották; ez az az útvonal,
amelyet a(z) StorageRoot::resolve() ad vissza: az alapkönyvtár és a névtér együtt. A(z)
StorageRoot::resolve(__DIR__ . '/var/storh', 'app') alatt megnyitott tár a következő helyen található:
var/storh/app:
vendor/bin/storh stats var/storh/app pages doc
vendor/bin/storh verify var/storh/app events log
vendor/bin/storh compact var/storh/app events log
vendor/bin/storh reindex var/storh/app pages
Ha csak az alapkönyvtárat adja meg (var/storh), a parancsok egy még nem létező gyűjteményre mutatnak, ezért üres gyűjteményt jeleznek hiba helyett.
A(z) vendor/bin/storh esetén a(z) storh függőségként telepítve a(z) storh 0.5.2 vagy újabb verziója szükséges. A korábbi verziók csak a csomag saját vendor/ könyvtárában keresték a(z) Composer autoloaderét, és require hibával leálltak.
A(z) CLI stabil JSON kimenetet ír, így használható cron feladatokban és telepítési állapotellenőrzésekben. A gyűjtemény alapértéke default; a motor alapértéke stats, verify és reindex esetén doc, compact esetén pedig log.
A parancsok mögött álló karbantartási metódusok
Minden motor közzéteszi azokat a karbantartási metódusokat, amelyeket a(z) CLI meghív:
$store->stats();
$store->health();
$store->verify();
$store->repair();
A DocStore további metódusai:
$docs->reindex();
$docs->compact(); // no-op report for API symmetry
A SegmentedLog további metódusai:
$log->compact();
$log->recover();
$log->state_index();
DocStore esetén a(z) verify() ellenőrzi, hogy a rekordok hibamentesen feldolgozhatók-e, és hogy az egyenlőségi, tartomány- és összetett indexek egyeznek-e a teljes rekordpásztázás eredményével. A(z) repair() karanténba helyezi a sérült rekordfájlokat a(z) .storh/corrupt/ alatt, és érvényes rekordokból újraépíti az indexeket.
SegmentedLog esetén a(z) verify() dekódolja a szegmensorokat, és az aktuális származtatott állapot indexét friss szegmens-újrajátszással veti össze. A(z) repair() újraépíti a származtatott állapotot, és csonkolja a végén félbemaradt sorokat.
Queue esetén a(z) verify() dekódolja az összes tartós eseményt, és a függő, feldolgozás alatt álló, kész állapotot, a hasznos adatot és az igénylési sorrendet friss queue.log-újrajátszással veti össze. A(z) repair() újraépíti a sor állapotát a naplóból, és újra sorba állítja az időtúllépés miatt félbemaradt feldolgozású feladatokat.