公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
公式ドキュメント
https://www.rust-lang.org/learn
Web上の実行環境
https://play.rust-lang.org
※Rustを学びたい人はまず最初に公式のThe Bookを読むこと
https://doc.rust-lang.org/book/
※Rustを学ぶ際に犯しがちな12の過ち
https://dystroy.org/blog/how-not-to-learn-rust
※Rustのasyncについて知りたければ「async-book」は必読
https://rust-lang.github.io/async-book/
※次スレは原則>>980が立てること
前スレ
Rust part29
https://mevius.5ch.net/test/read.cgi/tech/1746200850/
ワッチョイスレ
プログラミング言語 Rust 4【ワッチョイ】
https://mevius.5ch.net/test/read.cgi/tech/1514107621/
探検
Rust part30
レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん
2025/05/28(水) 09:31:36.60ID:ciITeZ5D825デフォルトの名無しさん
2025/06/16(月) 19:03:13.08ID:WftbHuxu >>823
異常時に停止してよい時のみpanicが使われて暴走やセキュリティの穴を防止するんだよ
異常時に停止してよい時のみpanicが使われて暴走やセキュリティの穴を防止するんだよ
826デフォルトの名無しさん
2025/06/16(月) 19:04:58.04ID:WftbHuxu >>824
落ちてはいけないプログラムでそんなことする人はいないよ
落ちてはいけないプログラムでそんなことする人はいないよ
827デフォルトの名無しさん
2025/06/16(月) 19:45:53.03ID:GmbZlZxT >>823
panicにするかどうかを決めるのはサーバーを実装する側じゃなくてサーバーを使うユーザー側だろ。
Linusじゃないけど、サーバー側がランタイムエラーでパニックを発生させるのは根本的に問題がある。単にエラーを返すべき。
panicにするかどうかを決めるのはサーバーを実装する側じゃなくてサーバーを使うユーザー側だろ。
Linusじゃないけど、サーバー側がランタイムエラーでパニックを発生させるのは根本的に問題がある。単にエラーを返すべき。
828デフォルトの名無しさん
2025/06/16(月) 19:53:50.09ID:xdTbb2+R Rustは絶対安心安全なんだよ
829デフォルトの名無しさん
2025/06/16(月) 22:35:10.42ID:GFXQS+aF >>827
もちろんあるべき姿としてはエラーを返すなりフォールバックさせるなりすべき
だけど現実はヌルポでエラーも返さずクラッシュさせてたわけでRustに置き換えればpanicで落としてたのと同じようなもの
つまりRustを使っていれば防げたかというと今回のケースは防げなかった可能性が高いということ
もちろんあるべき姿としてはエラーを返すなりフォールバックさせるなりすべき
だけど現実はヌルポでエラーも返さずクラッシュさせてたわけでRustに置き換えればpanicで落としてたのと同じようなもの
つまりRustを使っていれば防げたかというと今回のケースは防げなかった可能性が高いということ
830デフォルトの名無しさん
2025/06/16(月) 23:23:51.15ID:n/id3DH6 Rustを使えば防げただろう
831デフォルトの名無しさん
2025/06/16(月) 23:25:29.39ID:n/id3DH6832デフォルトの名無しさん
2025/06/17(火) 07:28:54.01ID:nAKE0zH5833デフォルトの名無しさん
2025/06/17(火) 08:53:29.58ID:wIiKTA/n DoS攻撃脆弱性でregexのCVEがあったけど
関連サービスの事を無視して自分勝手にpanicしちゃったら同じ脆弱性だよね
関連サービスの事を無視して自分勝手にpanicしちゃったら同じ脆弱性だよね
834デフォルトの名無しさん
2025/06/17(火) 09:28:01.71ID:qKSR12sf ヌルポ騒動が起きるたびにRustの重要性が引き上がる
835デフォルトの名無しさん
2025/06/17(火) 09:35:12.84ID:9ReeLirD836デフォルトの名無しさん
2025/06/17(火) 10:10:19.32ID:ArcAimKK837デフォルトの名無しさん
2025/06/17(火) 10:27:20.42ID:HytcwfDv Rustで書くなら関数は必ずResultもしくはOptionを返すことになり、上位で処理される
838デフォルトの名無しさん
2025/06/17(火) 10:32:24.66ID:Q1H3y5Wh839デフォルトの名無しさん
2025/06/17(火) 10:35:09.70ID:HytcwfDv840デフォルトの名無しさん
2025/06/17(火) 10:41:17.77ID:wEWjoXoE このGoogleの件に関して言うなら、ポリシーの読み込み失敗即ちロールバックなんだろうからpanicは妥当
起動時に必須の環境変数が無い場合にpanicさせるようなもんだね
起動時に必須の環境変数が無い場合にpanicさせるようなもんだね
841デフォルトの名無しさん
2025/06/17(火) 10:46:12.73ID:ya3T3y3J panicで全体を止めたくない時はUnwindSafeな処理単位をcatch_unwindで実行すればいい
使ったことないけど
使ったことないけど
842デフォルトの名無しさん
2025/06/17(火) 10:51:31.79ID:gnbFtFWo >>832
ヌルポでクラッシュさせてたのは間違いではなかったとでも?
>>823はヌルポでクラッシュさせてた人たちの認識
その人たちが仮にRustを使ってたら同じようにpanicで落とすだけ
つまりRustを使っていたとしても障害は防げないという話
それに今回の障害を見てエラーハンドリングしていれば問題なかったと考えるのは短絡的すぎる
一番の問題点は一サービスの一コンポーネントがクラッシュしただけであらゆるサービスが全面的にダウンしたという点にある
だからあらゆるコンポーネントを絶対panicしないように作ろうとするよりも一コンポーネントがpanicしたとしても全面的なシステムダウンに繋がらない仕組みを作ろうと考えることが今回のような障害を防ぐための第一歩
ヌルポでクラッシュさせてたのは間違いではなかったとでも?
>>823はヌルポでクラッシュさせてた人たちの認識
その人たちが仮にRustを使ってたら同じようにpanicで落とすだけ
つまりRustを使っていたとしても障害は防げないという話
それに今回の障害を見てエラーハンドリングしていれば問題なかったと考えるのは短絡的すぎる
一番の問題点は一サービスの一コンポーネントがクラッシュしただけであらゆるサービスが全面的にダウンしたという点にある
だからあらゆるコンポーネントを絶対panicしないように作ろうとするよりも一コンポーネントがpanicしたとしても全面的なシステムダウンに繋がらない仕組みを作ろうと考えることが今回のような障害を防ぐための第一歩
843デフォルトの名無しさん
2025/06/17(火) 10:56:21.14ID:tkXXIxpc844デフォルトの名無しさん
2025/06/17(火) 10:58:00.04ID:tkXXIxpc 異常状態のままプロセスが走り続けるよりもpanicなどでプロセス終了が正しいシステム構築
845デフォルトの名無しさん
2025/06/17(火) 11:09:29.63ID:QpxoSzQp 異常状態のまま動き続ける言語よりさ
panic or エラー処理されるRustが良い結論は変わらんよね
panic or エラー処理されるRustが良い結論は変わらんよね
846デフォルトの名無しさん
2025/06/17(火) 11:13:48.44ID:wEWjoXoE >>842
Google Cloud APIのコントロールプレーンのコアコンポーネントはさすがに一サービスの一コンポーネントとかいうレベルじゃないよ
OSのカーネルみたいなもん
こんなのヘタに誤動作を続けられたら会社が吹き飛ぶようなセキュリティ事故に繋がる可能性もあるわけで、死んでくれた方がマシ
Google Cloud APIのコントロールプレーンのコアコンポーネントはさすがに一サービスの一コンポーネントとかいうレベルじゃないよ
OSのカーネルみたいなもん
こんなのヘタに誤動作を続けられたら会社が吹き飛ぶようなセキュリティ事故に繋がる可能性もあるわけで、死んでくれた方がマシ
847デフォルトの名無しさん
2025/06/17(火) 11:52:15.15ID:e/HQQ23L ワンワンパニック
848デフォルトの名無しさん
2025/06/17(火) 12:50:17.15ID:ya3T3y3J Javaで
if (value == null) {
throw AppException();
}
を書き忘れるのとRustで
let Some(value) = opt_value else { return Err(AppError); }
の代わりに
let value = opt_value.unwrap();
と書くのは発生リスクが全然違うと思うんだけど
Javaでうっかりnullチェックを忘れる人はRustでもうっかりunwrapを使うものなのか?
if (value == null) {
throw AppException();
}
を書き忘れるのとRustで
let Some(value) = opt_value else { return Err(AppError); }
の代わりに
let value = opt_value.unwrap();
と書くのは発生リスクが全然違うと思うんだけど
Javaでうっかりnullチェックを忘れる人はRustでもうっかりunwrapを使うものなのか?
849デフォルトの名無しさん
2025/06/17(火) 13:10:12.25ID:aeCwWEdf >>848
本人判断で「自明」と決めつけて意図的にunwrapを使うのでは
本人判断で「自明」と決めつけて意図的にunwrapを使うのでは
850デフォルトの名無しさん
2025/06/17(火) 13:36:52.80ID:gAVRJIie >>822によれば
本人判断で「panicで落ちていい」と決めつけて意図的にunwrapを使うパターンもある
本人判断で「panicで落ちていい」と決めつけて意図的にunwrapを使うパターンもある
851デフォルトの名無しさん
2025/06/17(火) 14:21:36.03ID:w2F36Aoo852デフォルトの名無しさん
2025/06/17(火) 15:48:15.44ID:FL91roa2 >>846
クラッシュしたのはコントロールプレーンの一部であるポリシーチェックシステムのさらにその一部のバイナリ
もっと言えば問題が起きたのはそのまた一部のクォータチェック部分
クォータチェックができなければGCPの全サービスを落とすべきというビジネス判断としてはなくはないがIncident Reportを見る限りGoogleはそうは考えてない
クラッシュしたのはコントロールプレーンの一部であるポリシーチェックシステムのさらにその一部のバイナリ
もっと言えば問題が起きたのはそのまた一部のクォータチェック部分
クォータチェックができなければGCPの全サービスを落とすべきというビジネス判断としてはなくはないがIncident Reportを見る限りGoogleはそうは考えてない
853デフォルトの名無しさん
2025/06/17(火) 16:05:37.54ID:UZ5mCAEQ Rustにしとけ
続行不可能で意図的にpanicさせるか
きちんとResult/Option処理するかになる
続行不可能で意図的にpanicさせるか
きちんとResult/Option処理するかになる
854デフォルトの名無しさん
2025/06/17(火) 16:27:46.74ID:9ReeLirD リリースしてから実際にポリシー変更が発生するまでの2週間、
テストやりこんで最後のバグだしするまでの時間とみなすか、
リリースヨシ!と思ってたかだよな
リリース後も2週間頑張ってテストやったけど境界条件探すの下手くそで見つけられませんでした、で通るかな。自分のことのようにゾッとする
テストやりこんで最後のバグだしするまでの時間とみなすか、
リリースヨシ!と思ってたかだよな
リリース後も2週間頑張ってテストやったけど境界条件探すの下手くそで見つけられませんでした、で通るかな。自分のことのようにゾッとする
855デフォルトの名無しさん
2025/06/17(火) 17:05:59.65ID:FL91roa2 >>854
プログラムの変更とポリシーデータの変更は責任者も管轄組織もプロセスも違うんだと思う
ポリシーデータのほうはビジネスよりの組織が管轄というのはよくある話
なのでDev的にはリリースヨシ!
改善点の2点目に「Regardless of the business need for 〜」とあるからOpsはBizの政治力で本来とは違うプロセスを強制させられたのかもしれない
プログラムの変更とポリシーデータの変更は責任者も管轄組織もプロセスも違うんだと思う
ポリシーデータのほうはビジネスよりの組織が管轄というのはよくある話
なのでDev的にはリリースヨシ!
改善点の2点目に「Regardless of the business need for 〜」とあるからOpsはBizの政治力で本来とは違うプロセスを強制させられたのかもしれない
856デフォルトの名無しさん
2025/06/17(火) 18:12:51.30ID:FL91roa2 ここに内部事情を含めていろいろ書いてあった
https://news.ycombinator.com/item?id=44274563
https://news.ycombinator.com/item?id=44274563
857デフォルトの名無しさん
2025/06/18(水) 00:29:09.64ID:1jrMASAC ここでの議論と同じだね
Rustでpanicするの明示的にpanicを起こすコードを書いたときだけ
Rustでpanicするの明示的にpanicを起こすコードを書いたときだけ
858デフォルトの名無しさん
2025/06/18(水) 01:06:16.44ID:aQwOTYhv859デフォルトの名無しさん
2025/06/18(水) 01:09:01.01ID:ZwZRjmCs さっさとC++捨ててRustにすれば防げたのにな
860デフォルトの名無しさん
2025/06/18(水) 01:12:36.99ID:SA0JPy/4861デフォルトの名無しさん
2025/06/18(水) 02:58:44.97ID:vm71nNgD Googleの事案なんてどうでもよくてインシデントにかこつけてRustの布教がしたいだけ
だから何を書いても無駄
だから何を書いても無駄
862デフォルトの名無しさん
2025/06/18(水) 06:20:38.83ID:KrGEp9Dg Rustを採用していれば防げた事案
863デフォルトの名無しさん
2025/06/18(水) 09:57:10.50ID:NQ+tIPxW864デフォルトの名無しさん
2025/06/18(水) 10:09:02.91ID:4yVSzLnj865デフォルトの名無しさん
2025/06/18(水) 10:20:51.18ID:NQ+tIPxW > 書き忘れではなくロジカルな思い違いもある
866デフォルトの名無しさん
2025/06/18(水) 10:31:14.78ID:GRTFL2K0 panicさせてはいけないプログラムでpanicさせる関数を呼ぶバカはいない
reviewでもバレる
reviewでもバレる
867デフォルトの名無しさん
2025/06/18(水) 10:49:25.62ID:NQ+tIPxW メモリリークさせてはいけないぷろぐらむでめもりりーくさせるばかはいない!
868デフォルトの名無しさん
2025/06/18(水) 11:01:39.66ID:Ulz+jHl5 Rustを使えばメモリリークも未定義動作もなく安全安心よ
869デフォルトの名無しさん
2025/06/18(水) 11:23:14.90ID:lQpFkqVW haskellと比べて、unwrapが気軽に使えすぎる気はする
870デフォルトの名無しさん
2025/06/18(水) 11:33:39.23ID:S+5h0Q7c ErrやNoneの時にpanic!を呼びたい場合が多いからunwrapがある
呼びたくないのに使うのは痴呆
呼びたくないのに使うのは痴呆
871デフォルトの名無しさん
2025/06/18(水) 11:34:34.48ID:FuDCb+RV index out of boundsやdivide by zeroをはじめ意図せずpanicを起こすケースなんていくらでもある
872デフォルトの名無しさん
2025/06/18(水) 11:39:44.34ID:SMOhWm6L panicはcatchできるし
そのthreadが死ぬだけだし
困らんよな
そのthreadが死ぬだけだし
困らんよな
873デフォルトの名無しさん
2025/06/18(水) 11:43:26.69ID:U/ksL7Wg874デフォルトの名無しさん
2025/06/18(水) 11:45:58.97ID:3o9Ti177875デフォルトの名無しさん
2025/06/18(水) 11:46:56.90ID:3o9Ti177876デフォルトの名無しさん
2025/06/18(水) 11:50:22.96ID:7xP0Uzu5 >>874
落ちてはいけないシステムをUB地雷だらけのC++で書くことが愚か
落ちてはいけないシステムをUB地雷だらけのC++で書くことが愚か
877デフォルトの名無しさん
2025/06/18(水) 11:52:41.70ID:qy96omZz878デフォルトの名無しさん
2025/06/18(水) 12:16:05.81ID:iDJPvmxA 「意図したpanic」禁止したら良い
その「意図」が正しいのかコンパイラが静的分析出来ないから
その「意図」が正しいのかコンパイラが静的分析出来ないから
879デフォルトの名無しさん
2025/06/18(水) 12:29:52.79ID:rx2CZFrG880デフォルトの名無しさん
2025/06/18(水) 13:09:11.05ID:uPLWgFQC mseditorがpanicしたら編集中のデータが飛ぶけど、それが「正しく終了」か?
881デフォルトの名無しさん
2025/06/18(水) 14:28:18.37ID:AeXwuQQu ヌルポやバッファオーバーランに比べれば比較的マシ
882デフォルトの名無しさん
2025/06/18(水) 15:01:02.42ID:90mEbGf5 意図的ヌルポでセグフォと
意図的unwrap panicでabortは同じ
意図的unwrap panicでabortは同じ
883デフォルトの名無しさん
2025/06/18(水) 15:13:41.28ID:5Mu65nKv 会社の怖い先輩が俺のコードはunwrapでいいんだよと言ったら、そうするしかないよね
884デフォルトの名無しさん
2025/06/18(水) 15:24:13.90ID:45cvT+VF まさかとは思うがnullチェックしてれば防げた障害だと思ってるやつがいるのか?
885デフォルトの名無しさん
2025/06/18(水) 15:37:47.95ID:s5c+Ng5v ぬるぽでクラッシュしたと聞いたけどnullチェックで防げないぬるぽってあるんすか
886デフォルトの名無しさん
2025/06/18(水) 15:49:01.71ID:FHNv6txf 今どきC++で新たなコードを書くから悲惨な事故が起きた
887デフォルトの名無しさん
2025/06/18(水) 16:01:28.34ID:hZyAyOg0 >>884
Rustなら防げたと言ってるあのおじさんを除けばそこまてのバカはいないかと
Rustなら防げたと言ってるあのおじさんを除けばそこまてのバカはいないかと
888デフォルトの名無しさん
2025/06/18(水) 16:01:44.34ID:s5c+Ng5v 設定がおかしい場合の例外処理フローはあったけどそこに入る前にぬるぽで爆死した認識
889デフォルトの名無しさん
2025/06/18(水) 16:35:49.37ID:YaS/uO3Z RustならコンパイラがAIよりも厳密なチェックをしてるから防げるだろ
890デフォルトの名無しさん
2025/06/18(水) 17:03:37.08ID:d8qsI0SX Rustは言語仕様が優れているけど
言語仕様が腐っていればAIでも防げない
言語仕様が腐っていればAIでも防げない
891デフォルトの名無しさん
2025/06/18(水) 17:43:59.13ID:mspDq+p2 世界最長のコンテキストウィンドウ100万トークン入力・8万トークン出力対応にもかかわらずたった7800万円でトレーニングされたAIモデル「MiniMax-M1」がオープンソースで公開され誰でもダウンロード可能に
2025年06月18日 11時43分
https://gigazine.net/news/20250618-minimax-m1-open-source/
>>MiniMax-M1は、合計4560億のパラメーターが含まれており、トークンごとに459億のパラメーターがアクティブになるとのこと。これはDeepSeek R1の8倍に相当するコンテキストウィンドウです
>>以下のグラフは競技レベルの数学、コーディング、ソフトウェアエンジニアリング、エージェントツールの使用、長文理解タスクにおけるパフォーマンスを主要な商用AIモデルと比較したもの。赤色がMiniMax-M1で、どのタスクにおいても競合AIモデルに匹敵するパフォーマンスを発揮できている
>>MiiniMax-M1はいくつかのベンチマーク、特に長いコンテキスト駆動のベンチマークでClaude Opus 4のパフォーマンスを上回りました」と報告
※AIを動作させている動画あり
↓上記のAIお下記をプレイさせれば性能が判明する
Gemini 2.5 Proは手持ちのポケモンが瀕死になるとパニックに陥る
2025年06月18日 12時30分
https://gigazine.net/news/20250618-pokemon-gemini-panic/
◇
[プロテクトガードやセキュリティーホール発見可能]
※1 プログラムのバグ技[裏抜け道]を使用できる=チートコードを発見可能
・ マリオカートのショートカットはプレイヤー「極悪人」の表の抜け道でNPC「一般人」は使用不可能
[インサイダー/談合/なねーロンダリング/霊感商法など行う時の悪行で音波や電波をしての悪行の方法を発見可能
※ 政治家の法律上の抜け道を仕込める=ある業種だけの法律の抜け道を発見可能
[一般大衆の思考である特定の極悪人から目線を特定の統合失調症へ返させる装置]
※ AIは正確な情報で人間を信用させれる=AIは嘘の情報を一部混ぜて人間を洗脳できる
2025年06月18日 11時43分
https://gigazine.net/news/20250618-minimax-m1-open-source/
>>MiniMax-M1は、合計4560億のパラメーターが含まれており、トークンごとに459億のパラメーターがアクティブになるとのこと。これはDeepSeek R1の8倍に相当するコンテキストウィンドウです
>>以下のグラフは競技レベルの数学、コーディング、ソフトウェアエンジニアリング、エージェントツールの使用、長文理解タスクにおけるパフォーマンスを主要な商用AIモデルと比較したもの。赤色がMiniMax-M1で、どのタスクにおいても競合AIモデルに匹敵するパフォーマンスを発揮できている
>>MiiniMax-M1はいくつかのベンチマーク、特に長いコンテキスト駆動のベンチマークでClaude Opus 4のパフォーマンスを上回りました」と報告
※AIを動作させている動画あり
↓上記のAIお下記をプレイさせれば性能が判明する
Gemini 2.5 Proは手持ちのポケモンが瀕死になるとパニックに陥る
2025年06月18日 12時30分
https://gigazine.net/news/20250618-pokemon-gemini-panic/
◇
[プロテクトガードやセキュリティーホール発見可能]
※1 プログラムのバグ技[裏抜け道]を使用できる=チートコードを発見可能
・ マリオカートのショートカットはプレイヤー「極悪人」の表の抜け道でNPC「一般人」は使用不可能
[インサイダー/談合/なねーロンダリング/霊感商法など行う時の悪行で音波や電波をしての悪行の方法を発見可能
※ 政治家の法律上の抜け道を仕込める=ある業種だけの法律の抜け道を発見可能
[一般大衆の思考である特定の極悪人から目線を特定の統合失調症へ返させる装置]
※ AIは正確な情報で人間を信用させれる=AIは嘘の情報を一部混ぜて人間を洗脳できる
892デフォルトの名無しさん
2025/06/18(水) 18:45:36.06ID:JUQ8VjRJ まさかとは思ってたがnullチェックで防げたと勘違いしてるやつ結構いるんだな
893デフォルトの名無しさん
2025/06/18(水) 19:12:39.40ID:M/E4rLLd >読み込みデータに空白フィールドがあり、これがヌルポインタとなって参照した時点でクラッシュを引き起こした。
894デフォルトの名無しさん
2025/06/18(水) 20:36:14.97ID:QsB71xf7 OptionやResultの型をきっかけとして問題に気付けた可能性はあるんじゃない?
あくまで間接的な可能性でしかなく、この件をもってRustだったら起きなかったとかいうのはアホ丸出しだけども
あくまで間接的な可能性でしかなく、この件をもってRustだったら起きなかったとかいうのはアホ丸出しだけども
895デフォルトの名無しさん
2025/06/18(水) 20:49:33.05ID:JDJPNF+q Rustなら上位へそのエラー返して
その入力データに対するAPIでエラー返すだけだろ
その入力データに対するAPIでエラー返すだけだろ
896デフォルトの名無しさん
2025/06/18(水) 22:27:10.05ID:/Y6EEbbi897デフォルトの名無しさん
2025/06/18(水) 22:47:29.81ID:BBnSRnVn この件については、クラッシュを回避しエラーレスポンスを返したところで結局障害になることには違いがないからだな
898デフォルトの名無しさん
2025/06/18(水) 22:51:57.91ID:ikP0pQuf >>894
間接的な可能性もないでしょ
間接的な可能性もないでしょ
899デフォルトの名無しさん
2025/06/18(水) 23:03:07.16ID:0KvtUriT900デフォルトの名無しさん
2025/06/18(水) 23:18:21.28ID:dYsLBH+C901デフォルトの名無しさん
2025/06/18(水) 23:25:54.18ID:7PLt8980 Rustなら回避できたケースだけど
無理!と言う人は具体的に無理なシナリオを示してみたら?
無理!と言う人は具体的に無理なシナリオを示してみたら?
902デフォルトの名無しさん
2025/06/18(水) 23:41:41.61ID:sPCFWro/ ワロ
理解できないから教えてくれと言えばいいものを
理解できないから教えてくれと言えばいいものを
903デフォルトの名無しさん
2025/06/18(水) 23:53:20.04ID:jD4yZQcZ 公式読めよ
Rustにしてればポリシー変更データをエラーにして受け付けず落ちることもなく被害なし
Rustにしてればポリシー変更データをエラーにして受け付けず落ちることもなく被害なし
904デフォルトの名無しさん
2025/06/19(木) 00:10:11.24ID:oQzIUk1I 設定のミスで1台のATMが使えなくなるか全部のATMが使えなくなるかみたいな話でしょ
どっちも障害だから同じだって考え方もあれば
障害を1台に抑えることに価値があるって考え方もある
Rustでも防げないって人は前者だしRustなら防げたって人は後者
どっちの考え方もそれなりに正しい
どっちも障害だから同じだって考え方もあれば
障害を1台に抑えることに価値があるって考え方もある
Rustでも防げないって人は前者だしRustなら防げたって人は後者
どっちの考え方もそれなりに正しい
905デフォルトの名無しさん
2025/06/19(木) 00:25:10.66ID:KZlMfI+O906デフォルトの名無しさん
2025/06/19(木) 00:48:27.34ID:ftBjTcDx >>905
新たなポリシー変更要求がエラーで受け付けられなくて落ちることもないから障害が起きていない
新たなポリシー変更要求がエラーで受け付けられなくて落ちることもないから障害が起きていない
907デフォルトの名無しさん
2025/06/19(木) 01:27:03.00ID:l2wwX0Hv908907
2025/06/19(木) 01:37:22.30ID:l2wwX0Hv ああ、もしかしてポリシーのチェックというのをポリシー自体のバリデーションと勘違いしてるのかな
正しくはポリシーに基づいてAPIリクエストをチェックする処理のことなんで、新しいポリシーが反映された結果としての障害だよ
正しくはポリシーに基づいてAPIリクエストをチェックする処理のことなんで、新しいポリシーが反映された結果としての障害だよ
909デフォルトの名無しさん
2025/06/19(木) 01:38:01.02ID:QXnAvsJc910デフォルトの名無しさん
2025/06/19(木) 02:14:01.17ID:Pd2QOZgo911デフォルトの名無しさん
2025/06/19(木) 04:21:35.41ID:yro0K3vV Rustにしとけってことか、速い話が
912デフォルトの名無しさん
2025/06/19(木) 05:04:25.47ID:ct5m24p0 落ちるプログラムを各リージョンにバラ撒かなければ何製でも防げてる
もちろんRustなら確実に防げた
もちろんRustなら確実に防げた
913デフォルトの名無しさん
2025/06/19(木) 06:59:17.36ID:tFafecL1 とにかくRustにすれば安心安全
これはもう常識
これはもう常識
914デフォルトの名無しさん
2025/06/19(木) 11:59:43.17ID:cYRDzc4D ちゃんとした人が、Rustを使った場合に限る。
セキュリティもそうだけど、人が関わると碌なことがない。
セキュリティもそうだけど、人が関わると碌なことがない。
915デフォルトの名無しさん
2025/06/19(木) 12:27:53.31ID:/pQfT2SX Rustは安全に配慮したコンセプトはいいけど、それを徹底できていない。
せめてSafe Rust強制モードとpanic禁止モードは用意しておくべきだった。
せめてSafe Rust強制モードとpanic禁止モードは用意しておくべきだった。
916デフォルトの名無しさん
2025/06/19(木) 21:29:19.19ID:67nyX+fT CPUとメモリは自由なunsafeが本質なので下位のライブラリは標準もデファクトもunsafeで作られている
917デフォルトの名無しさん
2025/06/19(木) 21:38:06.06ID:67nyX+fT panicは意図せず混入防止も兼ねてこんな運用が多いかな
[lints.clippy]
missing_panics_doc = "warn"
[lints.clippy]
missing_panics_doc = "warn"
918デフォルトの名無しさん
2025/06/19(木) 21:49:11.90ID:nNn4PbNI 標準ライブラリが内部では unsafe だらけというのは確かにそう。
外側に対しては安全になるように配慮してるけど、バグが絶対にゼロかというとそんなことはないし、実際に発見されたこともある。
まあ unsafe に限らず処理系や標準ライブラリにバグがあることを疑ってたらきりがないからそこらは割り切らないと仕方なくない?
外側に対しては安全になるように配慮してるけど、バグが絶対にゼロかというとそんなことはないし、実際に発見されたこともある。
まあ unsafe に限らず処理系や標準ライブラリにバグがあることを疑ってたらきりがないからそこらは割り切らないと仕方なくない?
919デフォルトの名無しさん
2025/06/19(木) 21:56:40.37ID:6vmjzLKI みんな律儀にResultは全てちゃんとハンドリングしてるの?
Mutex.lock() なんかは気にせず unwrap してるんだけど
Mutex.lock() なんかは気にせず unwrap してるんだけど
920デフォルトの名無しさん
2025/06/19(木) 22:11:01.42ID:nNn4PbNI >>919
ロックが失敗するのはスレッドがパニックしたとき。
つまりハンドリングするならそのスレッド内のエラーであるべきで、 Mutex.lock の失敗に対してハンドリングしても出来ることがない。
そこは普通は unwrap してよいところだと思う。
ロックが失敗するのはスレッドがパニックしたとき。
つまりハンドリングするならそのスレッド内のエラーであるべきで、 Mutex.lock の失敗に対してハンドリングしても出来ることがない。
そこは普通は unwrap してよいところだと思う。
921デフォルトの名無しさん
2025/06/19(木) 23:34:30.87ID:67nyX+fT そのmutex毒入り状態からの復帰処理をしたい場合はunwrapせずにErr時に処理とclear_poison()する
922デフォルトの名無しさん
2025/06/20(金) 00:31:53.70ID:xog7LFS0 これおもしろー
https://blog.guillaume-gomez.fr/articles/2025-06-19+Rust%3A+Optimizing+integer+to+string+conversions
ポインターアクセスより配列の方が速いんやー
https://blog.guillaume-gomez.fr/articles/2025-06-19+Rust%3A+Optimizing+integer+to+string+conversions
ポインターアクセスより配列の方が速いんやー
923デフォルトの名無しさん
2025/06/20(金) 01:02:39.89ID:SpbybkFq unwrapではなくexpectを使う。
924デフォルトの名無しさん
2025/06/20(金) 01:08:46.49ID:xog7LFS0 >>923
いや、Optionにはunwrap使ってええんやで
コードに合わせて柔軟に対応すりゃバグは防げるよ
ビジネスロジックのバグは入念なテストしないと見つけられないけどね
ビジネスロジックのバグでシステム障害になることもまあ、あるっちゃあるよねテストしてなきゃ
いや、Optionにはunwrap使ってええんやで
コードに合わせて柔軟に対応すりゃバグは防げるよ
ビジネスロジックのバグは入念なテストしないと見つけられないけどね
ビジネスロジックのバグでシステム障害になることもまあ、あるっちゃあるよねテストしてなきゃ
レス数が900を超えています。1000を超えると表示できなくなるよ。
ニュース
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について★3 [ニョキニョキ★]
- 人生初黒星の神童、那須川天心がリング上で土下座 [牛丼★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 石破前総理「どうすれば台湾有事にならないかを考えるべき」★2 [1ゲットロボ★]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- 【号外】習近平、米大統領のトランプと首脳会談を行う!日本のの武力による台湾脅しついて共有の追及をする意思統一でおこなう [339712612]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- 9歳の男児さん、人生ハードモードすぎておわる、母親の彼氏にバッドでボコボコに殴られておわる [329329848]
- 【高市朗報】高橋洋一「これあまり知られてないんですが、財政が悪化し続けば勝手に円高になります」🤔・・・😰??? [931948549]
- 【速報】足立ひき逃げ犯、精神病持ちだった [329271814]
