[update]
v2.1 2020-01-03
・SIMリスタート時にdataserverイベントが重なった場合に発行クエリーが消失する可能性への対処
SIMリスタート直後に動作が止まってしまう可能性があると思われるため該当部分の修正をしました。特にクリティカルな不具合対処ではなく内部的(趣味的)な変更のみなので機能の追加や変更はありません。
【より詳細な解説】(LSLが読み書きできる人向けの解説)
以前からごく希にSIMリスタート直後にオンラインチェックサーバーのチェック動作が停止する見受けられ、HTTPでのアクセスには応答することから「タイマーのトリガーが失われている?」と疑念を持ち、SIMリスタート検出時にタイマーも再スタートするように細工をしていました。特にその後にSIMリスタートでの動作停止は見られなかったのですが、先日、2020-01-02(日本時間、SLだと1日)の自動リスタート直後で、またもや発現したようでスクリプトは動作しているもののチェック動作が機能していない状態となっていました。 まぁ、単純にスクリプトリセットすればOkay♪なのですが、拘りのMH+ Labですから、原因究明すべく再度見直してみることにしました。このガジェット以外はどれも正常に動作していることからタイマー動作が偶発的に停止してしまうという考えが偶発的に発現するなら他の動作中のタイマー類でも同様の事象が起こるはずですから、どうやら見当違いだったのではとの答えに至りました。だとしたら、このオンラインチェックサーバー特有のロジックに原因があるのではとじっくりと見てみたところ、「もしかしたらデータサーバーへのリクエスト処理途中で途切れて(リスタートして)しまったのでは?」と思うようになりました。確認する術がないので確証はありませんが、そうだとしたら動作が停止する構造になっている箇所があると発見しました。
何を言っているか具体的に良く分からないと思うので、かいつまんで説明すると
スクリプトの一連の流れで
1.タイマー停止(Keyが初期状態なら)
2. →データリクエストクエリ発行(クエリーKeyセット)
3. →データサーバーからの返却(イベント待ち)
4. →クエリーKeyと等しい結果受信
5. →クエリーKey初期化
6.タイマー再開
この1~6の流れをチェック対象のUUIDの数の分だけループ処理するのですが、この流れで3と4の間でSIMリスタートが発動した場合、リクエストしたクエリーが消失しているのではないかという疑念です。
あ、DoやForでのループでなく、タイマーで回しているのは、処理数に単位時間当たりの使用制限がある処理を、制限を超えないように使うためです。
Alive-Cサーバー群のようにHTTPを利用した物だと、そもそもHTTPの応答は無応答の場合を想定して自前で処理しなければならないため特に問題にならないのですが、LSLのデータサーバを使う前提の処理で、リクエストに無応答というパターンがあるのではないか?という、あくまでも想像ですけど、そんな気がしてなりません。少なくともMH+オンラインチェックサーバーのロジックではSIMリスタートの契機でタイマーも強制で再始動を掛けていました、しかし動作が継続していないことからデータサーバーからの返却が無く、キーを初期化する契機が発生しなかった為に、ずっと待ち状態となっていたと考えています。(キーが空の時に次の処理を行う判断としているため)
この問題が発現したのは MH+オンラインチェックサーバー だけですが、頻度が少ないとはいえ同様のロジックが一部存在する MH+据置型RezDay備忘録サーバー も修正対象としました。
人気の投稿 (Last 30 Days / Top 10)
-
JST2025-01-21 昼頃から Bluesky での検索が出来なくなっています。 確認できているのは 文字列検索 (例 https://bsky.app/search?q=Secondlife ) ハッシュタグ検索 (例 https://bsky.app/hash...
-
事実上、3代目の位置となった Slavereg ですが、ネット上には過去のデータが散在するので日本語で言うところの 『登録番号』に相当する部分の呼称の違い についてまとめておきます。当ブログの 関連の過去記事 と内容が重複するので知ってる人にはおさらいとして、知らなかった人は当...
-
ギルドの掲示板は、サーバー本体とクライアントという構成で分かれていて、クライアント側が掲示内容を実際に表示する部分を担います。 このクライアント側 = リモート・パネル部は、設置数がそのままアクセス負荷に比例してしまうので勝手ながらこちらで承認したユーザーのみに配布という形式をと...
-
なんか SL23B 発表の前に料金プランの変更が告知されました。いくつかの料金に関わる項目が挙げられていてますが、発効日が6月15日からとなっているものもあり、かなり性急な発表であるように見受けます。項目によっては値下げとなるものもありますが、多くのユーザーに影響がありそうなアカ...
-
Automatically teleport sequentially via LM HUD [Market Place] [JA] インベントリーに格納されたランドマークを元にして 順番に自動でテレポートするHUDです。 テレポートの間隔は、ある程度選択できます。 途中で停止...
-
このアイテムの概要は 前の記事 を参照してください。 こちらの記事は使い方の詳細説明です。 事前準備 推奨ビュワー どのビュワーでも動作しますがテレポートを頻発する都合で、より安定した動作が望めそうなことと、使い勝手の面で都合が良いところがあるので「 FireStorm vi...
-
LH Find u House HUD (DEMO) [Market Place] [JA] Linden Homes のエリアで空き家 (Governor Linden の所有地で区画のサイズが 512sqm, 1024sqm, 2048sqmの何れか)を 検索するガジェットで...
-
Paecel Lister HUD [Market Place] 無印ブランドアイテムの Parcel Lister HUD の微 Update です。 機能面の追加で、異なる Region に入ったときに自動で実行する機能の追加です。 大した変更ではありませんが、散策しながら...
-
06/16 (PDT/PST) 付けで新しいラストネームの発表がありました。 https://community.secondlife.com/news/featured-news/now-available-new-last-names-in-second-life-for-p...










0 件のコメント:
コメントを投稿