2

インデックスの配布時に断続的な問題が発生します :( すべてのサーバーは Windows Server 2008 です。

配布先のサーバーが 2 つあり、そのうちの 1 つが次のエラーで 2 回失敗しました。

INFO: [MDEXHost1] Starting shell utility 'move_dgraph-input_to_dgraph-input-old'.
10-Jun-2015 06:08:36 com.endeca.soleng.eac.toolkit.script.Script runBeanShellScript
SEVERE: Utility 'move_dgraph-input_to_dgraph-input-old' failed.

さらに掘り下げると、PlatformServices\workspace\logs\shell フォルダーのログ ファイルに次のエラーが見つかりました。

Failed to move D:\Firebird\config\script\..\..\.\data\dgraphs\Dgraph1\dgraph_input to
D:\Firebird\config\script\..\..\.\data\dgraphs\Dgraph1\dgraph_input_old: No such file or directory at -e line 1.

サーバーの状態は、dgraph_input_new フォルダーがありますが、dgraph_input_old フォルダーの作成に苦労しています。dgraph_input フォルダーは存在するため、「そのようなファイルまたはディレクトリはありません」は興味深いものです。

サーバーには操作用の十分なディスク容量があり、断続的であるため、ファイル/フォルダーのアクセス許可ではないと思います(そうしないと、常に失敗します)。ウイルス スキャナーがファイル/フォルダーをロックしている場合に備えて、これらのフォルダーのオンアクセス ウイルス スキャンを無効にするように依頼したこともあります。

問題の解決策を考え出すのに苦労しています、HALP!

編集: forge プロセスは dgraph を停止しましたが、TomCat6 プロセスはまだ実行中です。それは正常ですか?TomCat がフォルダをロックしていませんか?

編集: フォルダーを移動するタスクは、次のようなちょっとした Perl です。

perl.exe -e "use strict; use File::Spec; use File::Copy; use File::Glob qw/:glob/;my $source = 'D:\Firebird\config\script\..\..\.\data\dgraphs\Dgraph1\dgraph_input'; $source =~ s/[\\\/]+$//;my @sources = bsd_glob($source); foreach my $file (@sources) {my @fromPath = File::Spec->splitdir($file); if (scalar @fromPath eq 0) { die \"Failed to split path: $!\"; } my $fromRelative = @fromPath[scalar @fromPath - 1];my $toFile = 'D:\Firebird\config\script\..\..\.\data\dgraphs\Dgraph1\dgraph_input_old'; if ( -d $toFile ) { $toFile =File::Spec->catdir($toFile, $fromRelative); } my $res = move($file, $toFile);if (! $res) { die \"Failed to move $file to$toFile: $!\"; }}"

編集:単純なアクセス許可の問題のようです。自分を管理者に昇格させずにフォルダーの名前を変更することはできません。サービスは、管理者グループに属するユーザーとして実行されています。このフォルダを管理者専用にするとどうなりますか?

4

1 に答える 1