Pull to refresh
71
0
Макс Ахмедов @Zlobober

Разработчик распределённых систем

Send message
Это хороший вопрос. Большая часть вычислений на кластерах YT это честная batch-обработка данных, находящихся в YT. Для таких классических мапов и редьюсов запись результата производится штатными средствами YT, а они обеспечивают exactly-once семантику, т.к. интегрированны со встроенным в YT механизмом транзакций. Таким образом, если на ноде что-то сломается до сообщения об окончании джоба, записанные, но не закоммиченные выходные данные через какое-то время будут физически подчищены и никуда не попадут.

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

Если сайд-эффекты неизбежны, а к перезапускам джобов операция не готова, то на этот случай в YT есть возможность заказать тот или иной режим работы «без перезапусков»: планировщик может либо просто игнорировать не завершившиеся успешно джобы, либо тут же аварийно завершать всю операцию.
> Авторами программы, предположительно, являются Ефим Бушманов и Сергей Бугаев. Сергей сказал, что написал большую часть кода.

Автор, читай внимательно, на что ссылаешься. В упомянутом тикете чёрным по белому написано, что код написан Ефимом Бушмановым, а Сергей лишь открыл тикет, в котором интересуется о правовом статусе проекта.
Андрей Лопатин прекратил участвовать в подготовке школьников около пяти лет назад, сейчас с кандидатами в сборную работает состав тренеров, в числе которых есть и Андрей Станкеивч.
По положению о проведении международной олимпииады страна-организатор имеет право выставить вторую сборную, участвующую вне конкурса.
Мы не можем переставлять элементы по сравнению с их порядком в исходной последовательности, поэтому мы действительно можем получить только (2, 3, 2, 3).
Нет, переупорядочивать нельзя. Мы разбиваем на подпоследовательности, которые необязательно состоят из подряд идущих элементов. Например, из последовательности (1, 2, 1, 2) первый и третий элементы пойдут в одну хорошую последовательность, а второй и четвёртый — в другую, речь идёт об этом.
Да, например, победитель соревнования Егор Куликов пишет исключительно на Java.

Результаты соревнования доступны здесь: https://contest.yandex.ru/contest/2620/standings/
> Абсолютно все золотые призеры РФ не справились с последней, седьмой задачей, набрав за нее 3, 2, 1 и 0 баллов соответственно своим местам в итоговой таблице.

Ну только не седьмой, все-таки, а шестой.
Я сейчас правда на хабре?
Ну, справедливости ради, данные в std::array могут жить как на стеке, так и на куче (например, если std::array используется как поле в классе, экземпляр которого размещения в куче).
*Коммент про не все знают шутку расскажите же*
На фоне ошеломляющих новостей уже трудно отличить, но это вроде не всерьез (а жаль). И вас с наступившим :)
Очень хорошее изложение! Как человек с математическим образованием, не нашедший достаточно времени в школе на физику, я получил искреннее удовольствие от прочтения.
Наверное, называем. В моем представлении, которое не противоречит приведенному вами определению в Википедии, на гитхабе есть инструмент для код-ревью: клик (секция collaborative code review). А вы о чем?
На гитхабе есть встроенный инструмент код-ревью для пулл-реквестов.
Не говоря уже о том, что b будет иметь тип A*, а не A.
Супер-клево! Я только не понял, почему вы должны были умереть через 7 дней.
Про баг с одинаковыми именами:

max = max( max( r, g ), b );


Насколько я помню, в Visual Studio при правильном подборе заголовочных файлов и дефайнов max(a, b) является макросом с содержанием в духе (((a) > (b))? (a): (b)). Это объясняет, почему данная строка компилируется (в правой части скобки есть, и поэтому max развернулся в тело соответствующего макроса, в левой остался, как был, переменной max).

Особо приятной плюшкой такого макроса является черт знает какое поведение, когда выражения a и b имеют сайд-эффекты при вычислении, или, что еще хуже, когда макрос используется в рекурсии (легкой подстановкой макроса время исполнения функции из логарифмического становится экспоненциальным!)
Боже мой, это же просто боже мой! OMG!
Он не перед «дать ссылку», а после «вместо того, чтобы плюнуть и уйти, вы можете ответить:»

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Registered
Activity