【悲報】厚労省のシステム、ほぼ同時刻に登録した申請者に同一IDを付与するバグ [455830913]at POVERTY
【悲報】厚労省のシステム、ほぼ同時刻に登録した申請者に同一IDを付与するバグ [455830913] - 暇つぶし2ch712:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:15:37.59 100WCoBs0.net
>>705
わかるw
おれもそれで壊れたww

713:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:16:24.26 aPW4a3B60.net
というかこれデバッグで見つけられるレベルだろ

714:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cf01-W2HY)
20/06/10 08:16:47 wIIZ/1rS0.net
同時登録テスト「「せーのっ!」」
ポチッっとな(秒またぎ)

ヨシ!

715:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 9395-M8T/)
20/06/10 08:16:54 176BNys60.net
無能老害は永遠にハンコとFAXにしとけ

716:番組の途中ですがアフィサイトへの\(^o^)/です (オッシ cf7b-tD/8)
20/06/10 08:17:36 100WCoBs0.net
>>709
これは一人でデバックしてもみつからんからミリよ

717:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW ffae-mD7r)
20/06/10 08:19:29 7bMIEa9l0.net
>>705
臭いものに蓋のジャップには問題が発生して当たり前のITは無理だったんだな…
俺も「生産性を上げるためにバグの出ない完璧な設計・実装をしろ」とか言ってたバカを見たことがある

718:番組の途中ですがアフィサイトへの\(^o^)/です (ササクッテロ Sp87-P9YK)
20/06/10 08:24:48 sx2AOEIVp.net
>>232
どうした?拾って欲しいのか?

719:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW c3de-Zyrv)
20/06/10 08:26:54 AcnfRBM70.net
一億ってまたずいぶん安いな

720:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:27:31.91 l/AUWkqTa.net
何やらかしたか興味あるけどレベル低すぎて動かないコンピュータにはのらないんじゃないかな
はてブロにやっちゃいましたと書くレベル

721:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:29:30.41 7bMIEa9l0.net
>>709
たぶん「ほぼ同時刻」ってのがみそで全く同じ時刻は排他で制御できたからよし!ってなったけど
id採番のロジックが対応できてなかったんだろうね

722:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:29:49.09 C6jLj2ip0.net
ID被りかよ

723:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:30:01.86 sKQhl62L0.net
>>712
テストなんて今時は自動化してやってるだろ

724:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 33e2-fN2Y)
20/06/10 08:36:29 AKKtSVSm0.net
色々思うところはあるが流石に納期一ヶ月は酷過ぎる
お上のメンツを取り戻すために無茶言われたんだろうな

725:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 939f-/iH3)
20/06/10 08:40:42 8Sg1wFzf0.net
A「採番ロジックは排他して使えヨシ!」
B「採番ロジックは普通スレッドセーフだろヨシ!」

726:番組の途中ですがアフィサイトへの\(^o^)/です (オイコラミネオ MMff-eIA7)
20/06/10 08:42:18 7rLyUmV5M.net
>>719
通らないテストなら自動だろうが手動だろうがバグ発見できたけど通るテストを何べん自動テストしても無駄なのでは?

払い出すidがユニークで連番でないことみたいなのが要件なんじゃないかね
だから余計な精製ロジック作ってバグったと

727:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cfc7-VvHH)
20/06/10 08:42:28 aPW4a3B60.net
なんだか修正後はデッドロック起こしそうw

728:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 33e2-s/3j)
20/06/10 08:42:30 c0wAuQ6F0.net
ユニークな実装だな

729:番組の途中ですがアフィサイトへの\(^o^)/です (オッシ cf7b-tD/8)
20/06/10 08:43:28 100WCoBs0.net
>>719
こういうガイジが上層部にいるとおこりますw

730:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:47:34.24 05kkuhDw0.net
新人でもやらないレベル

731:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW f344-9QLr)
20/06/10 08:48:56 mZGiT+6G0.net
4月入社の新卒にやらせたんだべ
金額しょぼいし短納期だからなんでもいいから動くもの作って!のパターン
富士通は抜くだけ抜いてレビューも丸投げで

732:番組の途中ですがアフィサイトへの\(^o^)/です (ガラプー KKff-5FP9)
20/06/10 08:49:29 ebdpL2lmK.net
時刻からID生成するアルゴリズムの場合は実際どうやって重複回避するんだ?

733:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:50:36.60 100WCoBs0.net
>>728
同期

734:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cf01-085K)
20/06/10 08:52:16 yK8T5EWR0.net
>>14
これ

735:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 08:54:34.80 9mr0T2pqM.net
底辺のITドカタが多いせいでこの手のスレは伸びまくり

736:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cf6c-PunJ)
20/06/10 08:55:51 +TDXkNMV0.net
>>13
10数人しか使わんシステムでも偶然の事態を考慮してそんな仕様にしないわな。

737:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:05:26.42 vFdk99Sg0.net
制約すらつけてなかったのか

738:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:07:19.10 sGyC2dOX0.net
もうこういう下請けに投げる仕事だけしてる会社潰せよ

739:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:08:00.66 e9NTCUNqM.net
富士通って排他制御を知らんのか?

740:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:08:33.44 aNibZsLop.net
給付金もそうだけど
入り口だけオンラインにしても意味なくね

741:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:08:33.89 puNgIZ7a0.net
>>734
日本のIT企業全滅定期

742:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:10:27.13 4BLj+WS/d.net
SE「シーケンス・・・?」

743:
20/06/10 09:10:50.89 GPh2rc8y0.net
厚生省「早急に改善しろ」
富士通「早急に改善しろ」
富士通マーケティング「早急に改善しろ」
インフォテック「早急に改善しろ」
ペガジャパン「早急に改善しろ」

744:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:12:03.77 koL4eUlLM.net
誰かテーブル定義にオートインクリメント入れてやれよwww

745:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:15:32.33 4EbE+I2P0.net
なんでマイナンバーあるのにわざわざ新しい数字つけるの?

746:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:18:43.48 zUpo+r4wd.net
主キーに時分秒はいってそう

747:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 09:21:12.56 HOB2u67+a.net
ちゃんとデバッグ会社雇え

748:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW a3e9-2B1P)
20/06/10 09:30:38 A3pMgelp0.net
トランザクションガン無視指向プログラミング

749:番組の途中ですがアフィサイトへの\(^o^)/です (スフッ Sd1f-Gz4B)
20/06/10 09:36:34 npD+uE/hd.net
>>1
>厚労省によると富士通が約一億円で受注しシステム設計の統括を担っていた。再委託先と受注額はそれぞれ、富士通マーケティングが八百五十四万円、インフォテックが四百四十万円、ペガジャパンが千五万円。

抜き過ぎw

750:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 7f6b-Yihs)
20/06/10 09:38:33 drKXafXH0.net
自前で管理できないならユニーク制約入れとけや

751:番組の途中ですがアフィサイトへの\(^o^)/です (アウアウウー Sa67-jP3R)
20/06/10 09:38:58 pQX6ZRXXa.net
5chだって同一時間にレス立てようとしたら失敗する仕組みあるのに何やってんねん

752:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 83f0-Xzqz)
20/06/10 09:44:52 gVws3XwL0.net
つーかDBのシーケンス使ってりゃ制約違反になることはあっても重複はありえないだろ
どんなイカレポンチが作ってんだ?

753:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 939f-/iH3)
20/06/10 09:48:35 8Sg1wFzf0.net
>>748
上位設計に時刻を使用する独自のID生成仕様が書かれていた
要求仕様にDB依存のID生成を禁止すると書かれていた
etcetcetc

754:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 231d-60UZ)
20/06/10 09:51:19 Wc+bs+jb0.net
マイナンバー紐付けで俺の0円口座が他人の口座と入れ替わる可能性のあるってことか?
夢があるな

755:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 0310-+Do1)
20/06/10 09:53:11 JOVPU/0r0.net
なんで日本企業なんかに発注したんだ
もっと信用できるとこにたのめ

756:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 10:01:56.71 hrc9O4bA0.net
入門書にものるようなレベルのくそコーディングしてしまったん?

757:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW ffc7-Zyrv)
20/06/10 10:08:56 mn4qwPIr0.net
富士通もこんなんばっかだよな
まともなもんつくれねえなら入札資格停止しろよ

758:番組の途中ですがアフィサイトへの\(^o^)/です (スプッッ Sd1f-7V4B)
20/06/10 10:22:53 h4RIQZMZd.net
みずほみたいに書籍出すんじゃね?
超頑張った富士通の軌跡とかいうタイトルで

759:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 83f0-Xzqz)
20/06/10 10:24:23 gVws3XwL0.net
>>749
仮にシーケンスオブジェクト使えなくても一意制約付けとけばいいだけなんだよなぁ
DB設計管理できてないだろこれ

760:番組の途中ですがアフィサイトへの\(^o^)/です (スフッ Sd1f-Gz4B)
20/06/10 10:25:23 npD+uE/hd.net
>>749
insertの時に最新キーをインクリメントすりゃ良いんだな?

761:番組の途中ですがアフィサイトへの\(^o^)/です (アウアウクー MM87-RwHO)
20/06/10 10:27:19 tc/5Dj7kM.net
2ちゃんねるのシステムを利用しています

762:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 33c5-BHZH)
20/06/10 10:28:54 xRL4OuNY0.net
なんでこんなクソみたいな品質に多額の値がつくの
おかしくないですかこの国

763:番組の途中ですがアフィサイトへの\(^o^)/です (アウアウエー Sadf-X8Jf)
20/06/10 10:48:33 O90MvSp+a.net
マイナンバー口座紐付けとか心配しかないんだけど

764:番組の途中ですがアフィサイトへの\(^o^)/です (アウアウウー Sa67-qK/n)
20/06/10 10:56:30 oNnR5adka.net
同時押し

765:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 11:00:02.12 qQ+1ocEya.net
なんで主キーにしてないのかというのはあるな
何となく登録されてそうなんだよな

766:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 11:02:26.05 GiqtaXKJ0.net
ユニークにしたらすぐエラーになって責任取らされる
知らないふりしてリリースして後任に責任を取らせる

767:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 11:58:31.11 ZqTSD05I0.net
シーケンスくらい使えや
IDにユニーク制約くらい付けとけや
作った奴は素人なのか?

768:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 11:59:29.47 ZqTSD05I0.net
>>752
コーダーが悪い訳じゃないだろ
外部設計時点でおかしい

769:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 12:07:26.63 ppwe5AczM.net
>>763
素人に決まってるだろ。
日本のIT舐めるな!

770:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 12:22:43.61 aJ8nVfLcr.net
末端で作ってるのは専門卒の無能とかザラ

771:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 12:27:34.48 0zIzS+S9p.net
1億とかいってもやっぱ1/10くらいで、9割中抜きは揺るがない

772:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 12:43:16.48 mLxe2ca4a.net
>>767
99割やろなぁ

773:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 12:46:55.99 NgfTBMih0.net
これをいくらで作ったの?

774:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 13:03:15.91 100WCoBs0.net
できるやつ3人ぐらいのチームでつくったほうがいいものできるよね

775:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 13:20:45.93 GtvNqe5J0.net
中国か韓国に外注するしかないw

776:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 13:40:58.88 zGamyLzp0.net
さすがIT後進国だな

777:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 15:51:51.67 Ro/HtnxKa.net
>>766
末端の問題じゃないだろ。こんなの設計の段階でクソ過ぎるんじゃね?

778:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 15:56:54.53 5vlWv1+i0.net
タイムスタンプをそのままIDにするとかあり得んやろ
プログラミング覚えたての高校生でもこんな設計やらんぞ

779:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW ff88-328w)
20/06/10 16:04:15 wTzM1/Ul0.net
下請けの下請けのさらに下請けの派遣が作ってるから仕方ないね

780:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ ff0b-EVMN)
20/06/10 16:06:50 NeX8K2Nt0.net
 ま た ふ じ つ ー か

781:番組の途中ですがアフィサイトへの\(^o^)/です (ドコグロ MMc7-JGeA)
20/06/10 16:14:37 mqA9WxV3M.net
一番はじめに決めないといけないのがユニークな番号なんじゃないの?
初心者向けのphpとsqlの本に書いてあったよ

782:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ a30d-e4J0)
20/06/10 16:19:04 i7znaIKu0.net
素直にアクセス制限とかできなかったのかね

>>771
サムスンに頼んだ自治体のシステムは大変なことに…

783:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 18:05:59.90 0k88aFDV0.net
上「IDを付与しろ」中「IDを付与しろ」下「ID?時刻だな」

784:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 18:33:52.99 WreEVI6xd.net
ジャップにITは早すぎた

785:番組の途中ですがアフィサイトへの\(^o^)/です (ササクッテロレ Sp87-gaLy)
20/06/10 19:34:31 +l2w7HIXp.net
うおおおおおお技術大国日本!!!!

786:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW 83e2-MSgW)
20/06/10 19:35:44 Xn8dA4le0.net
下請けに丸投げ国のメッキ剥がれすぎワロリン

787:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW ffea-1Y1h)
20/06/10 19:46:54 3ZFJPpvJ0.net
下受けてる会社のインフォテックってとこがで先安で440万円→4人月くらい?やけどこんな少ない工数で何受けるもんなの?何かの専門の有名な会社なのここ?

788:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:01:11.85 kMwkww7UM.net
idはキーじゃない!w

789:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:10:37.33 vFdk99Sg0.net
一億円なら数人のチームでパッパッパと作って終わらせたんだろ

790:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:12:51.98 FIzErawuH.net
id = yymmddhhmmss

791:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:17:54.92 J0eDcqlL0.net
>>71
これは見たことがある。
案の定キー重複で落ちてた。

792:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:22:47.70 sJxXeFIJ0.net
>>764
コーダーがバカじゃなければ「これやべえじゃん」って指摘するけど?
バカじゃなけばわかるレベルの初歩的すぎるダメSQLやんけ

793:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:24:21.19 sJxXeFIJ0.net
電話番号をID代わりにしてセレクトして、件数が1件だったら、新しいDBにユニークなID付与して登録すればええやろ?
重複してた場合は、住所や世帯主名が異なれば、別のレコードとして、それぞれ別のIDで登録すればええやろ?

794:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:40:49.48 o0WfKLVjd.net
すげーみんなDBに詳しいんだな
外資ITでも勤めてるんか?

795:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:54:48.13 cDdsnot40.net
>>788
分っててもしばらく露見しなければいいっていう
事なかれ主義が混じるんだからしょうがない
そうさせるのが今のIT業界

796:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 20:56:42.13 dUVmODzV0.net
この障害が起こるシステム設計を3つあげよって面接問題出来そう

797:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 21:10:07.09 n+zsOUyRr.net
IDがキーじゃないのかよ

798:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 21:47:26.21 /4kXezVq0.net
>>484
インフラと運用があるでしょ。
何人運用につけてるか知らないけど。

799:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/10 22:21:35.59 IfvYVPNF0.net
マイナンバーにいろいろ全部統合すると思っていた時期が俺にもありました・・・
実際はマイナンバーって番号が増えただけとか斜め上すぎるだろジャップいい加減にしろよ

800:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 83e2-NjyN)
20/06/11 00:14:42 OzyQWvGl0.net
>>1
> ほぼ同時刻に登録した別の申請者に対して重複するIDを付与するバグがあり、

5chのIDじゃあるまいし(笑)

801:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cfe5-wSJ7)
20/06/11 03:20:32 3Ro/WAIt0.net
素人レベル
ジャップの人売ITはこんなもんです

802:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイW cfe5-wSJ7)
20/06/11 03:21:53 3Ro/WAIt0.net
>>71
シーケンス使えバカ

803:番組の途中ですがアフィサイトへの\(^o^)/です (アウアウクー MM87-Qua3)
20/06/11 07:27:34 Mt/AlgpiM.net
昔の時報じゃねぇんだからさ

804:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 13:14:53.87 1FGtPrH8d.net
経産省よりはましな仕事してる

805:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 13:15:43.28 THJ3KmS+0.net
富士通の利益の9割が官公庁関係のゾンビ企業だからなぁ

806:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 13:18:33.70 m+o5yo/Y0.net
>>801
潰して実務するやつだけ公務員にしたら節税になるのになあ

807:番組の途中ですがアフィサイトへの\(^o^)/です (ワッチョイ 8fc5-NjyN)
20/06/11 13:43:59 dKGmtRDL0.net
富士通まーじで高い金とるくせに微妙なんだよなぁ
俺のところのSEさんは良い人だけど

808:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 17:21:54.71 4k3dFgDp0.net
厚労省は無能の集まり烏合の衆

809:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 17:43:02.33 nBfW8Q/nd.net
>>526
主キーの概念とか富士通にはないのかね

810:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 17:49:40.57 PmJk97xf0.net
作ったのは下請けなんだろうけど富士通の奴らはなにをチェックしてOK出したんだろう?
ソース見なかったのかな?

811:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 17:51:56.94 1FGtPrH8d.net
この短納期で動いてるのがすごい

812:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 17:58:30.59 JDiX5oaJ0.net
>>4
実際に組んだのは何社か咬んだ末端の派遣とかだろ
で、そいつはもう居なくて修復大変とか官公庁案件だと頻繁にある
公金は勿論、時間も無駄に浪費する
色々見直すべき事が多すぎる

813:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 18:01:39.98 7tu3PLdo0.net
こんなの海外だったらサクッと作って動いてるよ
こんな初級レベルのバグなんか残さない

814:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 18:03:11.21 wQiQlyUya.net
>>806
元請け様がそんなもん見るわけないだろ
てかソース出せと命じたとしても、末端零細までその命令行かねえわ

815:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 18:04:06.46 ObAGl06N0.net
同時アクセス数が鬼レベルのユースケースは作ったことないからわかんないんだけど、これ採番用のシーケンステーブル作っとけばとりあえず回避できるやつ?
こういう事故避けたいし後生だから教えてくれ頼む

816:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 18:07:18.51 m+o5yo/Y0.net
>>811
DBで裁判していいならそれでいいんじゃね
アプリ側でやるなら裁判ロジックを同期処理すればいいだけ

817:番組の途中ですがアフィサイトへの\(^o^)/です
20/06/11 18:30:37.78 HofWOatK0.net
>>788
そんな指摘したら次回の入札で不利益受けるとかそういうヤツじゃない?

818:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch