休日の電子メールの自動応答がBerkeley DBバージョンのドリフトに対処できますか?

休日の電子メールの自動応答がBerkeley DBバージョンのドリフトに対処できますか?

私たちは、メールサーバーとさまざまなユーザーワークステーションからアクセスするNFSホームディレクトリを持つ一般的なアカウントドメインを持っています。

vacationメールサーバーとワークステーションにインストールされているパッケージのバージョンは一致する必要がありますか?

私が理解するように、vacationプログラムはBerkeley DBを使用して、返信メールを同じ送信者に2回送信しないように自動返信した送信者を追跡します。vacationBerkeley DBの1つのバージョンに接続されたワークステーションでデータベースが作成され、MDAで使用されますが、メールサーバーのデータベースが別のバージョンのBerkeley DBに接続されている場合はvacationどうなりますか?これが失敗につながりますか?

~によるとOracleドキュメント

Berkeley DB メジャーリリースとマイナーリリースには、オプションで 4 つのゾーンすべての変更を含めることができます。つまり、アプリケーションAPI、ゾーンファイル、データベース形式、およびログファイルは、以前のリリースと互換性がない可能性があります。

そのため、異なるバージョンのBerkeley DBライブラリが同じ~/.vacation.{db,dir,pag}ファイルにアクセスするとデータが破損する可能性があります。

答え1

はい、あなたがvacation言った目的でBerkeley DBを使用するのは正しいです。

実際にはできる異なるバージョンのクライアントライブラリを使用して同じBerkeley DBファイルにアクセスしようとすると、問題が発生します。ディスク形式は随時変更され、アップグレードは通常クライアントアプリケーションによって透過的に処理されます(またはスクリプトを使用して手動でdb_upgrade)。データベースファイルがアップグレードされた後、以前のバージョンのクライアントライブラリを使用しているクライアントがアップグレードされたデータベースファイルにアクセスできるという保証はありません。これを念頭に置いて、vacation資産全体のバージョンを同期させることは、安全を確保するための慎重なステップです。

(マイナーかもしれませんが)別の問題があります。 NFSを介してBerkeley DBにアクセスすると、同時アクセスの問題が発生する可能性があります。よりよくある質問より多くの情報を知りたいです。vacation取引処理システムではないので大きな問題ではないかもしれませんね。

関連情報