Category: it

Category was added automatically. Read all entries about "it".

March 2015

Доверяйте планировщику запросов, говорили они

После апгрейда MariaDB до 10.2 на одном сетевом проекте стало как-то холодно и неуютно.

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

Запустив запрос прямо из консоли mysql, я с ужасом увидел, что он выполнялся 4 минуты 19 секунд. Вот этот запрос:
SELECT COUNT(*) FROM t1 JOIN t2 ON t1.id = t2.t1_id WHERE t2.u = '(some integer)' AND t1.n = '(some integer)';

В обеих таблицах t1 и t2 было менее миллиона строк. Все индексы имелись. Первое подозрение, конечно, вызвал COUNT(*), но дело оказалось не в нём. Выборка по отдельным таблицам проходила быстро, COUNT(*) по ним по отдельности работал тоже быстро, даже с WHERE.

Разгадка оказалась в соединении таблиц. MariaDB 10.2 перестала использовать там индекс таблицы t2. Стоило добавить USE INDEX (t1_id_and_some_other_columns), как запрос стал исполняться менее, чем за секунду.

Вот как в 2017 году можно было поломать простой JOIN?

March 2015

Из коробки не работает

Обновил одну систему с Ubuntu 16.10 до 17.04.

В этот раз апгрейд был особо кровав (это в последние годы тенденция). Сразу же сломались nginx, HHVM и Samba.

nginx было проще всего: достаточно было удалить Apache, который услужливо установила программа обновления, и который, конечно, захватил 80-ый порт.

HHVM всё было хуже: под 17.04 не просто нет собранного пакета; последние версии под 17.04 и не установятся, так как хотят пакеты, которых там нет. Можно поставить старую версию 3.12 из репозитория Ubuntu, а потом ставить недостающие пакеты при сборке расширений, и вспоминать, как обойти баг при подключении к базе данных.

К шаре Samba не подключишься, пока не узнаешь, что протокол аутентификации NTLM больше по умолчанию не поддерживается (с версии Samba 4.5); используйте ntlmssp. Что характерно, ни малейшего намёка на это (и вообще, на попытку логина) ни в каких логах нет.

March 2015

Шалтай-Болтай и СОРМ-2

В новостях пишут, что Следственное управление ФСБ арестовало "хакерскую группировку Шалтай-Болтай". Как и следовало ожидать, никаких хакеров там не было и в помине. Граждане занимались расфасовкой и сбытом компромата, поставляемого им главарем. Главарь тоже ничего не хакал, а получал материалы, пользуясь своим служебным положением сотрудника "Центра Информационной Безопасности" ФСБ. Через систему, известную как СОРМ-2 - принудительно устанавливаемую у каждого провайдера аппаратуру, дающую ФСБ бесконтрольный и неограниченный доступ к трафику и почте любого интернет-пользователя Рунета.

Его защитники говорят...Впрочем нет. Люди, чьими усилиями СОРМ-2 был - в конце 1990х, - принят и сохраняется до сих пор, как правило не опускаются до объяснений с публикой. Но мы легко можем себе представить, что говорилось перед людьми, принимавшими реальные решения, бо говорится в таких случаях всегда примерно одно и то же. Про государственные интересы, про идеалистические фантазии и реальный мир, про ужасного врага, от онанистов до исламистов - которому надо противостоять любой ценой и во что бы то ни стало.

А теперь мы видим действительный результат внедрения СОРМ-2. Укропропагандон годы имел свободный доступ к переписке крупнейших российских чиновников и политиков, шарился в ней как в собственном лабазе. Какую часть из утекшей секретной информации покупатель предпочел не разглашать - бог весть. Сколько стырено почты у менее именитых потерпевших - тоже неизвестно. После ареста Сергея Михайлова появилось множество свидетелей, рассказывающих что бизнесом своим он занимался едва ли не десятилетие, на него жаловались, ловили за руку, собирали доказательства и передавали в прокуратуру - и ничего не менялось. Если бы не переписка секретарей Суркова, он и дальше оставался бы в руководстве ФСБ и налаженный бизнес шел бы своим чередом.

Ничего неожиданного или парадоксального в этом нет. Именно так оно всегда и происходит.

Когда полтора десятилетия назад американское правительство потребовало от IETF (организации по техническим стандартам Интернета, номинально международной, но в те времена еще почти полностью состоящей из американцев) встраивания средств слежки в протоколы Интернета, IETF вежливо но твердо ответил, что заниматься созданием искусственных уязвимостей он не будет, выпустив документ, известный как "RFC 2804: IETF Policy on Wiretapping". Невозможно создать бэкдор так, - обьясняли инженеры IETF, -чтобы он мог использоваться только хорошими людьми для хороших целей. Любой бэкдор, существующий достаточно долго, чтобы о нем стало известно, превращает систему в проходной двор. И после этого совершенно неважно, сколько охранников с пистолетами вы вокруг него поставите.

Тайна переписки нужна вовсе не революционерам-смутьянам-террористам. Революционерам и террористам совсем несложно спрятать свою переписку от глаз ФСБ, методов для этого за два тысячелетия придумана уйма. Тайна переписки нужна самому государству, чтобы оно оставалось государством, с более-менее единой государственной волей, порядками и интересами, а не распадалось на совокупность частных гешефтов чиновников. Но "ревнители государственных интересов" кажинный раз думают, что вот конкретно для них законы природы не писаны и уж они-то сотворят волшебство во благо отечества.

Источник (может быть заблокирован).
March 2015

Инопланетный язык

У Сэмюэла Дилейни (как сказал бы Мицгол, чернокожего гомосека афроамериканского расового происхождения) есть роман «Вавилон-17», в котором была поставлена (но и близко не решена) задача демонстрации возможности индоктринации с помощью обучения специально для этого разработанному языку.

Этот же мотив имеется в романе Михаила Харитонова «Золотой ключ» (возможно, ему следовало бы вместо романа опубликовать словарь и грамматику «людского [наречия?]». Или обучать ему по 700 ₽/урок вместо ведения вечерней школы для гуманитариев).

Наконец, недавно вышел фильм «Прибытие», в котором, говорят, пришельцы пользуются нечеловеческим-пренечеловеческим языком.

А я вот что скажу: хотите сделать своё мышление инопланетным, опираясь на гипотезу Сепира-Уорфа, — освойте хорошенько SQL. И регулярные выражения, а заполируйте sed и awk. Императивные и функциональные языки программирования для этого недостаточно хороши: они не слишком нечеловеческие.

March 2015

RIP


Искусственный интеллект, от жидов на Пурим умученный.

Теперь проясняется судьба Массачуссетской машины.
March 2015

ЖЖ-клиент под Ubuntu 15.10

Собирался написать в блог и обнаружил, что после апгрейда до Ubuntu 15.10 клиент LogJam отвалился и более не устанавливается.

Blogilo сумел только получить список сообществ, куда я могу писать. Остальные клиенты, как я понял, вообще нерелевантны.

Может быть, кому-нибудь известен клиент для Живого журнала, заведомо работающий под Ubuntu 15.10 без wine?
March 2015

Цвета

Я думал, что многочисленные названия цветов в CSS, вроде «шартрёза» или «фуксии», отражают богатство английского языка и развитость англосаксонского искусства: у нас слов для цветов найдётся едва ли с десяток, а остальные — не названия, а эпитеты, под которыми каждый может понимать, что хочет.

Щазз. Эти названия цветов были недавно высосаны из пальца и, в общем, до кодификации для CSS и пары других предшествовавших систем, никаким стандартом и обычаем не были определены.
March 2015

Принтер

Если вы пользуетесь ОС Ubuntu, да и вообще, любой Linux, никогда не покупайте принтеры Canon.