テナント環境セットアップが正常に完了しましたが、intra-mart Accel Documentsの操作でエラーが発生します。

【発生条件】

intra-mart Accel Documents 2013 Springにて、テナント環境セットアップに一度失敗し、再度実行する。
または、既にintra-mart Accel Documents用のパブリックストレージに何らかのファイルが残っている状態でテナント環境セットアップを実行する。

【原因】

intra-mart Accel Documentsのテナント環境セットアップ処理において、データベースや文書格納先に既にデータがある場合の考慮が漏れていたためです。

【対応方法】

製品の不具合となります。
下記のアップデートを適用してください。

・intra-mart Accel Documents 2013 Autumn (ver8.0.1) 以降にアップデートしてください。

【回避方法】

■intra-mart Accel Documentsのセットアップが不正に完了してしまった場合のリカバリー方法

intra-mart Accel Documentsのセットアップが不完全であっても、一度、テナント環境セットアップが完了してしまうと、テナント環境セットアップの再実行ができない状態になってしまいます。
再実行可能な状態に戻す手順を下記に示します。

手順1. テナント環境セットアップの完了状態を取り消します。

データベースに対して以下のSQLを実行してください。

実行するSQL(Oracle Database の場合):
---------------------------------------
DELETE FROM "IMART"."IM_SCHEMA_UPDATE"
WHERE "MODULE_ID" = 'acceldocuments'
AND "IMPORT_TYPE" = 'TENANT_EXTENSION';
---------------------------------------
※"IMART"の部分はresin-web.xmlでOracleドライバのユーザーに指定したユーザー名を当てはめてください。

実行するSQL(PostgreSQL の場合):
---------------------------------------
DELETE FROM "public"."im_schema_update"
WHERE "module_id" = 'acceldocuments'
AND "import_type" = 'TENANT_EXTENSION';
---------------------------------------
※"public"の部分はデフォルトで使用されるデータベースのスキーマ名です。
通常は"public"を指定してください。

実行するSQL(Microsoft SQL Server の場合):
---------------------------------------
DELETE FROM "dbo"."im_schema_update"
WHERE "module_id" = 'acceldocuments'
AND "import_type" = 'TENANT_EXTENSION';
---------------------------------------
※"dbo"の部分はデフォルトで使用されるデータベースのスキーマ名です。
通常は"dbo"を指定してください。

手順2. パブリックストレージからAccel Documents用のフォルダを削除する

以下のパスに"acceldocuments"というフォルダが存在していたらファイルシステム上から削除もしくは移動します。
[storage-config.xmlに記載したルートパス]\public\storage
手順3. データベースからAccel Documentsのスキーマを削除します。
データベースからAccel Documents用データベーススキーマ(Oracle Databaseの場合はユーザー)を削除します。

例えば、データベースセットアップ時に「acceldocuments」という名前のデータベーススキーマを作成していた場合は、「acceldocuments」に加えて、「acceldocuments_1」、「acceldocuments_1000000」など、「acceldocuments_???」という名前のスキーマが作成されている場合がありますので、これらをすべて削除します。
スキーマの削除方法は利用しているデータベースによって異なります。
各データベース製品元のドキュメントを参照してください。

手順4. Accel Documents用データベーススキーマの再作成
Accel Documents用のデータベーススキーマを作成します。
作成方法は、 データベースセットアップ時と同様です。
詳細は「intra-mart Accel Documents / セットアップガイド」を参照してください。

以上で、テナント環境セットアップ実行前の状態となり、再実行が可能になります。

【特記事項】

■パッチについて
モジュール修正用のパッチを適用することで、不完全な状態のままAccel Documentsのテナント環境セットアップが完了しなくなりますが、パッチ適用後でも、何らかの原因でテナント環境セットアップが失敗した場合に、セットアップ途中の情報がデータベースやストレージ内に残る場合があります。
この状態でテナント環境セットアップを実行すると、KnSpaceAlreadyExistsException もしくは、KnContentAlreadyExistsException が発生するように修正されています。
これらの例外が発生した場合は、上記リカバリー方法に記載してある手順2、手順3、手順4を実行し、エラー原因を取り除いて、テナント環境セットアップを再実行してください。


-- 対象 ------------------------------------------------------------------------
iAP/Accel Applications/Accel Documents/2013 Spring
--------------------------------------------------------------------------------

FAQID:504
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
Powered by Zendesk