This guide covers GDB debugging, running the server test suite, and contributing to VillageSQL. Start with Build from Source to get a working build before using this guide.Documentation Index
Fetch the complete documentation index at: https://villagesql.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Debugging with GDB
For development and troubleshooting, you can run VillageSQL under GDB: Linux:Running Tests
VillageSQL includes both unit tests and regression tests to verify functionality.Unit Tests
Run VillageSQL-specific unit tests (from within your build directory):Regression Tests
Change to the mysql-test directory:—suite vs —do-suite:
--suite=villagesqlruns only top-level villagesql tests--do-suite=villagesqlruns all tests including sub-suites (insert, select, stored_procedure, etc.)
Running Individual Tests
Run a specific test by name:Updating Test Results
If you’ve changed functionality and need to update expected test output:Test Portability
When test output includes paths from the test runner’s temp directory, add this directive inside your.test file so recorded results don’t contain absolute paths that break on other machines:
Debugging Test Failures
VillageSQL-specific log messages (emitted viaLogVSQL()) are suppressed by default. To surface them in the error log during a test run:
mysql-test/var/log/mysqld.1.err.
For writing extension regression tests, see the Development Guide.
Installing Binaries
To install VillageSQL system-wide (requires appropriate permissions):/usr/local/mysql/ by default. You can customize the installation prefix:

