Мы тоже сталкивались с проблемой когда mysql в запросе с одним из условий id <> 123 использовал индекс primary (т.е. индекс по id), хотя в запросе были условия по другим колонкам, на которые тоже были индексы, причем гораздо более селективные. Здесь, фактически, mysql откидывает по индексу одну запись, а потом штудирует всю таблицу.
Мы свою проблему решали указанием директивы FORCE INDEX(...). Причем простое USE INDEX толку не давало, нужен был именно force. В природе этой проблемы мы не разобрались, но началась она при переходе на mysql 5.6.
Если писать без фреймворка и единой точки входа, то да, сильно try-catch не порасставляешь. Если же есть возможность сделать try { $app->run(); } catch(Exception $e) { /* some processing here */ } чтобы ловить все исключения, то такой вариант поможет реализовать кастомную логику логирования или вывода страницы заглушки или всего что душа пожелает.
Не много ли ты на себя берешь так запросто указывая чего я не знаю? Раз ты так хорош в php, приведи мне пример, когда PDO выкинет PDOException с пустым сообщением об ошибке.
К сожалению, ответ я стирать не буду, потому что запись ошибок от PDO напрямую в error-log может быть более быстрым путем к решению проблемы, чем выброс Fatal Error о непойманном исключении, хотя бы потому что эта конструкция исключит эффект от xdebug. Хотя, ты прав, теоретически разницы быть не должно, но и исключений от PDO с пустым сообщением тоже не должно быть. Кроме того, раз ты так хорошо понимаешь базовые принципы обработки ошибок на php, то наверное знаешь что допускать Fatal Error в реальном приложении - не очень похвальная практика, да и выбрасывать исключения, если их никто не ловит, тоже особого смысла нет.
Еще я бы сразу посоветовал поставить к нему этот плагин lxyu.github.io/supervisor-quick а то в стандартной реализации start/stop/restart выполняется слишком медленно. Вообще если понадобится помощь по supervisord, можете стучаться в скайп.
Основная суть плагина - это заменить реальный select на эмулированный из div, ul, li - т.е. элементов, поддающихся стилизации. После этой замены вы можете навешивать свой css свойства уже на замененный select и добиться точного совпадения с дизайном и полной кроссбраузерности.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Мы свою проблему решали указанием директивы FORCE INDEX(...). Причем простое USE INDEX толку не давало, нужен был именно force. В природе этой проблемы мы не разобрались, но началась она при переходе на mysql 5.6.