возникли проблемы с Invision Community Board при публикации / редактировании, возникла ошибка "EX0" - PullRequest
0 голосов
/ 25 января 2019

первый вопрос, который я задал на этом сайте, здесь идет.

Для тех из вас, кто предпочел бы просто посмотреть, над чем мы здесь работаем.

  • Хост: hostinger.com
  • Php: 7.0.33
  • mySQL: 5.5.5-10.2.17-MariaDB
  • Версия форума: Invision Community v4.3.6

Итак, я управляю форумами с помощью Invision Community, я много искал (честно говоря, только действительно использовал Google), но тем не менее я пытался. Наш хост - хостингер (из того, что я узнал благодаря легким исследованиям и моему собственному опыту работы с ними на этом сайте, они не совсем лучший вариант, но это то, что мы получили)

мы недавно сделали обновление (с 4,2 до 4,3, я полагаю), но ошибка началась до того, как мы сделали обновление. конкретная ошибка, которую я получил, это «EX0» Хуже всего то, что эта ошибка «была», казалось бы, изолирована от новых областей для форумов, которые начинают влиять на все из них.

вот несколько примеров ошибок, которые у меня были https://pastebin.com/xkkLyUb5

InvalidArgumentException:  (0)
#0 /home/xxxxxxxxxx/public_html/forums/system/Content/Search/Index.php(120): IPS\_Task::queue('core', 'IndexSingleItem', Array, 5, true)
#1 /home/xxxxxxxxxx/public_html/forums/system/Content/Item.php(2049): IPS\Content\Search\_Index->indexSingleItem(Object(IPS\forums\Topic))
#2 /home/xxxxxxxxxx/public_html/forums/applications/forums/sources/Topic/Topic.php(1091): IPS\Content\_Item->unhide(NULL)
#3 /home/xxxxxxxxxx/public_html/forums/applications/forums/sources/Topic/Topic.php(616): IPS\forums\_Topic->unhide(NULL)
#4 /home/xxxxxxxxxx/public_html/forums/applications/forums/sources/Topic/Topic.php(572): IPS\forums\_Topic->processAfterCreateOrEdit(Array)
#5 /home/xxxxxxxxxx/public_html/forums/applications/forums/modules/front/forums/topic.php(496): IPS\forums\_Topic->processAfterEdit(Array)
#6 /home/xxxxxxxxxx/public_html/forums/system/Dispatcher/Controller.php(85): IPS\forums\modules\front\forums\_topic->edit()
#7 /home/xxxxxxxxxx/public_html/forums/system/Content/Controller.php(50): IPS\Dispatcher\_Controller->execute()
#8 /home/xxxxxxxxxx/public_html/forums/applications/forums/modules/front/forums/topic.php(39): IPS\Content\_Controller->execute()
#9 /home/xxxxxxxxxx/public_html/forums/system/Dispatcher/Dispatcher.php(146): IPS\forums\modules\front\forums\_topic->execute()
#10 /home/xxxxxxxxxx/public_html/forums/index.php(13): IPS\_Dispatcher->run()
#11 {main}

Backtrace
#0 /home/xxxxxxxxxx/public_html/forums/init.php(537): IPS\_Log::log('InvalidArgument...', 'uncaught_except...')
#1 [internal function]: IPS\IPS::exceptionHandler(Object(InvalidArgumentException))
#2 {main}

некоторые вещи, которые я пробовал (может или не считали это уместным, но, тем не менее, это не сработало)

  • Очистил куки моего браузера (это случилось, если это было актуально)
  • Очистил кеш моего браузера
  • Переключение метода задачи на Cron (на удивление, ничего не ломая)
  • Отключено Включить дружественные URL
  • Включено Включить дружественные URL
  • URL-адреса для пробной перезаписи
  • Очистка кэшированных данных сервера (происходит через инструмент автоматической поддержки)

Я почти ничего не знаю об этом материале, но любую дополнительную информацию, которая необходима, не стесняйтесь спрашивать.

1 Ответ

0 голосов
/ 27 марта 2019

Скорее всего, это связано с поврежденным расширением в приложении core.


если вы посмотрите на функцию queue в \IPS\Task (/system/Task/Task.php)

Имеются следующие условия, которые могут бросить InvalidArgumentException:

try
{
    $extensions = \IPS\Application::load( $app )->extensions( 'core', 'Queue', FALSE );
}
catch ( \OutOfRangeException $e )
{
    throw new \InvalidArgumentException;
}
if ( !isset( $extensions[ $key ] ) )
{
    throw new \InvalidArgumentException;
}

Это попытается загрузить каждое расширение очередей приложений (хранится в /applications/APP_NAME/extensions/core/Queue.

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

Я бы посмотрел в вашем каталоге /applications/core/extensions/core/Queue на наличие поврежденных расширений очереди и, возможно, повторно загрузил бы весь каталог в случае, если некоторые или все из них отсутствуют.

...