Re: Код возврата

From
Valentin Nechayev (2:5020/400)
To
Artem Chuprina
Date
2005-08-09T15:27:16Z
Area
RU.PERL
From: Valentin Nechayev <netch@segfault.kiev.ua>


>>> Artem Chuprina wrote: 

 VN>> Во-первых, нет - они юниксовыми шеллами запускаются впараллель, это
 VN>> неопровержимый факт :)

 VN>> Во-вторых, проблема несколько не в этом: проблема конвейера как IPC
 VN>> механизма в целом - что нет средств определения факта _корректного_
 VN>> завершения предыдущих команд, если это не передаётся явным образом
 VN>> средствами протокола. Запуская что-то вроде grep | sort | mail,
 VN>> и не предусматривая явно контроля статуса завершения каждой команды,
 VN>> ты увидишь факт неудачи только на stderr, и к тому же он не будет
 VN>> пригоден для машинного разбора - только для человека. Если же кормишь,
 VN>> например, базу данными, которые оборвались посредине обработки -
 VN>> последствия могут быть самыми разными... В этом смысле конвейер -
 VN>> очень примитивная модель, непригодная для надёжных автономных систем.

AC> Ну, есть вменяемые шеллы...  bash с его PIPESTATUS и так далее.  В
AC> середине, конечно, ой, а по завершении конвейера проверить вполне себе можно.

А если данные уже в базе и транзакция совершена? Будешь откатывать
назад? А на неё могли уже опереться в создании новых данных, или
триггер какой сработал :)

В общем, несерьёзная технология. Впрочем, ещё и оффтопик :)


-netch-
--- ifmail v.2.15dev5.3
 * Origin: Dark side of coredump (2:5020/400)
SEEN-BY: 50/203 520 400/462 814 450/159 186 451/30 461/43 132 640 469/999
SEEN-BY: 4616/3 4625/8 4627/10 4635/4 4641/444 5000/76 5000 5001/5001 5006/1
SEEN-BY: 5007/1 5010/53 70 5012/8 46 5015/10 5020/118 154 175 194 400 545 549
SEEN-BY: 5020/715 758 830 982 1057 1523 1604 1665 1922 2013 2020 2142 2238
SEEN-BY: 5020/2590 4441 5021/3 29 5022/128 5025/3 750 5026/14 49 5027/16
SEEN-BY: 5030/49 115 436 556 966 1063 1339 1900 5031/47 70 5033/21 5035/3
SEEN-BY: 5036/1 5040/47 5042/13 5045/7 5049/1 5051/15 5053/16 5054/1 8 9 35 36
SEEN-BY: 5054/37 45 66 67 81 85 5057/1 5059/9 5060/3 88 5061/15 120 5062/1 10
SEEN-BY: 5064/39 5066/18 5069/7 5070/1222 5075/5 5077/70 80 5080/80 1003
SEEN-BY: 5081/2 5082/6 5083/21 5085/13 5090/108 113 5095/20 6000/12 6001/3
PATH: 5020/400 4441 545 5054/1 37