パスワードを忘れた? アカウント作成
12096203 story
バグ

米NPOのソーラーセイル実験機、CSVファイルが32MBを超えたため打ち上げから2日でフリーズ 59

ストーリー by hylom
予備実験機で良かった? 部門より
あるAnonymous Coward 曰く、

惑星探査を推進する米NPOの惑星協会は20日、X-37Bのピギーバックとしてソーラーセイル実験機「LightSail-A」の軌道投入を成功させた。しかし、フライトソフトウェアのCSVファイルが32MBを超えるとクラッシュするというバグによって、22日以降通信途絶に陥っているという(惑星協会のブログSlashdot)。

LightSail-Aは、来年打ち上げを予定している実験機「LightSail-1」の実現に向けた予備実験機で、軌道が低いため数週間で地球に落ちてしまうものの、その間に帆の展開や制御システムの検証などを行うことを目的としている。

同機はLinuxベースのフライトソフトウェアを搭載しており、15秒ごとにbeacon.csvと呼ばれるファイルにテレメトリー情報を出力する設計となっていた。打ち上げ直後は順調にテレメトリーが送信されていたものの、この機体に搭載されていたソフトウェアには32MBを超えるCSVを扱うとクラッシュするという不具合が残っており、データ量が増えた結果、打ち上げ2日後に通信が途絶してしまったという。復旧にはフライトソフトウェアの再起動が必要だが、リモートからの再起動コマンドには応答がなく、今は宇宙線などにより運良く再起動することを期待するしかない状態だという。

惑星協会は早くからソーラーセイルの実用化に向け着手しており、2001年より何度か実験機を打ち上げているが、廉価なロケットを使っては打ち上げが失敗するなど、なかなか成功には至っていない。今回はあくまで予備実験で本命の「LightSail-1」は現在Kickstarterで資金調達中ではあるが、次はうまくやってくれることを期待したい。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 遠隔デバッグの最長記録とかで。

  • by Artane. (1042) on 2015年06月02日 17時41分 (#2824199) 日記

    Linuxカーネル使っておきながら、システム全体が飛ぶって所に開いた口が塞がらないのですが。
    まさか、データ格納するストレージをケチった上に/var とか/home あたりにデータ書くようにしたんで起動しようにも起動できなくなってるんじゃないかとか。
    # 真面目に考えたら、別にデータ専用のストレージを置きますよね。
    # 回路コスト考えたら数百ドルも増えやしないだろうに…

    で、ウォッチドッグタイマも入れないなんて、この手のシステムで考えられないですしね。
    信頼性を考えたら、CPU備え付けだけじゃなくて外部にウォッチドッグ入れるとかするものですが。

    • 「システム全体が飛ぶ」とはどこにも書かれてないと思いますが…
      「運良く再起動することを期待する」と書かれているぐらいですから、「起動しようにも起動できなくなってる」という想像はちょっと的外れ

      たぶん、Linux システムは稼働しているが、「テレメトリ情報を送信するプロセス」だけがクラッシュしているんじゃないでしょうか。

      ストーリーに挙げられている「惑星協会のブログ」をざっと読んだんですが、
      「運良く再起動することを期待する」理由として、
      「リブートしたらbeacon.csvはクリアされる」って書いてます。

      ブート時の処理でbeacon.csvを削除する処理が入っている可能性もありますが、それよりも
      csvはtmpfsに書き込むようにしていて、tmpfsは容量32MBしかとっておらず、
      プログラムはディスクフルを想定していない、
      とかそんなとこかなーとか想像してしまいました。

      #状況確認用のデバッグログを/tmpに出力するようにしておく、というのは自分にとっては「あるある」です。本番で削除するのを忘れないようにしないと…

      親コメント
      • by Anonymous Coward

        再起動指示受け付けないってあるから、他も巻き込んでるような。
        mmapでファイル扱ってパンクとか。
        でもcsvに15秒に一回書き込みで使わないよな。

    • by Anonymous Coward on 2015年06月02日 18時07分 (#2824226)

      今回のやつがそうだとは断定できないけどマルチタスクにおけるウォッチドッグタイマというのは結構めんどくさい
      ・各プロセスが正常に動作しているか監視するタスク
      ・監視タスクが異常を検出せず、自身が正常に動作していたら外部ウォッチドッグを叩く
      監視条件に間違いや漏れがあったらアウト。経験少ないと組み合わせ爆発起きやすい実装しちゃうことも間々あるものです。

      親コメント
      • by Anonymous Coward

        最下位のidleタスクでウォッチドッグを叩く
        それが止まったら再起動
        単純に止まったものを再起動させるのがウォッチドッグ・タイマー

        • by Artane. (1042) on 2015年06月03日 1時05分 (#2824437) 日記

          そうなんですが、大抵の…Linuxカーネルなんか特に…Kernel Panicになったら、WDT叩かなくなるのでWDTが起動して強制再起動云々に入るし、そこまで行かないとしたら、地上との送受信を担当するタスクまで停まるというのが何なんだろうという感じがあるんですよね。
          そこら辺の対策のためのコードというのは、Linuxカーネルなら十分すぎるくらいに色々盛り込まれていますから。
          とりあえず、最低でもKernelが生きていてWDTを随時叩いてるという話になりますので、そうなると、別の要因・要はハードウェアの問題なのかな。と。

          親コメント
        • by cassandro (6035) on 2015年06月04日 5時22分 (#2825006)

          > 最下位のidleタスクでウォッチドッグを叩く
          > それが止まったら再起動
          > 単純に止まったものを再起動させるのがウォッチドッグ・タイマー

          昔、RFIDのリーダが機能しなくなる問題の解析をやった事がありましたが、その原因がもろにidleタスクでWDTを叩けなくなる→WDTタイムアウトによる再起動でした。WDTを叩くなんてインナーループの中でやるもんだろう、「idleタスクでWDTを叩く」なんて設計は何の冗談なんだろうか、って思いましたが。

          親コメント
    • by Anonymous Coward

      Linuxをなんだと思ってんだろ

    • by Anonymous Coward

      Linuxが死んだんではなく、その上で動く1プロセスに色々全てが集約されててそいつがクラッシュなりフリーズしたんではないかな。
      イベントループ回ってるか程度でもいいからウォッチドック位は付けとけはホントその通りだよなぁ…
      宇宙線の影響で再起動があり得るような環境なら必須じゃないのかと

  • by Anonymous Coward on 2015年06月02日 17時14分 (#2824177)

    > 宇宙線などにより運良く再起動することを期待

    今はそのほうがいいのでしょうが、平時で勝手に再起動したらそれはそれで問題のような。

    • Re:運良く (スコア:5, 参考になる)

      by Anonymous Coward on 2015年06月02日 17時42分 (#2824203)

      ツイていたようですね。
      原因不明ですが再起動されたようで。

      http://japanese.engadget.com/2015/06/01/lightsail-8/ [engadget.com]

      親コメント
      • by Anonymous Coward

        普通にウォッチドッグタイマで再起動とかじゃないのかな。

        • by Anonymous Coward

          それなら「原因不明」とはならないでしょう。

          • by Anonymous Coward

            実機は手元ではなく軌道上にあるので、回線経由でしか状況をみれません。
            そのテレメトリが、リブート原因をレポート項目に含めてなければ、やはり不明になるのでは。

            組み込みはDIYで受け狙いガジェット作りしか経験ないので分かりませんが、
            こちらからの指示なしで送りつけてくる通常運用定期通知な内容に、リブート原因とか
            デバック情報的なもの含むんでしょうか。

            定期通知に含まなくても、コマンド叩いたら教えてくるようになってるかもですが、
            なんでもSSHのラインが不安定でログインもまともにできない、ってそうなので、
            調べるに調べられないのかなぁとか。

    • by Anonymous Coward

      幾らガードしても、どんな高エネルギー宇宙線がシールドを突き破ってやって来るのか分からないからな。

    • by Anonymous Coward

      再起動されること込みでシステム構築してんじゃね。
      別に可笑しなことでも問題でもなんでもない。
      しかも宇宙線にさらされる環境なんだから、なおさら。

  • by Anonymous Coward on 2015年06月02日 17時42分 (#2824204)

    8日目で復活したそうな

    • by Anonymous Coward

      回復したのはタレコミで述べられている「宇宙線などにより運良く再起動」なのでしょうか?
      回復したのは喜ばしいが、宇宙線の影響で数日置きぐらいにリブートが掛かるというのも、やな感じだな。
      もしかして無人探査線の運用なんて、みんなそんな感じなの?

      そして、回復してもバグは直って無いので、また二日後にフリーズするだろうか。
      それとも通信が回復した隙を狙って、問題のプログラムを差し替えたりしたのかな。

      • by Anonymous Coward on 2015年06月02日 21時08分 (#2824344)

        >もしかして無人探査線の運用なんて、みんなそんな感じなの?

        宇宙線による不定期なリブート自体は設計仕様の内らしいです。

        親コメント
      • by Anonymous Coward

        まだ差し替えPGが用意できず、フリーズ前に手動再起動予定だそうな。
        8日もあって用意できないって何? 実験機だし、根本的には送信した内容消すだけだよね?

        「ファイルいくつか用意してロータリー、送信済みファイル消す(初期化)」程度の話だよね?たぶん。
        それすらできない(つか思いつかないのか?)

        • by Anonymous Coward on 2015年06月02日 18時20分 (#2824238)

          アップデートファイルが32Mを超えてしまったんだろう

          親コメント
        • by Anonymous Coward on 2015年06月02日 18時40分 (#2824248)

          上から目線でコメントする前に再起動のことを書いてるブログ記事 [planetary.org]をちゃんと読もう、な?

          LightSail’s tumble rate has increased since it entered orbit May 20. It can receive certain commands and transmit data to the ground, but the data link is not stable enough for the team to log in and make software changes.

          Because the primary goal of the test mission is sail deployment, the plan to apply the patch has been shelved. As a workaround, LightSail will be rebooted at least once per day to reset the contents of beacon.csv, the spreadsheet-like file that stores the spacecraft’s automated data chirps. Several successful reboots have already been completed.

          親コメント
          • by Anonymous Coward

            As a workaround, LightSail will be rebooted at least once per day to reset the contents of beacon.csv

            エンジニアにとっては、ムズムズするというか、かなり屈辱的な運用だなw

            • by Anonymous Coward

              大したことない修正でも本番機に適用ってどこの国のどのプロジェクトでも大変だから、しばらくは手動で再起動みたいな回避方法で対応って割と普通だよ。
              その間にテストや手順のチェックをして、関係者が万全の体制の取れる日時に適用、みたいな流れになるんで。

              • by Anonymous Coward

                まぁ数週間でおっこちますし。

          • by Anonymous Coward

            宇宙機の通信が安定しないのはよく知られたことだけど、
            上り帯域を使い切ってるわけでもないだろうから対応はできると思うんだけどなぁ…
            パッチを分割して送信、チェックサム破損してれば個別に再送信、全部揃ったら結合して適用して再起動。

            それすら放置する必要があるってことは相当エンジニアの数も足りてないのか、
            無駄(この事態を防げなかった的な意味で)に手続きが煩雑になってる魔境なのか…

            • by Anonymous Coward

              私があなたの上司だったら、あなたの提出した見積もりに5倍はかけて計算し直すよ
              なにか見落してないかい

        • by Anonymous Coward

          数週間でミッション終了なのだから、再起動運用で済むのならそれでも良いのでは?
          PG差し替えのリスクの方が高いのかもしれないよ。

        • by Anonymous Coward

          打ち上げ前に分かってた不具合だったのに何故か修正されずにそのまま打ち上げられたとか書いてあるし
          コードが相当ぐちゃぐちゃで誰も正確に中身を把握してないかまともにプロジェクト管理(不具合の管理すら)されてないか
          まあ、どちらにしてもかなり酷い状態で運営されてそうですね

          • by hgsdrk (13085) on 2015年06月02日 18時44分 (#2824251)

            >どちらにしてもかなり酷い状態で運営されてそうですね
            重量と軌道が厳しく制限されるピギーバックで打ち上げるくらいだし、
            そもそもが「本気じゃない」緩いプロジェクトだったんじゃないすか。

            親コメント
        • by Anonymous Coward

          なぜ自分が思いつく程度のことを彼らが思いつかないと考えてしまえるのだろう?

    • by Anonymous Coward

      再起動したのですか、それは良かった。
      普段の宇宙もの実験機の失敗なら、「不具合を洗い出すためだからうんたらかんたら」と擁護の一つもするのですが、今回は正直えっ?そのトラブルは地上でも余裕で検証できたよね?と突っ込まざるえなかったので、復活してくれてほっとしました。
      テストのレベルにだいぶ不安を感じますけど、とりあえず宇宙でしかできないテストを今のうちにこなしてくれることを期待です。

      # 元日本惑星協会平会員なのでAC。これからはソーラーセイルの時代だ!って会報貰ってから打ち上げ成功まで15年はちょっとかかり過ぎた…

  • by Anonymous Coward on 2015年06月02日 18時25分 (#2824239)

    というのが彼の口癖だった

    • by Anonymous Coward

      #2824199がまさにそんなこと言ってるぞ(笑)。

  • by Anonymous Coward on 2015年06月02日 18時38分 (#2824247)

    日本では有人ロケットより、長期軌道滞在対応往還機の方が、人命リスクの点で実用的なのかも。

  • by Anonymous Coward on 2015年06月02日 18時46分 (#2824256)

    テストを軽んじる人間によく起こるトラブル

    • by Anonymous Coward

      コード書く時間よりデバック時間の方が時間かかりかねないからなあ・・・

  • by Anonymous Coward on 2015年06月02日 19時02分 (#2824266)

    これとイカロスってどう違うんだろう

    • by Anonymous Coward

      日本惑星協会のアーカイブに2009年当時の記事 [ku-ma.or.jp](LightSailも本当はIKAROSと同時期に打ち上げるはずだったので)が残ってますが、LightSailの方がより小さな実験機でかつ純粋なソーラーセイルに近い奴っぽいです(IKAROSはイオンエンジンも用いるハイブリッド型なので)。
      IKAROSがやったから、うちらはもっと凄いことを…とかいうわけではなく、並行して開発されていた米国版ソーラーセイルプロジェクトって感じでしょうか。

      • by Anonymous Coward

        > IKAROSはイオンエンジンも用いるハイブリッド型なので

        IKAROSが積んでいるスラスタはイオンエンジンではありません。

        • by Anonymous Coward

          ずっとIKAROSイオンエンジンも積んでるだと思ってました。あれは将来構想だったのですね。お二方ありがとうございます。

      • by Anonymous Coward

        イオンエンジン積むのはイカ坊じゃなくて、将来機の構想だぞ。

    • by Anonymous Coward

      LightSail A

      軌道    地球周回 低軌道
      打ち上げ     NASA,USAF X-37Bミッションへの相乗り
      打ち上げ日時   2015年5月20日
      コンフィグレーション キューブサット(3U) 10cm x 10cm x 30cm
      質量    5kg
      スラスタ  なし
      姿勢制御  なし
      セイル     4.5μ厚マイラフィルム △形 x4 総面積 32平方メートル
      セイル展開方式  金属テープ状伸展ブームによる静的展開

      IKAROS

      軌道    太陽周回 金星遷移軌道
      打ち上げ  JAXA金星探査機あかつきミッションへの相乗り(バラスト重し役)
      打ち上げ日時 2010年5月21日6時58分22秒(JST)
      コンフィグレーション 円筒形 専用

typodupeerror

人生unstable -- あるハッカー

読み込み中...