テーブルを見てSysVersionControlMorphXRevisionTable
(アクセスできない場合はSQLで)、重複レコードが何であるかを確認してください。一意のインデックスはItemPath
とVersion
です。しかし、ここで何かが見えるとは思えません。
現在の\Data Dictionary\Tables\SysVersionControlMorphXRevisionTable\Methods\latestVersionNumber
最高のリビジョンを取得しようとしており、\Data Dictionary\Tables\SysVersionControlMorphXRevisionTable\Methods\create
.
create
メソッド行 #48にブレークポイントを配置して内容revision.Version
を確認し、挿入の前に SQL にItemPath
/Version
が既に存在するかどうかを確認します。
おそらくサーバー/クライアントのキャッシュの問題だと思います。解決するには、 の下にあるすべてのクライアント キャッシュを更新しますTools>Caches
。これで解決しない場合は、次のメニュー項目をコピーしてください:
\Menu Items\Action\SysFlushAOD
\Menu Items\Action\SysFlushData
\Menu Items\Action\SysFlushDictionary
\Menu Items\Action\SysFlushReportServer
新しいメニュー項目に、プロパティを変更しますRunOn = Server
。次にこれらを実行すると、サーバーのキャッシュがフラッシュされます。それでも問題が解決しない場合は、AOS を再起動してみてください。
これが機能しない場合は、ユーザーapplication user cache
ファイルが破損している可能性があります。クライアントを閉じて、%LocalAppData% フォルダー (通常は ) 内の *.auc および *.kti ファイルを削除し、クライアントを再度開きC:\Users\[user]\AppData\Local
ます。
お使いの環境で、最近別のデータベースのコピーを復元しましたか?
編集: DBの復元を行ったことがわかったので、GLOBALGUID
再利用された可能性が高く、キャッシュの問題を引き起こしている可能性があります. これがどのように/なぜ起こるかについての詳細は、こちらを参照してください。
AOS を停止して、次の SQL コマンドを実行する必要があります。
UPDATE SYSSQMSETTINGS SET GLOBALGUID = '00000000-0000-0000-0000-000000000000'
DELETE FROM SYSCLIENTSESSIONS
DELETE FROM SYSSERVERSESSIONS
バッチの実行にも問題がありますか? (多少関連していますが、主にこの質問に興味があります)