078B6E3C77B9565836EFEA126CE0AD20 != 078B6E3C77B9565836EFEA126CE0AD20

  • Автор темы Автор темы Gfoblin
  • Дата начала Дата начала

Gfoblin

Client
Регистрация
30.05.2013
Сообщения
4 715
Реакции
1 057
Баллы
113
Почему 078B6E3C77B9565836EFEA126CE0AD20 не равно 078B6E3C77B9565836EFEA126CE0AD20 ?

Вроде строчки идентичны... но один раз из миллиона они не равны :)
В общем на серваке считает crc/md5 файла, потом зенка считает и это дело сравнивается в кубике if... и вот вроде всё работает ровно, но где-то 1 на миллион они почему-то не совпадают...
 
В чем проблема поставить повторную перепроверку + запись в лог в случае наличия разницы?
 
В чем проблема поставить повторную перепроверку + запись в лог в случае наличия разницы?
вот в лог и пишется это... так собственно и обнаруживаю...
повторная как вариант конечно же... но тогда какой проверки верить? :)
 
сами по себе механизмы c# тоже могут иметь изъяны
я читал, что некоторые разработчики жаловались на ошибки конвертации числовых значений, которые уж точно были числовыми
Это могут быть ошибки Net Framework, какой-нибудь ошибочные инструкции CLR или ещё че-нибудь, так что лучше просто поставить проверку повторную и если обе не прошли, то искать проблемы в коде, а если вторая пройдет, то её считать верной
 
Пару самых логичных вариантов:
1. В какой-то из предложенных строк в конце идет пробел или перевод строки, нужно сделать обоим строкам предварительно Trim
2. Строки сравниваются не как строки (а в этом случае может подтягиваться какой-то другой тип данных и там идет сравнение каким-то другим образом)
 
в строке символ на другом языке ?
 
попробуй добавить кавычки

Код:
Развернуть Свернуть Копировать
'078B6E3C77B9565836EFEA126CE0AD20' != '078B6E3C77B9565836EFEA126CE0AD20'

цифры можно без кавычек, а текст обязательно в кавычках... давно усвоил )
 
никто ничего не знает кроме познавших, а те и знать ничего не хотят.
 
я думаю, что ТС в курсе насчет кавычек..
 
я не поленился - сравнил..
полная идентичность..
:-)
Ну эт понятно, что из поста тс они идентичны))
Надо, что бы тс в шаб встроил сброс строк в файл после ошибки проверки.
 
Ну эт понятно, что из поста тс они идентичны))
Надо, что бы тс в шаб встроил сброс строк в файл после ошибки проверки.
да я сбрасываю, т.к. файл где не совпадает это дело удаляется и я руками проверяю почему такое...
Вот прошло 85000 циклов проверок и вот там такое :( т.е. кубик сравнения в зенке ошибся 1 раз на 85к!
К стате вопрос возник, т.к. в файл с этими ошибками пишем по красной ветки сравнения, может ли он сработать в момент падения инстанта, или тогда только по бедэнду выход?
 
да я сбрасываю, т.к. файл где не совпадает это дело удаляется и я руками проверяю почему такое...
Вот прошло 85000 циклов проверок и вот там такое :( т.е. кубик сравнения в зенке ошибся 1 раз на 85к!
Код:
Развернуть Свернуть Копировать
if (project.Variables["a"].Value != project.Variables["b"].Value)
    {
        File.WriteAllText(@"C:\a.txt", project.Variables["a"].Value, Encoding.UTF8);
        File.WriteAllText(@"C:\b.txt", project.Variables["b"].Value, Encoding.UTF8);
        throw new Exception("md5 не сходятся"); // по красной
    }
К стате вопрос возник, т.к. в файл с этими ошибками пишем по красной ветки сравнения, может ли он сработать в момент падения инстанта, или тогда только по бедэнду выход?
Если имеется ввиду завершение, то надо закончить логику этим кубиком, если вылет, то нет.
 
Пока вот еще 2 вылезло
09C27EA25BAB7EAD2B2336A2CFE37982 != 09C27EA25BAB7EAD2B2336A2CFE37982
078B6E3C77B9565836EFEA126CE0AD20 != 078B6E3C77B9565836EFEA126CE0AD20
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)