symfony обновление кэша не удалось без исключения - PullRequest
0 голосов
/ 18 марта 2020

Используя symfony, я создал службу кэширования в моих services.yaml:

cache.api:
    class: Symfony\Component\Cache\Adapter\FilesystemTagAwareAdapter
    arguments: ["api", 0, "%api_directory%"]

Все идет хорошо, пока не закончится время жизни кэша (здесь значение по умолчанию равно 0, но при его использовании я определить другую жизнь). В данный момент обновление кэша происходит неправильно без сообщения об ошибке:

[2020-03-18T10:44:47.114058+01:00] app.INFO: Lock acquired, now computing item "a6055b27457830722db4330abe64cbbb5bb1c06b59ddb5e7cfad9f30366dcc22" {"key":"a6055b27457830722db4330abe64cbbb5bb1c06b59ddb5e7cfad9f30366dcc22"} []
[2020-03-18T10:44:47.327730+01:00] api.INFO: SOAP Request (GetClubTeams - 0.21): array (   'Club' => 'N051',   'Season' => 20, ) [] []
[2020-03-18T10:44:47.328842+01:00] app.WARNING: Failed to save key "a6055b27457830722db4330abe64cbbb5bb1c06b59ddb5e7cfad9f30366dcc22" of type array. {"key":"a6055b27457830722db4330abe64cbbb5bb1c06b59ddb5e7cfad9f30366dcc22","exception":null} []
[2020-03-18T10:44:47.329458+01:00] app.INFO: Lock acquired, now computing item "bf0fe848cc7a650db70ab3ca49a14cbf38f7f7403e7364e2537ada2fd3d1d58d" {"key":"bf0fe848cc7a650db70ab3ca49a14cbf38f7f7403e7364e2537ada2fd3d1d58d"} []
[2020-03-18T10:44:47.474883+01:00] api.INFO: SOAP Request (GetSeasons - 0.15): array ( ) [] []
[2020-03-18T10:44:47.475947+01:00] app.WARNING: Failed to save key "bf0fe848cc7a650db70ab3ca49a14cbf38f7f7403e7364e2537ada2fd3d1d58d" of type array. {"key":"bf0fe848cc7a650db70ab3ca49a14cbf38f7f7403e7364e2537ada2fd3d1d58d","exception":null} []

Это не может быть проблемой с разрешениями, поскольку вначале кэшированные данные правильно сохраняются и извлекаются из приложения.

Мне нужно удалить все кэшированные данные, чтобы они снова заработали (в противном случае api вызывается все время, поскольку кеш не работает).

Есть идеи?

РЕДАКТИРОВАТЬ:

При отладке кода symfony проблема возникает в методе Symfony\Component\Cache\Adapter\FilesystemTagAwareAdapter в doSave.

Эта строка:

if (!@symlink($file, $this->getFile($id, true, $tagFolder))) ...

Удаляя @, я получаю ошибку:

Warning: symlink(): File exists

Итак, символическая ссылка уже существует, но я не понимаю, как symfony справиться с этим. .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...