Апрельские "нешутки", записанные в пятницу не 13-го

04.04.15

Сообщество - О жизни

Пара баек из жизни незадачливого кодера или почему падал сервер.

Жил-был незадачливый кодер на фиксе. Он не очень твердо выговаривал буквы и цифры, путал 1 и 0, приход с расходом и дебет с кредитом, и вообще матчасть знал на твердую тройку, догадываясь о ней по её реакциям на кодерский код, но был прилежен и усидчив в работе, начальники и проектировщики попадались все добрые и понимающие, давали мелкие и средние задачи, которые выполнялись почти в срок, за что к кодеру относились вполне сносно и терпеливо.

Байка №1. Непроверенный кусок кода или "злобный копипаст".

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

Тут кодер смутно припоминает, что вчера вечером он внес небольшое изменение в код. Посмотрел, ага, именно он.

Функция ДляУправляемыхФормВернутьДеньНачалаОткрытияСписка() Экспорт
	ДеньНачалаОткрытияСписка = ДобавитьДниКДате(ТекущаяДата(), -3);
	// Учитываем пятницу и субботу
	Пока (ДеньНедели(ДеньНачалаОткрытияСписка) = 5) ИЛИ (ДеньНедели(ДеньНачалаОткрытияСписка) = 6) Цикл
		ДатаЗапретаИзменений = ДобавитьДниКДате(ДеньНачалаОткрытияСписка, - 1);
	КонецЦикла;
	
    Возврат ДеньНачалаОткрытияСписка;
КонецФункции

Скопипастил, а переменную внутри цикла заменить забыл. Приходит пользователь, открывает журнал документов и одно ядро занято, крутит бесконечный цикл. И так далее. "Бомба" срабатывает только по понедельникам и вторникам. Потом заменив одну переменную, сорок минут обновлял базу, отбиваясь от наседающих пользователей, желающих работать. Морали нет, всех время от времени клинит...

Байка №2. Размножающийся Paint.

Как-то кодеру дали очередное несложное задание: сваять макет ценника для акций, акции обозначаются галочками и текстом. Сколько акций, столько и галочек. PNG-файл с галочкой прилагается.

Кодер почесал в затылке, открыл Paint-ом файл, скопировал в буфер галочку, вставил в макет... и получил вместо галочки черный квадрат Малевича. Ладно, решил он, объедем на другой козе. Вставил в макет объект Paint, вставил в открывшийся Paint галочку, закрыл, посмотрел - хорошо получилось. Сдал задачу коллеге-заказчику.

Спустя некоторое время звонит коллега и говорит, что вывод на экран нескольких десятков ценников занимает весьма значительное время, в течение которого компьютер невероятно тормозит.

Подробный анализ ситуации показал, что для вывода каждого ценника на экран, для каждой галочки в этом ценнике, сервер трудолюбиво открывал свой Paint, таким образом размножая Paint в процессах в геометрической прогрессии. Белые экраны конфигуратора и предприятия на тормозящем сервере представляли собой зрелище не для слабонервных. Закрытие сформированного табличного документа с ценниками закрывало все Paint-процессы.

Для чего вообще существует такая возможность, вставлять в макет объект, и почему сервер реагирует на это именно таким образом, осталось за пределами скромного кодерского разума, галочки были переставлены в макет как картинки из файла, макет с несколькими десятками ценников стал формироваться в секунду и все разошлись по своим делам.

Продолжение следует...

копипаст падение сервера объект в макете

См. также

О жизни Россия Бесплатно (free)

Данная статья сугубо для раздела «О жизни», но может оказаться полезна многим членам сообщества. Все описанное ниже соответствует актуальному российскому законодательству на момент публикации статьи. У вас нет и в ближайшее время не предвидится детей возрастом до 1.5 лет? Вспомните о родственниках / друзьях / коллегах / знакомых, у которых они есть, и отправьте ссылку на эту статью — она может быть им чрезвычайно полезна. Распространите среди жильцов вашего ЖЭКа, как говорилось в одном классическом произведении. Помните, что, ставя плюсы к статье, вы поддерживаете её автора!

01.07.2024    5202    madonov    47    

51

О жизни Linux Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Использование Linux в качестве основной ОС для программиста 1С, возможно ли это? Решил поделиться личным опытом работы перехода на эту систему. В статье моя история без технических деталей максимально простым языком. И, спойлер, да, жизнь на Линуксе для разработчика 1С возможна и с каждым годом становится всё комфортней. Статья рассчитана на людей, с Линуксом не знакомых, специалистов прошу не кидаться помидорами.

16.05.2024    5572    soulner    33    

45

О жизни Россия Бесплатно (free)

Подводим итоги работы в 1С за 2023 год. Все о вас: 4 подробных раздела с цифрами, графиками и ужасными цветами диаграмм (должна же где-то быть стабильность).

08.02.2024    27753    Neti    85    

121

О жизни Бесплатно (free)

В процессе написания статей на тему Идеальное место работы ЗУПера нужен аргументированный текст про адекватного работодателя. Информации получилось много, поэтому выделю в отдельные 2 статьи. Рассмотрим все недостатки работодателей от момента собеседования до момента увольнения. Все этапы, как всегда, подкреплены реальными случаями из моего опыта.

22.01.2024    5442    biimmap    67    

76

О жизни Конфигурации 1cv8 Бесплатно (free)

В процессе написания статей на тему Идеальное место работы ЗУПера нужен аргументированный текст про адекватного работодателя. Информации получилось много, поэтому выделю в отдельные 2 статьи. Рассмотрим все недостатки работодателей от момента собеседования до момента увольнения. Все этапы, как всегда, подкреплены реальными случаями из моего опыта.

16.01.2024    7067    biimmap    100    

79

О жизни Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Бесплатно (free)

Импортозамещение увеличило потребность в архитекторах, аналитиках, разработчиках 1С, в т.ч. по ЗУП. Все их ищут всеми возможными способами, но не могут найти и не знают, чем же их завлечь к себе!? Давайте разберёмся в этом вопросе!

27.11.2023    5674    biimmap    52    

74

О жизни Сообщество Бесплатно (free)

Прочитав название публикации, мысль возникает о свадьбе... Но речь не об этом!

25.08.2023    3163    biimmap    24    

51
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. script 128 04.04.15 07:57 Сейчас в теме
Коды разные важны - коды разные нужны
maxkisa; amon_ra; cargobird; +3 Ответить
2. varovinm 09.04.15 08:17 Сейчас в теме
Ну с пэинтом ты погарячился, Сэнсэй :)
cargobird; +1 Ответить
3. cargobird 308 09.04.15 11:18 Сейчас в теме
(2) varovinm, Миша, рад тебя здесь видеть)
Ага, это возможная тема для очередной статьи "Сборник неочевидных затыков для бывалого программиста")
Оставьте свое сообщение