Я, кажется, не рассказывал об этом смешном случае? Подходит ко мне как-то товарищ по работе:
- Володя, ты же работал с MySQL... Не знаешь, как в нём увеличить максимальный размер запроса?
Верный принципу "отвечай не на вопрос, а на то, что пытаются спросить", я быстренько прокручиваю в голове варианты. Зачем ему это? Предельный размер запроса обычно такой, что достичь его нереально. Мегабайт или два. Текст такой длины - это как "Война и мир". Ни один человек такого запроса не напишет.
Может, он генерирует его автоматически?
- А какой длины у тебя запрос? - спрашиваю я
- Два гигабайта.
- ............
Если бы это был баттл-шонен, тут бы началась нарезка из шокированных лиц всех участников сражения. Воины бросают оружие и отступают плотнее к товарищам, потому, что панический ужас охватывает их при виде человека, у которого SQL-запрос размером два гигабайта. Мужчины скромно прикрывают свои автоматически сгенерированные SQL-запросы, которые, как теперь выясняется, совсем не такие большие, как им казалось!
Два гигабайта. Это приказ серверу в четырёх тысячах томов, указание, для хранения которого нужно выстроить величественную библиотеку, это, можно сказать, то самое Слово - могучее и всеобъемлющее - во исполнение которого родилась вся вселенная. Если бы этот приказ зачитывал человек, на его оглашение ушло бы несколько лет.
И какими данными нужно оперировать, чтобы о них можно было дать столько уточнений?!
Реальность оказалась прозаична. Программист генерировал сценарий некоторой 3D-сцены, а потом сохранял его в MySQL-базу (sic!), передавая в хексе:
INSERT IGNORE INTO tableName VALUES Data=0x'5B7716A6A18... - и ещё два миллиарда букв.
Реальность также оказалась прагматична. Вместо того, чтобы переучивать программиста делать что-нибудь более... здравомысленное, админ просто поднял максимальный размер пакета в MySQL до трёх гигабайт. Пока хватает.
- Володя, ты же работал с MySQL... Не знаешь, как в нём увеличить максимальный размер запроса?
Верный принципу "отвечай не на вопрос, а на то, что пытаются спросить", я быстренько прокручиваю в голове варианты. Зачем ему это? Предельный размер запроса обычно такой, что достичь его нереально. Мегабайт или два. Текст такой длины - это как "Война и мир". Ни один человек такого запроса не напишет.
Может, он генерирует его автоматически?
- А какой длины у тебя запрос? - спрашиваю я
- Два гигабайта.
- ............
Если бы это был баттл-шонен, тут бы началась нарезка из шокированных лиц всех участников сражения. Воины бросают оружие и отступают плотнее к товарищам, потому, что панический ужас охватывает их при виде человека, у которого SQL-запрос размером два гигабайта. Мужчины скромно прикрывают свои автоматически сгенерированные SQL-запросы, которые, как теперь выясняется, совсем не такие большие, как им казалось!
Два гигабайта. Это приказ серверу в четырёх тысячах томов, указание, для хранения которого нужно выстроить величественную библиотеку, это, можно сказать, то самое Слово - могучее и всеобъемлющее - во исполнение которого родилась вся вселенная. Если бы этот приказ зачитывал человек, на его оглашение ушло бы несколько лет.
И какими данными нужно оперировать, чтобы о них можно было дать столько уточнений?!
Реальность оказалась прозаична. Программист генерировал сценарий некоторой 3D-сцены, а потом сохранял его в MySQL-базу (sic!), передавая в хексе:
INSERT IGNORE INTO tableName VALUES Data=0x'5B7716A6A18... - и ещё два миллиарда букв.
Реальность также оказалась прагматична. Вместо того, чтобы переучивать программиста делать что-нибудь более... здравомысленное, админ просто поднял максимальный размер пакета в MySQL до трёх гигабайт. Пока хватает.