質問
· 2024年11月21日

IRISインスタンスが起動できない。

IRISを起動しようとするとエラーとなり起動できません。
どなたか解決策をご存知でしょうか?よろしくお願い致します。

環境:Windows11

事前作業:

下記URLと同症状が発生し、アップグレードインストールを行っています。

https://jp.community.intersystems.com/post/iris%E3%82%B3%E3%83%9F%E3%83%...

操作:

1.タスクトレイアイコンから「InterSystems IRIS 開始(S)[IRIS]」を選択。

2.エラーメッセージが表示される。

イベントビューアのエラー:

- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="IRIS Config IRIS" /> 
  <EventID Qualifiers="49409">263</EventID> 
  <Version>0</Version> 
  <Level>2</Level> 
  <Task>0</Task> 
  <Opcode>0</Opcode> 
  <Keywords>0x80000000000000</Keywords> 
  <TimeCreated SystemTime="2024-11-21T05:48:35.4717029Z" /> 
  <EventRecordID>216772</EventRecordID> 
  <Correlation /> 
  <Execution ProcessID="13828" ThreadID="0" /> 
  <Channel>Application</Channel> 
  <Computer>DESKTOP-4OOPUSU</Computer> 
  <Security UserID="S-1-5-18" /> 
  </System>
- <EventData>
  <Data>(99) スタートアップ(^STU)プロセスが中断しました。</Data> 
  </EventData>
  </Event>

 

mgr/messages.logのエラー:

*** Recovery started at Thu Nov 21 15:08:37 2024
     Current default directory: d:\iris\mgr
     Log file directory: d:\iris\mgr\
     WIJ file spec: d:\iris\mgr\IRIS.WIJ
Recovering local (d:\iris\mgr\IRIS.WIJ) image journal file...
Starting WIJ recovery for 'd:\iris\mgr\IRIS.WIJ'.
  0 blocks pending in this WIJ.
Exiting with status 3 (Success)
11/21/24-15:08:37:095 (16084) 0 [Generic.Event] Global buffer setting requires attention.  Auto-selected 25% of total memory.
11/21/24-15:08:37:169 (16084) 0 [Generic.Event] Allocated 5024MB shared memory (large pages)
11/21/24-15:08:37:170 (16084) 0 [Generic.Event] 3937MB global buffers, 393MB routine buffers, 64MB journal buffers, 307MB buffer descriptors, 300MB heap, 5MB ECP, 17MB miscellaneous
11/21/24-15:08:37:171 (16084) 0 [SIMD] SIMD optimization level: DEFAULT
11/21/24-15:08:37:204 (16084) 0 [WriteDaemon.UsingWIJFile] Using WIJ file: d:\iris\mgr\IRIS.WIJ
11/21/24-15:08:37:204 (16084) 0 [Generic.Event] No journaling info from prior system
11/21/24-15:08:37:217 (16084) 0 [Generic.Event] 
Startup of InterSystems IRIS [IRIS for Windows (x86-64) 2024.2 (Build 247U) Tue Jul 16 2024 09:57:03 EDT]
    in d:\iris\bin\
    with mgr: d:\iris\mgr
    with wij: d:\iris\mgr\IRIS.WIJ
    from: d:\iris\mgr\
  OS=[NT], version=[6.2.9200], 16 processors.
  Processor architecture=[9], level=[25], revision=[5000], active processor mask=[ffff].
  System Initialized.
11/21/24-15:08:37:236 (12300) 0 [WriteDaemon.Started] Write daemon started.
11/21/24-15:08:38:616 (1780) 0 [Database.MountedRW] Mounted database d:\iris\mgr\ (SFN 0) read-write.
11/21/24-15:08:38:621 (1780) 0 [Utility.Event] Instance 'IRIS' starting on node DESKTOP-4OOPUSU by user 'SYSTEM' on 11/21/2024 06:08:38.621 UTC
11/21/24-15:08:38:621 (1780) 0 [Utility.Event] Using parameters from file 'D:\IRIS\iris.cpf'
11/21/24-15:08:38:621 (1780) 0 [Utility.Event] Loading DLLs
11/21/24-15:08:38:622 (1780) 0 [Database.MountedRO] Mounted database d:\iris\mgr\irislib\ (SFN 1) read-only. Database label is marked read-only. 
11/21/24-15:08:38:623 (1780) 0 [Utility.Event] Switching to temporary %SYS Namespace
11/21/24-15:08:38:628 (1780) 0 [Utility.Event] Loading Locale jpww (Japanese for Windows, Japan, Unicode) from objects
11/21/24-15:08:38:660 (1780) 0 [Database.MountedRW] Mounted database d:\iris\mgr\irislocaldata\ (SFN 2) read-write.
11/21/24-15:08:38:661 (1780) 0 [Utility.Event] Using OpenSSL 3.1.4 24 Oct 2023
11/21/24-15:08:38:676 (1780) 0 [Database.MountedRW] Mounted database d:\iris\mgr\iristemp\ (SFN 3) read-write.
11/21/24-15:08:38:678 (1780) 0 [Utility.Event] D:\IRIS\mgr\iristemp\ initialized as IRISTEMP
11/21/24-15:08:38:679 (1780) 0 [Utility.Event] Switching to default %SYS Namespace
11/21/24-15:08:38:690 (1780) 3 [Utility.Event] Error: 繧ィ繝ゥ繝シ #5002: ObjectScript 繧ィ繝ゥ繝シ:<SUBSCRIPT>CheckSecurityTables+1184^Security.System.1 ^SYS("Security","ServersD","") Checking security tables - Shutting down the system : $zu(56,2)=$Id: //iris/2024.2.0/kernel/common/src/gformat.c#1 $ 2173 0
11/21/24-15:08:43:698 (1780) 0 [Utility.Event] Shutting down InterSystems IRIS
11/21/24-15:08:43:702 (1780) 0 [Utility.Event] Notifying Clients
11/21/24-15:08:43:703 (1780) 0 [Utility.Event] No user shutdown routines to execute
11/21/24-15:08:43:703 (1780) 0 [Utility.Event] Stopping User Jobs
11/21/24-15:08:43:706 (1780) 0 [Utility.Event] Stopping Network Servers
11/21/24-15:08:43:707 (1780) 0 [Utility.Event] Withdrawing from License Domain

Printing the last 0 entries out of 0 total occurrences.
Err   Process    Date/Time           Mod Line  Routine            Namespace
11/21/24-15:08:43:719 (1780) 0 [Utility.Event] Stopping Client Networking
11/21/24-15:08:43:719 (1780) 0 [Utility.Event] Updating Journal File
11/21/24-15:08:43:719 (1780) 0 [Utility.Event] Journal restore not required at next startup
11/21/24-15:08:43:719 (1780) 0 [Utility.Event] Transaction rollback not required at next startup
11/21/24-15:08:43:834 (1780) 0 [Utility.Event] Removing database locks
11/21/24-15:08:43:836 (1780) 0 [Utility.Event] Waiting for database updates to complete
11/21/24-15:08:43:836 (1780) 0 [Utility.Event] Database updates complete
11/21/24-15:08:43:837 (1780) 0 [Utility.Event] Stopping System Jobs
11/21/24-15:08:43:944 (4500) 0 [Generic.Event] EXPDMN exited due to system shutdown
11/21/24-15:08:43:944 (4920) 0 [Generic.Event] JRNDMN exited due to system shutdown
11/21/24-15:08:43:945 (12300) 0 [Generic.Event] No blocks pending in WIJ file
11/21/24-15:08:43:946 (12300) 0 [Generic.Event] WRTDMN exited due to system shutdown
11/21/24-15:08:43:944 (8828) 0 [Generic.Event] GARCOL exited due to system shutdown
11/21/24-15:08:43:976 (16084) 0 [Generic.Event] CONTROL exited due to system shutdown
11/21/24-15:08:43:991 (1780) 0 [Utility.Event] Shutdown complete

$ZV: 2024.2.0.247.0
ディスカッション (6)1
続けるにはログインするか新規登録を行ってください

@makoto fukunaga さん、こんにちは。

エラーの状況を詳細に添付いただきありがとうございます。 

アップグレード前のIRISのバージョンは何をお使いだったでしょうか。

IRISには2種類のリリースサイクル(CDリリースとEMリリース)があり、CDリリースの場合アップグレードパスにルールがあります。

現在、コミュニティエディションダウンロードページから IRIS 2024.2 をダウンロードいただけるのですが、このバージョンにアップグレードするためには、アップグレード前バージョンが IRIS 2024.1である必要があります(CDリリースのアップグレードパスについて詳細は「製品リリースサイクルの変更」をご参照ください)。

もし、アップグレード前のIRISのバージョンが2024.1より前のバージョンであった場合、CDリリースのアップグレードパスと異なるため、messages.log に以下のエラーメッセージが出力されるようです。

11/21/24-15:08:38:690 (1780) 3 [Utility.Event] Error: 繧ィ繝ゥ繝シ #5002: ObjectScript 繧ィ繝ゥ繝シ:<SUBSCRIPT>CheckSecurityTables+1184^Security.System.1 ^SYS("Security","ServersD","") Checking security tables - Shutting down the system : $zu(56,2)=$Id: //iris/2024.2.0/kernel/common/src/gformat.c#1 $ 2173 0

コミュニティエディションのIRIS 2024.1キットをお持ちであれば、一旦バージョン2024.1にアップグレードし、その後バージョン2024.2にアップグレードできるのですが、WRCアカウントをお持ちでない場合、バージョン2024.1をダウンロードいただけません。

バージョン2024.2をインストールするためには、一旦現在のIRISをアンインストールし、バージョン2024.2を新規でインストールします。

いままで使用中だったユーザ用DB(作成されたものも含む)はそのまま2024.2環境でもご利用いただけますので、その方法を含めて手順をご案内します。

(ユーザ用データベースはIRISのアンインストールで削除されることはありませんが、以下手順では、念のため別の場所に退避する手順を記載しています)

1) バージョン2024.2でも使用したいユーザ用DBを退避します。

IRISをインストールすると、空のDBとしてUSERデータベースが用意されています。この他、ご自身で作成されたデータベースがある場合には、一旦データベースディレクトリごと退避します。

USERデータベースについては、<IRISインストールディレクトリ >\mgr\user に配置されています。userディレクトリごと、他の場所に退避します。

※念のための確認で、退避したディレクトリ以下に iris.lckがある場合は削除しておいてください。

2) Windowsの「プログラムの追加と削除」メニューを利用してIRISをアンインストールします。

ご参考:Windowsで InterSystems 製品をアンインストールするときの注意点

3) IRISのインストールディレクトリを削除します。

4) IRIS2024.2をインストールします。

5) 退避していいたユーザ用DBを新環境で利用できるようにデータベースの定義を作成します。

管理ポータルを開き、[システム管理] > [構成] > [システム構成] > [ローカルデータベース] メニュー進みデータベースを新規で作成します。

データベース名を決定した後、データベースディレクトリに退避したユーザ用データベースディレクトリを指定します。

図例は c:\temp\user に退避したディレクトリをそのまま指定した場合の例です。

「次へ」で次ページに進むと、以下の案内が出ます。

前バージョンで使用していたデータベースファイル(IRIS.dat)がある場合、上記メッセージが表示されます。

「完了」ボタンを押して作成を終了します。

ここまでの手順でデータベースの作成ができましたので、次にネームスペースを作成します。

6) 作成したデータベースを使用するネームスペースを作成します。

管理ポータルの[システム管理] > [構成] > [システム構成] > [ネームスペース] メニュー進みネームスペースを新規で作成します。

図例では、USER2ネームスペースを作成し、5)で作成したUSER2データベースを使用するように設定しています。

画面下部の「相互運用プロダクション用にネームスペースを有効化」のチェックがデフォルトで入っています。管理ポータルのInteroperabilityメニューを使用する場合はチェックしたままとします。

最後に保存を押してネームスペース作成を完了します。

7) 作成したネームスペース内のクラス(テーブル)をコンパイルします。

ターミナルを起動し、作成したネームスペースに移動します。例はUSER2ネームスペースに移動して全クラスを一括コンパイルしています。

set $namespace = "USER2"
do $system.OBJ.CompileAll("u")

退避したユーザ用DBが複数だった場合、作成した新規ネームスペースも複数存在することになり、上記実行を各ネームスペースで実施するのが少し面倒になりますので、その場合は、全ネームスペースに対して一括でコンパイルする方法もあります。

do $system.OBJ.CompileAllNamespaces("u")

以上です。

ぜひお試しください。

詳細な返信ありがとうございます。

作業ボリュームがあるようですので、あらためてまとまった時間が取れたタイミングで試させて頂きます。

その際にまた結果ご報告させて頂きます。

> アップグレード前のIRISのバージョンは何をお使いだったでしょうか。

「2023.3.0.254.0」でした。

> コミュニティエディションのIRIS 2024.1キットをお持ちであれば

残念ながら所持しておりません。

そもそも現時点でダウンロードできたのが今回の「2024.2」バージョンの一択だったと記憶しております。

バージョン情報ありがとうございます。

コミュニティエディションのダウンロードサイトですが、最新バージョンのみをダウンロードいただけるようになっていますため、お手数おかけいたしますが、一度IRISをアンインストールしてから新規インストールでご対応いただくことになりそうです。

また後日、結果をお知らせください!

ご提示頂いた手順を行ってみました。
無事、IRISインスタンスが実行されるようになり
ユーザ・ロール・リソースあたりの設定を追加して(この辺りもバックアップ・復旧の手順があったのでしょうか?)
元の通りDB接続できるようになりました。

ご対応ありがとうございました。

無事、実行できるようになってよかったです!

お試しいただきありがとうございました。

ユーザやロールなど、管理ポータルのセキュリティ管理以下の設定についてですが、IRIS開始中に定義をエクスポートし、新しい環境にインポートする手順で復旧することができます。

以下、参考記事です。

セキュリティ設定のエクスポートとインポートに関するTips