LINUX.ORG.RU
ФорумTalks

[ненависть][программизды] игнорирование ошибок

 


0

2

у меня одного такое ощущение, что программизды в своих изобретениях стали стесняться показывать сообщения об ошибках? это HIG? или мода такая?

Evolution - вообще пожизненный молчок. может я неправильно им пользовался, но если пропадает инет, или IMAP посылает на 3 буквы - он тупо молчит. Нету почты и все тут.

на андроиде каждая вторая софтина с таким приколом - нету сети - ничего не работает, и _молча_.

Примеров еще много, сейчас не вспомню все, но собственно последняя капля, спровоцировавшая данный пост - HomeBank - закончилось место на диске (да, бывает такое несчастье), нажимаю на «Сохранить» - оно _молчит_, и выдает файл на 0 байт. Я потерял историю домашнего бюджета за 2 недели (да, бекапы, но как-то получилось что последний бекап - 2-х недельной давности, и бекапы не должны решать кривизну софта).

Выдох.

★★★★★

Для сотен ругани есть логи, показывать пользователю сообщение вместо того чтобы тихо восстановиться неправильно, я считаю.

AptGet ★★★
()
Ответ на: комментарий от vasily_pupkin

Потому это не проблема TCP и L4. Приложению надо знать, был ли доставлен пакет приложения - пусть оно и проверяет, по своему протоколу.

по твоей логике и tcp не нужен. Если приложению «что-то там надо» то пусть использует голый ip и само всё делает.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Ггг. Нет. Считать что доставлено и освобождать буферы от сообщения, или сохранить и ретрансмитить - это логика приложения. А необходимость проверять, что все собралось в том порядке, в котором нужно - не приложения. Круто было бы, если б SMTP сервера только по TCP ACK'ам ориентировались.

vasily_pupkin ★★★★★
()
Ответ на: комментарий от true_admin

> по твоей логике и tcp не нужен. Если приложению «что-то там надо» то пусть использует голый ip и само всё делает.

TCP нужен для обмена потоками данных. А уж как этот поток интерпретировать — это да, забота приложения.

geekless ★★
()
Ответ на: комментарий от geekless

TCP нужен для обмена потоками данных

именно об этом я и говорю, большинство приложений абсолютно непоточные и разбитие потока на чанки создаёт только проблемы.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Вроде же ты говорил о «принципиальной проблеме» TCP? Почему бы не использовать sendmsg, раз эти самые приложения такие «непоточные»? )

vasily_pupkin ★★★★★
()
Ответ на: комментарий от true_admin

> именно об этом я и говорю, большинство приложений абсолютно непоточные и разбитие потока на чанки создаёт только проблемы.

Согласен. Но «инновацинного протокола поверх IP» у нас нет и в ближайшем будущем не предвидится. А TCP есть здесь и сейчас. :)

geekless ★★
()
Ответ на: комментарий от vasily_pupkin

Почему бы не использовать sendmsg

ненадёжная доставка.

Йопрст, не прикидывайся что ты не понимаешь о чём. Всякие асечки, xmpp, http, сетевые игрушки итд итп по своей природе используют пакетный обмен. Всё равно tcp это ни разу не поточный обмен, данные приходят дискретно пакетами, просто границу пакетов программист не может контроллировать.

Думаю именно поэтому sctp придумали.

true_admin ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Расскажи мне, каким ты видишь транспортный протокол без гемороя?

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

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Я действительно не понимаю чего ты хочешь. Атомарности пары /write->read/ для «сообщений»? В общем случае это невозможно. Просто гарантий доставки хосту? Но какой в этом смысл? Пусть у меня прокси сервер по середине стоит. Он замечательно получает поцкеты, но не передаёт их дальше. И что?

Вобщем, я нуждаюсь в пояснениях.

vasily_pupkin ★★★★★
()
Ответ на: комментарий от true_admin

Какую из указанных выше проблем должен по твоему мнению решать SCTP?

vasily_pupkin ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Мне кажется, он говорит о некоем подобии RPC, чтобы взаимодействие агентов по сети выглядело более как обмен сообщениями между процессами на микроядре, чем как обмен потоками байт.

geekless ★★
()
Ответ на: комментарий от vasily_pupkin

Я хочу более удобный ipc, как минимум вот эти фичи.

Но, к сожалению, даже они даже близко не решают всех проблем(обход nat, туннелирование итп).

у меня прокси сервер по середине стоит

Именно поэтому, как ты раньше писал, уведомления должны быть на уровне приложений.

Сорри что увёл дискуссию в сторону, не надо был мне tcp-срач начинать...

true_admin ★★★★★
()
Ответ на: комментарий от geekless

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

так точно :)

true_admin ★★★★★
()

Во всем яббл виноват. Если пользователь не видит сообщения об ошибке - значит ничего не было. Если по-тихому перезагрузить ось - не было и кернелпаника

DNA_Seq ★★☆☆☆
()

> стали стесняться показывать сообщения об ошибках

[fat]а зачем, если можно выбросить ексепшн?[/fat]

x0r ★★★★★
()

>оно _молчит_, и выдает файл на 0 байт

эээ, дорогой, ты в nano при 0 байт свободного места попробуй сохранить файл, удивишься, ей Богу. Я так один очень важный конфиг профукал, благо бэкапы наше всё

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte

намекаешь что это чудный Linux-мозоль? я как-то не сталкивался с таким...

dib2 ★★★★★
() автор топика
Ответ на: комментарий от x0r

ну зачем падать? словить, распарсить в удобоваримый вид, и положить на видное место (окно, статус-бар, балун-тип, notify-osd, лог). но нет же...


люди, что гномо-HIG говорит на эту тему - кто в курсе?

dib2 ★★★★★
() автор топика
Ответ на: комментарий от vasily_pupkin

SO_KEEPALIVE? это тот же heartbeat. просто на уровне TCP, кстати, плохо контролируемый - кросс-платформенная регулировка тайм-аута представляет некоторый геморой, кроме того, heartbeat в userspace (если его можно так назвать), дает дополнительный профит - клиент может точнее удостовериться что сервер жив - не заполнены тредпулы, есть ли ресурсы, и т.п.

dib2 ★★★★★
() автор топика
Ответ на: комментарий от vasily_pupkin

собственно это я и мел ввиду, пардон, не сервер, а сервис.

dib2 ★★★★★
() автор топика

Родной, не путай программистов с кодерами.

Просто первые сейчас затерялись среди вторых. Соответственно, и результат...

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

Да, это плохо, что люди себе громкие титулы придумывают... Я в жизни встречал только одного программиста и одного кодера...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от dib2

>>А всё ради того, чтобы лишний раз не пугать хомячков.

и это убивает.

Если это убивает хомячков, то я только «ЗА»

Led ★★★☆☆
()
Ответ на: комментарий от Led

хомячки читать не умеют, только писать, поэтому им пофигу. а что делать тем, кто умеет читать?

dib2 ★★★★★
() автор топика
Ответ на: комментарий от hobbit

Родной, не путай программиздов с Программистами.
последних видел только 1 раз в жизни, и себя, к сожалению, таковым не считаю. но буду упорствовать))

dib2 ★★★★★
() автор топика

>> бекапы не должны решать кривизну софта
В мире, где царствует быдлокод, это так. Привыкай.

wintrolls ☆☆
()
Ответ на: комментарий от AndreyKl

Пусть тред уже давно протух, но:

Полное отключение вывода ошибок лучше, чем 1500 переключений режима вывода ошибок.

winddos ★★★
()
Ответ на: комментарий от winddos

пусть тред уже давно протух, но:

чем лучше то?

AndreyKl ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.