Skip to main content
このガイドでは、GDBを使用したデバッグ、サーバーテストスイートの実行、およびVillageSQLへの貢献について説明します。このガイドを使用する前に、ソースからのビルドを行い、動作するビルドを準備してください。

GDBを使用したデバッグ

開発およびトラブルシューティングのために、VillageSQLをGDBで実行できます。 Linux:
macOS:
GDB内:
MySQLデバッグの一般的なGDBコマンド:

テストの実行

VillageSQLには、機能を確認するためのユニットテストと回帰テストの両方が含まれています。

ユニットテスト

VillageSQL固有のユニットテストを(ビルドディレクトリ内から)実行します。
または、すべてのユニットテストを実行します。

回帰テスト

mysql-testディレクトリに移動します。
MySQLの完全なテストスイートを実行します(時間がかかります)。
VillageSQL固有のテストのみを実行します。
すべてのサブスイートを含むVillageSQLテストを実行します。
--suite--do-suite:
  • --suite=villagesqlは、最上位レベルのvillagesqlテストのみを実行します。
  • --do-suite=villagesqlは、サブスイート(insertselectstored_procedureなど)を含むすべてのテストを実行します。

個別のテストの実行

テスト名を指定して特定のテストを実行します。
サブスイートからテストを実行します。

テスト結果の更新

機能が変更され、期待されるテスト出力を更新する必要がある場合:
テスト記録: .resultファイルの変更は、常に確認し、バグではなく意図した動作を反映していることを確認してください。--recordフラグは、期待される出力を無条件に上書きします。

テストの移植性

テスト出力にテストランナーの一時ディレクトリからのパスが含まれている場合、.testファイル内に次のディレクティブを追加して、記録された結果に他のマシンで動作しなくなる絶対パスが含まれないようにします。

テスト失敗時のデバッグ

VillageSQL固有のログメッセージ(LogVSQL()を通じて出力される)は、デフォルトでは抑制されます。テスト実行中にエラーログに表示するには:
完全なエラーログは、mysql-test/var/log/mysqld.1.errにあります。 拡張回帰テストの作成については、開発ガイドを参照してください。

バイナリのインストール

VillageSQLをシステム全体にインストールするには(適切な権限が必要です)。
これにより、バイナリはデフォルトで/usr/local/mysql/にインストールされます。インストールプレフィックスをカスタマイズできます。

貢献

VillageSQLに貢献する場合は、貢献ガイドラインを参照して、コーディング標準と開発ワークフローを確認してください。