Владислав Васильевич
Текст голосового сообщения:
От Владислав С. : В смысле то ничего. А если я фейковый напишу, который будет, ну, солидный чей-то.
То есть ты авторизуешься дважды. В офисе оператора и в через ussd. Так?
Евгений
То есть ты авторизуешься дважды. В офисе оператора и в через ussd. Так?
Один раз предоставил данные для внесения в базу, а дальше сам
Один раз предоставил данные для внесения в базу, а дальше сам
Ну то есть дальше я сам покупаю карты в любом супермаркете, так ведь?
Евгений
Ну то есть дальше я сам покупаю карты в любом супермаркете, так ведь?
Сейчас вроде не продают, только у представителей
Владислав Васильевич
Текст голосового сообщения:
От Владислав С. : Если я напишу фейковый ИНН который либо будет чьим-то чужим. То есть ээ узнаю ИНН другого человека, а не себя. который уже является этого вашего оп соса. и по нему авторизуюсь. Что будет? Что-то будет? Нет, как вообще телефон проверить свой ты написал или чей-то чужой.
SetPf
Слуште. А как насильно записать буфер файла в носительн? Сценарий такой. При перезагрузке - проходит сигнал и все пишущие в файл модули закрывают (fclose) файлы и докладывают о готовности
SetPf
После чего через 500мс стреляет ребут.
SetPf
По факту вижу, что часть последней инфы не записана в файлы.
SetPf
Такое ощущение, что файловая система держит данные в буфере, не желая их записать до какого-то момента
SetPf
и резетится вместе с ними
Евгений
а есть такое типа - flush ?
SetPf
неа
Евгений
тогда надо погадать над используемой библиотекой =)
Евгений
может быть вообще отмонтировать файловую систему
SetPf
а есть такое типа - flush ?
Я думаю это решит проблему
SetPf
fsync?
fflush помог
SetPf
я на самом деле не оч понял, чем они фактически различаются
SetPf
фсинк как я понял это больше про совместный доступ и чтение
Anton
fflush помог
всё равно рекомендую fsync, он, обычно, глобальнее
Anton
fflush -- элемент stdio, fsync -- работает на уровне файлхендла
SetPf
а есть где in-depth почитать?
SetPf
я чет по апи референсу читаю и не оч сходу разница чувствуется в контексте записи
Anton
но если ты пользуешься именно stdio, то fflush лучше
SetPf
не, я fwrite пользуюсь
SetPf
вроде это имелось ввиду
Anton
fwrite -- stdio
Anton
он с буфером внутренним. именно его сливает fflush
SetPf
блин вот и незнание этих ваших линухов и ос всплывает...
Anton
имеет смысл делать их обойих
SetPf
ок
Anton
fflush(fp); fsync(fileno(fp));
Anton
первое сольёт буфер приложения, второе сольёт всё на уровне ядра
Anton
все кеши устройства
первое сольёт буфер приложения, второе сольёт всё на уровне ядра
Достаточно просто выполнить fsync в командной строке
Anton
> calling fflush on a POSIX system does not imply that fsync will be called. их надо обоих звать
Точнее просто sync
В командной строке пишешь он все сливает
Anton
fsync либо смонтировать файловую систему с нужным параметром
> либо смонтировать файловую систему с нужным параметром тормозить будет жутко
Смотря какие задачи у человека
Допустим базы данных критические постгреса я использую только в случае fsync
Anton
мы всё ещё про ембеддед?
А я не понял о какой конкретно он платформе.
флешку убить?
Почему флешку именно? Может хдд/ссд
Anton
Почему флешку именно? Может хдд/ссд
ну он написал "носитель"
Anton
возможно его переносят
малинка у меня тут лежит и порой бесит, поменял один файлик - дернул малинку по питанию - файлика нет)
Anton
Точнее просто sync
мы всё ещё о программировании? кстати, простой синк тоже есть, сливает все кеши устройств вообще.
Anton
Я так и написал sync - сливает все
ты про комстроку, я про сисколл
Ну какая разница хоспаде. Что сискол, что ком строка который его вызывает. Не придирайся
Anton
https://man7.org/linux/man-pages/man2/sync.2.html
Я в курсе капитан
Anton
у меня однажды опыт был. свой логгер, кучка проектов в контейнерах, контейнеры все на ссд. и добавил я в логгер чтобы он после каждой записи делал fsync, контейнеры просто встали колом.
Почему? Диск был домашний и не вывез иопсы?
Anton
Почему? Диск был домашний и не вывез иопсы?
нет, сервер был нормальный, в OVH,128гб рам
А зачем тебе fsync? Там не аппаратный рейд был?
Точнее наоборот. Аппаратный рейд, но fsync не должен так класть сервак
В кеш рейда улетает. Либо рейд был в режиме WT
Anton
А зачем тебе fsync? Там не аппаратный рейд был?
не помню, возможно просто "для надёжности", оно ж только один файл должно было синкать. контейнеров 10 было там. нагрузка на отдельный небольшая
Anton
рейд был зеркалом из двух ссд
Anton
синк собстна потому что файл то не закрывается, чтобы кеши ос слила на диск
Anton
короче, добавление фсинка ложило сервак и я его убрал. типа пропадёт что-то в логе последнее, и хрен с ним. сделал правда закрытие-открытие файла на каждую запись
fsync в случае рейда (если он аппаратный) сливает из кеша ос в кеш рейда
Если кеш рейда был отключен (WT режим), то очень печально это будет, да
Anton
fsync в случае рейда (если он аппаратный) сливает из кеша ос в кеш рейда
проблема в том, что сливает все кеши, а не одного файла. хотя должно было быть только одного. а может там на самой сата шине резко команды становились синхронными
А так диски были таки сата?
Anton
то был примерно 2014 год, нвме ещё не предлагался, вроде