metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2015-04-20 05:14 pm

bit rot

Только что обнаружил что-то, по симптомам очень похожее на bit rot.
Рабочий компьютер, тестовый CI сервис ругается, что не может собрать проект. Причем собирает он всегда из репозитория, на других CI серверах все ок. Заглядываю в исходники - а там в нескольких строках биты случайно покорежены:
буква 'e' (код 0x65) заменена на букву 'd' (код 0x64)
буква 'e' (код 0x65) заменена на букву 'u' (код 0x75)
буква 'a' (код 0x61) заменена на букву 'A' (код 0x41)
буква 'o' (код 0x6F) заменена на букву 'O' (код 0x4F)
и еще переносы в другие контрольные символы превращены.

И главное - меркуриал этого не видит. Вообще не видит - время и размер файла не изменились, ему пофиг, соответственно, он внутрь не заглядывает.

Надо на этом компе, что ли, память и диски проверять срочно.

[identity profile] tzirechnoy.livejournal.com 2015-04-20 02:19 pm (UTC)(link)
На rowhammer протэстируешь?

[identity profile] metaclass.livejournal.com 2015-04-20 02:22 pm (UTC)(link)
Хм, а утилиту под это дело какую-нибудь уже выпустили?
Там скорее проблема с диском, т.к. этот файл не менялся последние два месяца вообще.

[identity profile] zerthurd.livejournal.com 2015-04-20 02:34 pm (UTC)(link)
Попробовал такое с гитом повторить, не получается. А с меркуриалом получилось сразу. Уже только за такое им не следует пользоваться.

[identity profile] levgem.livejournal.com 2015-04-20 02:37 pm (UTC)(link)
что такое bit rot

[identity profile] vitmain.livejournal.com 2015-04-20 02:58 pm (UTC)(link)
Распиши в двоичном виде значения исходное и замененное в двоичном виде, так будет заметно какие биты шалили.

[identity profile] maxdz.livejournal.com 2015-04-20 03:42 pm (UTC)(link)
Да, похоже диск накрывается...

[identity profile] tzirechnoy.livejournal.com 2015-04-20 03:47 pm (UTC)(link)
Да, выпустили патченный memtest.

[identity profile] juan-gandhi.livejournal.com 2015-04-20 04:00 pm (UTC)(link)
У нас был случай, когда на диске проводочек отвалился, и во всех сорсах старший бит байта оказался =1. Было прикольно.

[identity profile] metaclass.livejournal.com 2015-04-20 04:01 pm (UTC)(link)
Случайные изменения битов в хранящихся файлах из-за глюков железа.

[identity profile] metaclass.livejournal.com 2015-04-20 04:04 pm (UTC)(link)
А, надо еще этот файл в виде таблички хекс-значений посмотреть.
Может там и в расположениях бит какие-нибудь закономерности есть.

[identity profile] metaclass.livejournal.com 2015-04-20 04:29 pm (UTC)(link)
Пишут, что by design - первая проверка делается по времени файла всегда.

[identity profile] anatoly borodin (from livejournal.com) 2015-04-20 04:56 pm (UTC)(link)
У знакомого была проблема — я ему на свежий тазик фряху методом компиляции ставил, так компиляция падала каждый раз в разном месте с разными синтаксическими ошибками. Оказалось, біла битая память.

гниение битов

[identity profile] avnik.livejournal.com 2015-04-20 06:47 pm (UTC)(link)
А люди еще удивляются -- почему мне паук велит делать raid1, и покупать память с ECC.

[identity profile] eternal-leave.livejournal.com 2015-04-20 06:57 pm (UTC)(link)
Я у себя bit rot наблюдал, когда шалил один из конденсаторов в цепи питания процессора )

[identity profile] eternal-leave.livejournal.com 2015-04-20 06:58 pm (UTC)(link)
Дооо, гитовая проверка по содержимому особенно доставляет, когда у тебя 4к файлов в репе.

[identity profile] kzn.livejournal.com 2015-04-20 07:40 pm (UTC)(link)
А на диске ли? Диск же вроде контрольную сумму считает при передаче.

[identity profile] metaclass.livejournal.com 2015-04-20 07:54 pm (UTC)(link)
Да вот я тоже не уверен - может файл в кэше винды лежит, а память покалечилась.

[identity profile] http://users.livejournal.com/_slw/ 2015-04-20 08:24 pm (UTC)(link)
а что репа такая маленькая?

[identity profile] zerthurd.livejournal.com 2015-04-20 09:07 pm (UTC)(link)
Далеко не у всех 4к файлов в репе, а у кого столько есть, тот может включить проверку только по mtime. Меркуриал же имеет плохое поведение по умолчанию, а это непростительно и является тяжким грехом.

[identity profile] eternal-leave.livejournal.com 2015-04-21 10:10 am (UTC)(link)
Жизнь несправедлива и жестока потому что.

[identity profile] 4d7sd.livejournal.com 2015-04-21 12:21 pm (UTC)(link)
метакласс говорил, что за ним в Ратомке охотятся черные трансплантологи. может это как-то взаимосвязано.

[identity profile] 4d7sd.livejournal.com 2015-04-21 12:25 pm (UTC)(link)
это агенты массада проворачивают свои грязные делишки.