CacheJournal has not been provided

kejlicz
Člen | 201
+
0
-

Ahoj všem.
Zkouším si hrát s cachováním. Jako storage jsem zkoušel FileStorage a NewMemcached a oboje normálně funguje, dokud nechci použít tagy. Potom to vyhazuje chybu „CacheJournal has not been provided.“. Našel jsem, že by to mohlo být chybějící PHP rozšíření Sqlite.

Ve výpisu phpinfo mám v sekci PDO hodnoty mysql, pgsql, sqlite a v sekci pdo_sqlite hodnoty SQLite Library 3.16.2.

Je to ono a chyba bude tedy jinde, nebo je třeba ještě něco doinstalovat?

Verze PHP 7.0.27 a verze Nette 2.3.10

Problém je v tom, že taky pořádně nechápu co to vůbec ten Journal je.

Může mě někdo nasměrovat.

Díky moc.

Editoval kejlicz (14. 6. 2018 16:03)

nightfish
Člen | 472
+
+1
-

Ten storage si instancuješ sám? A pokud ano, tak předáváš mu v druhém parametru u FileStorage, nebo ve čtvrtém parametru u NewMemcachedStorage, žurnál?

Jinak žurnál je něco, co si pamatuje vazbu mezi klíčem záznamu v cache a tagem, resp. prioritou. V Nette 2.3 byl ještě jako výchozí FileJournal, ale ten byl pro Nette 2.4 nahrazen SqliteJournalem.

kejlicz
Člen | 201
+
0
-

Díky. Vytvářel jsem ten storage ručně a nic jsem mu nepředával.

Vytvořil jsem si jej tedy

$journal = new \Nette\Caching\Storages\FileJournal(__DIR__ . '/../../temp/journal');

a předal to do storage a už to funguje.

nightfish napsal(a):

Ten storage si instancuješ sám? A pokud ano, tak předáváš mu v druhém parametru u FileStorage, nebo ve čtvrtém parametru u NewMemcachedStorage, žurnál?

Jinak žurnál je něco, co si pamatuje vazbu mezi klíčem záznamu v cache a tagem, resp. prioritou. V Nette 2.3 byl ještě jako výchozí FileJournal, ale ten byl pro Nette 2.4 nahrazen SqliteJournalem.

CZechBoY
Člen | 3608
+
+1
-

Ono by melo nastavit cache storage v konfiguraku a nemusis se o journal starat…

services:
    cache.storage: Nette\Caching\Storages\FileStorage