バグレポート

0.8.3Dev へのバージョンアップに伴う障害について

 
Picture of Iseki Fumikazu
0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Sunday, 22 November 2015, 10:32 PM
 

0.8.3Dev へバージョンアップにしたのですが,どうもバグが沢山あるようです.

一番,影響のあるものは 0.8.2.0 未満のサーバが Robustサーバに接続できない(らしい)ということです.

自前のサーバを使用している人は 0.8.2.0 のバイナリを用意しましたので,こちらを使用してみてください. bin/Regions/Regions.inibin/*.db ファイルコピーするだけで動くはずです.

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Sunday, 22 November 2015, 10:40 PM
 

それから,Varregion がかなり変です.

テレポートも失敗する場合があります.テレポートが失敗する場合は,ログイン画面の Start Location にSIMの名前を直接書き込んでテレポートして見てください.

NAT対応機能もダメみたい......

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Sunday, 22 November 2015, 11:28 PM
 

対応しきれないので,Robust サーバを 0.8.2.0 に戻します orz

明日も仕事なので.勤労感謝ってなんだ!?... (+_+

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Monday, 23 November 2015, 11:52 AM
 

バージョンアップ作業、ご苦労様です。

私のところの自前リージョン、「Land of Darwin, New Galapagos, Darwins_NAT_SIM, Darwins_Test_2」が、次のようなエラーがコンソールに表示されていて、現時点で接続できていません。

> 10:35:41 - [GRID CONNECTOR]: Registration failed:  when contacting http://jogrid.net:8003/grid

土曜日あたりには、接続できていたように思います。
試しに、「http://jogrid.net:8003/grid」をFirefoxブラウザのURLに直接入力してみたら、

Ooops!

The page you requested has been obsconded with by knomes. Find hippos quick!
....

と表示されて、正常に接続してるように見えます。

関係ないかもしれませんけど、私のところは、NTT光ネクストプレミアムでMTUは1438バイトです。
光プレミアム等のMTUは1454バイトのようです。

MTU(PMTU)ブラックホール問題というのが、昔問題になったことがありました。これは、以下のような問題です。

UNIXだと、起動時・実行時のifconfigのパラメータで、MTUを調整できます。まあ、関係ないとは思いますけど...。

余計なこと言って、お仕事の負担にならなければいいのですが...。

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Monday, 23 November 2015, 12:44 PM
 

私が書いた記事に間違いがありました(スミマセン)。

間違い
> 関係ないかもしれませんけど、私のところは、NTT光ネクストプレミアムでMTUは1438バイトです。
> 光プレミアム等のMTUは1454バイトのようです。

正解
> 関係ないかもしれませんけど、私のところは、NTT光プレミアムでMTUは1438バイトです。
> NTT光ネクスト等のMTUは1454バイトのようです。

申し訳ありません。訂正いたします。

あと、試しに、光プレミアム(MTUは1438バイト)回線にあるJOGridのリージョンのファイル一式を、NTT光ネクスト(MTUは1454バイト)の回線のサーバーに移して、起動してみましたけど、やはり、

12:40:44 - [GRID CONNECTOR]: Registration failed:  when contacting http://jogrid.net:8003/grid

というエラーがでてしまいました。2つの光回線ではプロバイダも異なります。
というわけで、MTUは関係なさそうです。

お騒がせいたしました。

 

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Monday, 23 November 2015, 2:02 PM
 

ご迷惑をお掛けしています.

RobustサーバにSIMが登録されていないようです.

サーバソフト OpenSim.exe を再起動して見てください(文章からすると再起動は実行済みのようですが).

それから OpenSim のバージョンを教えてください.

よろしくお願いします.

追加: 座標はどこでしたでしょうか? (7996,7977) ですか? (ログに座標情報が出るので)

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Monday, 23 November 2015, 11:05 PM
 

お忙しい中、すみません。

> サーバソフト OpenSim.exe を再起動して見てください
> (文章からすると再起動は実行済みのようですが).

はい、再起動してます。毎回、

 [GRID CONNECTOR]: Registration failed:  when contacting http://jogrid.net:8003/grid

というエラーが記録されます。

> それから OpenSim のバージョンを教えてください.

OpenSimは、OSGridの物と同じものを使う為、「http://www.osgrid.org/index.php/downloads」から取得したソースコードをコンパイルして使用しています。
OpenSimのバージョンは、起動時のログによると

 - [SERVER BASE]: OpenSimulator version: OpenSim 0.8.2.0 Dev        1dae36f: 2015-08-23 FreeBSD 8.x

です。後ろの「1dae36f: 2015-08-23 FreeBSD 8.x」の部分は、bin/.versionに自分で書いてます。これは、2015-08-23付けでハッシュの頭が1dae36fであるOSGridにて公開されたバージョンを使用していることを示します。

OpenSim.exeのインスタンスは、2つ起動しています。

----- OpenSim A -----
OpenSim.ini
    [Network]
        http_listener_port = 9020

Regions/Regions.ini
    [Land of Darwin]
        Location = "8005,7977"
        InternalPort = 9020
        ExternalHostName = "mygrid.no-ip.org"

    [New Galapagos]
        Location = "8005,7978"
        InternalPort = 9021
        ExternalHostName = "mygrid.no-ip.org"

----- OpenSim B -----
OpenSim.ini
    [Network]
        http_listener_port = 9010

Regions/Regions.ini
    [Darwins_NAT_SIM]
        Location = "8006,7977"
        InternalPort = 9000
        ExternalHostName = "xpyoda.no-ip.info"

    [Darwins_Test_2]
        Location = "8006,7978"
        InternalPort = 9001
        ExternalHostName = "xpyoda.no-ip.info"

----------

OpenSim AもOpenSim Bも、ExternalHostName は違いますが、同一IPアドレスです。

OpenSim B の[Darwins_NAT_SIM]リージョンは、名前にNATってありますが、
いまは、NAT対応のバイナリーは使用していません。
名前変えようと思ってて、そのままになっているだけです。

あと、monoのバージョンは次のとおりです。

% mono --version
Mono JIT compiler version 4.0.3 (Stable 4.0.3.20/d6946b4 Sun Aug 23 03:47:33 UTC 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       altstack
        Notification:  kqueue
        Architecture:  x86
        Disabled:      none
        Misc:          softdebug
        LLVM:          supported, not enabled.
        GC:            sgen

OpenSim Aを本日23:51:00 ごろから、再起動かけてみました。
そして、次のエラーが記録されました。

22:51:29 - [GRID CONNECTOR]: Registration failed:  when contacting http://jogrid.net:8003/grid

その付近のタイムスタンプを見て頂くと、なにかわかるかもしれません。

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Tuesday, 24 November 2015, 2:44 AM
 

私の方でも,OpenSim 0.8.2Dev r/26145 で接続できない現象を確認しました.

そちらの接続ログは次のようになっています.

2015-11-23 22:51:23,047 DEBUG (Threadpool worker) - OpenSim.Server.Handlers.MapImage.MapServerPostHandler [MAP ADD SERVER CONNECTOR]: Received map data for region at 8005-7977
2015-11-23 22:51:29,179 DEBUG (Threadpool worker) - OpenSim.Server.Handlers.MapImage.MapServerPostHandler [MAP ADD SERVER CONNECTOR]: Received map data for region at 8005-7978
2015-11-23 22:52:08,766 DEBUG (Threadpool worker) - OpenSim.Services.GridService.GridService [GRID SERVICE] GetRegionByPosition. Did not find region in database. Pos=<7996,7977>
2015-11-23 22:53:11,710 DEBUG (Threadpool worker) - OpenSim.Services.GridService.GridService [GRID SERVICE] GetRegionByPosition. Did not find region in database. Pos=<7996,7977>

私が接続を試した時も Pos=<7996,7977> のメッセージが多発します. 

Robustサーバをいったん 0.8.3Dev に上げてから,0.8.2.0 に戻したので,その影響かもしれません.
お手数ですが,0.8.2.0 を入れてみてください.

JOG用のバイナリ(0.8.2.0)も チュートリアル応用編に載せておきました.

bin/Regions/Regions.ini と bin/*.db をコピーすればそのまま動くはずです (MySQLを使用している場合は,そも設定が必要)

よろしくお願いします.

 

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Wednesday, 25 November 2015, 1:41 AM
 

> JOG用のバイナリ(0.8.2.0)も チュートリアルの応用編に載せておきました.

これを入れようとしていますが、OpenSim.iniを自分用に修正しようとしてちょっと気になった点がありますのでコメントします。

私が、新しいOpenSimにアップデイトする場合、次の手順を守っています。

(1) 配布されている OpenSim.ini.exampleを(新)OpenSim.iniにコピーする。

(2) 以前のバージョンの(旧)OpenSim.iniに加えられた自分の変更を(新)OpenSim.iniに反映する。
    これは古いバージョンのあるディレクトリで、

        % diff OpenSim.ini.example OpenSim.ini
    
    とすれば、自分がした変更部分が分かるので、これを(新)OpenSim.iniに反映する。

こういうやり方をすると、新しいバージョンに設定項目が増えてたり、削除されてたり、場所が移動してたりということを、もらさないで反映することができます(まあ、ポカミスは、しょっちゅうあるけどwww)。

また、JOGの0.8.2.0のOpenSim.ini.exampleをみると、ファイルの頭のほうに[Const]セクションが追加されています。これはいつのころからか、新しく増えた記法で、INIファイルに

[セクション]
           項目名 = 設定値

という設定があった場合、この設定値を別のところで

${セクション名|項目名}

の形式で参照できる、というものです(ShellやMakefileの変数参照みたいな感じ)。
参照するセクション名は、どこのセクションでも良いみたいですが、
[Const]を新たに追加し、システム全体にかかわる定数値を OpenSim.ini で定義し、*.iniファイルのあちこちに、自分用の定義値ばら撒くことなく記述することができるようしているようです。バージョンアップにともなう変更箇所が減るので、私はこれを使うようにしてます。
config-include/GridCommon.ini なんかは、だいぶラクになるかもしれません。

あと、OSSL関数関係の設定は、config-include/osslEnable.ini に移動してたりします。


もうひとつ、OpenSim.iniには、

MaxPoolThreads = 30

とありますが、OpenSim.ini.exampleには、この項目はありません。
しかし、OpenSimDefaults.ini には、

MaxPoolThreads = 300

とあります。デフォルトの 300を 30に上書きしてることになると思いますが、OpenSim.iniで上書きする必要はあるのでしょうか?


以上、JOG用のバイナリ(0.8.2.0)をインストールしようとして、INIファイルを書くところで、ちょっと気になったので www。

では、引き続き、インストール作業を続けます。

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Wednesday, 25 November 2015, 10:11 AM
 

そういえば,JOGの0.8.2 用はまだ Const を使っていませんでしたね.

>> あと、OSSL関数関係の設定は、config-include/osslEnable.ini に移動してたりします。

JOG 用の設定では,たしか osslEnable.ini は読み込んでいないです.
osslEnable.ini では 関数毎に実行者を指定できるのですが,細かすぎて JOG meets でエラーが多発して,一々ユーザに確認して設定するのが面倒なので使っていません.
機会があったらちゃんと確認する必要はあるかもしれません.

>> MaxPoolThreads = 300

この辺の効果が良く分からない(効果を確認していない)パラメータについては OSgrid の設定を参考にしています.
たぶん,あちらはマンパワーもありそうですので,この辺の効果は確認済みであることを期待して,パラメータをまねています.

もし,誰かJOGで実験でもして頂けると助かります (^^;

よろしくお願いします.

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Wednesday, 25 November 2015, 11:13 AM
 

> >> MaxPoolThreads = 300
>
> この辺の効果が良く分からない(効果を確認していない)パラメータについては
>  OSgrid の設定を参考にしています.

参考にしてる設定というのは、http://www.osgrid.org/index.php/downloads のexample ini files にある OpenSim.ini.txtのことでしょうか?

これ見る限りOSGridでは、

    ; Max threads to allocate on the FireAndForget thread pool
    ; when running with the SmartThreadPool option above
    MaxPoolThreads = 300
    MinPoolThreads = 32

となっています。

私は、opensimという一般ユーザーを作成し、その下にopensim/OSGrid/2015-08-23 というように、OSGridで公開された日付のディレクトリを作成し、そこに公開ファイル群をダウンロードしてます。その下でファイルを展開して、以前のバージョンの設定ファイル・ライブラリファイルを新しいバージョンに反映させて、アップデイトをしてます(こうしておくと、問題があった時に、元に戻すのが簡単)。
これらのフォルダからを検索してみたところ、上記の設定値は、いまのところ変化していないようです。
(こういうのは SubversionとかGitをうまく使った方が楽にできるんだろうなぁ..)。

% cd ~/opensim/OSGrid
% egrep '(Max|Min)Pool' 2015-0*/OpenSim.ini.txt
2015-05-09/OpenSim.ini.txt:    MaxPoolThreads = 300
2015-05-09/OpenSim.ini.txt:    MinPoolThreads = 32
2015-05-23/OpenSim.ini.txt:    MaxPoolThreads = 300
2015-05-23/OpenSim.ini.txt:    MinPoolThreads = 32
2015-06-24/OpenSim.ini.txt:    MaxPoolThreads = 300
2015-06-24/OpenSim.ini.txt:    MinPoolThreads = 32
2015-07-22/OpenSim.ini.txt:    MaxPoolThreads = 300
2015-07-22/OpenSim.ini.txt:    MinPoolThreads = 32
2015-08-23/OpenSim.ini.txt:    MaxPoolThreads = 300
2015-08-23/OpenSim.ini.txt:    MinPoolThreads = 32

これを見る限り、「MaxPoolThreads = 300」というのは、少ないような気がします。

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Wednesday, 25 November 2015, 11:27 AM
 

それでは,転記ミスですね.

ご指摘ありがとうございます.

修正しておきます,

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Wednesday, 25 November 2015, 11:37 AM
 

う~ん.JOGのサーバ見ていると ちゃんと 300, 32 になっているし,30, 10 というのは明らかに転記ミスと言うわけではないですね.

なんだろう? 
何を参考にしたんだろう?
もう記憶もあやふやですね.

取りあえず修正しておきます.(^^;

Picture of Xpyoda Janus
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Xpyoda Janus - Thursday, 26 November 2015, 12:43 AM
 

JOG用 OpenSim 0.8.2.0 バイナリ Rev2 (2015 11/25) をインストールしてみました。

以前の、Land of Darwin等のリージョンの *.dbファイルやRegions.iniをコピーして、FreeBSDのmono 4.0.3 の上で、コンパイルしないで、JOGのバイナリをそのまま使いました。

結果、正常に立ち上がり、自分のリージョンをホームにして、ビュアーログインできました。私の使っていた、OpenSim 0.8.2Dev r/26145 は、問題ありだったのですね...。

若干、気になったのは、起動時に次のようなエラーが記録されていたことです。

    HH:MM:SS - [AGENT PREFERENCES CONNECTOR]: AgentPreferencesService missing from OpenSim.ini

config-include/GridCommon.ini.example には、

 134 [AgentPreferencesService]
 135     ;
 136     ; Change this to your grid-wide avatar prefs server
 137     ;
 138     AgentPreferencesServerURI = "${Const|BaseURL}:${Const|PrivatePort}"

のセクションがありますが、config-include/GridCommon.ini にはありません(行頭の数字は行番号)。
GridCommon.ini への反映忘れでしょうか?


あとは、正常にうごいているようです。しばらく様子みてみます。

それと、ソースコードからコンパイルする場合は、どこから取得すればいいのでしょう?
また、オプションのモジュール等のソースコードは、どこから入手すればよいのでしょう?
急ぎませんので、お暇なときにでも教えてください。

Picture of Iseki Fumikazu
Re: 0.8.3Dev へのバージョンアップに伴う障害について
by Iseki Fumikazu - Thursday, 26 November 2015, 2:15 AM
 

すみません.

[AgentPreferencesService] は忘れていました.orz

やっぱりチェックしてくれる人がいると助かります.結構粗忽者なので (^^;

 

OpenSim のリリース版のソースコードは http://opensimulator.org/dist/ です.

開発バージョンはGITで git://opensimulator.org/git/opensim です.

オプションのモジュールとは,JOG用のモジュールでしょうか?

こちらが開発(?)しているモージュールは subversion で管理しています.

http://www.nsl.tuis.ac.jp/svn/opensim/opensim.modules/trunk

他で使用しているという話はあまり聞かないので,最近はリリース版を出していないですね.
前は Web インターフェイスと一緒にリリースしていました.
Profile や Search モジュールは単体で使用すると結構設定が面倒です.最近は OpenSim でデフォルトでサポートしている様ですが,愛着があるので(以前のデータとの互換もあるので),JOGでは自分で開発したものを使用しています.

マネーサーバは リリース版が http://www.nsl.tuis.ac.jp のトップにリンクがあります(こちらはちょくちょく引き合いがある).

開発バージョンは subversion で http://www.nsl.tuis.ac.jp/svn/opensim/opensim.currency/trunk です.

一応解説らしきものは,http://www.nsl.tuis.ac.jp/xoops/modules/xpwiki/  にあります.