@makoto fukunaga さん、こんにちは。
エラーの状況を詳細に添付いただきありがとうございます。
アップグレード前のIRISのバージョンは何をお使いだったでしょうか。
IRISには2種類のリリースサイクル(CDリリースとEMリリース)があり、CDリリースの場合アップグレードパスにルールがあります。
現在、コミュニティエディションダウンロードページから IRIS 2024.2 をダウンロードいただけるのですが、このバージョンにアップグレードするためには、アップグレード前バージョンが IRIS 2024.1である必要があります(CDリリースのアップグレードパスについて詳細は「製品リリースサイクルの変更」をご参照ください)。
もし、アップグレード前のIRISのバージョンが2024.1より前のバージョンであった場合、CDリリースのアップグレードパスと異なるため、messages.log に以下のエラーメッセージが出力されるようです。
コミュニティエディションの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")
以上です。
ぜひお試しください。
@Yusuke Kojima さん、ご確認ありがとうございます。
最初に貼っていただいたpython実行環境のバージョンを見落としておりました。
ご確認時起動された pythonの環境は、おそらくIRISインストール時に用意しているPythonではなく、既にWindowsにインストールされていたPythonのように見えます。
Python 3.12.3 (tags/v3.12.3:f6650f9, Apr 9 2024, 14:05:25) [MSC v.1938 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information.
ワークショップ事前確認に含めておりましたimportの確認に使うpythonですが、IRIS2024.1のインストールと同時にインストールされるPythonを使う前提での確認方法となります。(このpythonはIRISインストールディレクトリ\lib\python にインストールされます)
Python3.12.3 のpython.exeが存在するディレクトリを環境変数PATHに設定している場合、pythonと実行すると3.12.3を使ってしまうかと思いますので、コマンドプロンプト、またはPowershellを開き、一旦 IRISインストールディレクトリ\lib\python に移動してから .\python.exe を実行し、importの確認を行ってみてください。
以下、IRISインストールディレクトリが、c:\intersystems\IRIS である場合の実行例です。
C:\Users\Administrator>cd c:\InterSystems\IRIS\lib\python
c:\InterSystems\IRIS\lib\python>.\python.exe
Python 3.9.19 (main, Oct 3 2024, 15:08:04) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from flask import Flask,render_template
>>>
どうぞよろしくお願いします。
バージョン情報ありがとうございます。
コミュニティエディションのダウンロードサイトですが、最新バージョンのみをダウンロードいただけるようになっていますため、お手数おかけいたしますが、一度IRISをアンインストールしてから新規インストールでご対応いただくことになりそうです。
また後日、結果をお知らせください!