Testing patches to PostgreSQL is made possible with the Patch Lifecycle Manager (PLM.) PLM currently tracks PostgreSQL releases of 7.4 and later, as well as daily changes to the CVS tree automatically.
Here's a step-by-step process for creating and submitting a patch to test:
Here are further explanations of the parameters for DBT-2.
| Parameter | Description |
|---|---|
| -d |
Default: 3600 Set the duration of the test in seconds so the default is 3600 seconds, or 1 hour. |
| -f |
Default: ext2 Flag to set the filesystem used for the database. For example, enter 'ext3' to use ext3. You can also try 'reiserfs', 'xfs', or 'jfs'. 'reiser4' is also supported if the linux kernel selected supports it. |
| -m |
Default: (empty) Mount options to use for the filesystem. |
| -n |
Default: (unselected) Use zero thinktime for all transactions. Not recommended unless you know what this really means. |
| -o |
Default: (unselected) Flag to enable oprofile. Recommend selecting this in order to get profile data for PostgreSQL, as well as annoated assembly for the Linux kernel. |
| -p |
Default: (empty) Set database paramters. Value's must be enclosed in single-quotes ('). Recommend using as least '-c stats_start_collector=true -c stats_command_string=true -c stats_block_level=true -c stats_row_level=true -c stats_reset_on_server_start=true' in order to enable the collection of internal database statistics. |
| -r |
Default: 1 Number of time to repeat a test. The database does a drop and a reload from scratch. STP currently cancels all tests that are running for more then 10 hours. Keep in mind this includes the time it takes to generate datafiles, load the database, and post process data. |
| -v |
Default: (unselected) This enables verbose script output (bash set -x). Recommend selecting this in case we need to debug why a test failed. The scripts output is stored in the 'run-log.txt' file, which can be found under the 'Log Outputs' link from the test result's web page. |
| -w |
Default: 1 Set the scale factor used for the database. 200 is recommended for the 4-way systems. |
In the "Components Selection" portion of selecting a test, you can select a different of queries to execute with 'dbt3-pgsql-sql' but this hasn't been implemented yet.
Here are further explanations of the parameters for DBT-3.
| Parameter | Description |
|---|---|
| -e |
Default: (unselected) With this option selected the test will return statistical results of the SELECT statements executed instead of the query results. This is recommended in order to characterize what the database is really doing for each query executedin the test. |
| -n |
Default: (set to the number of cpu's on the system) The number of streams to use for the Throughput test. |
| -o |
Default: (unselected) Flag to enable oprofile. Recommend selecting this in order to get profile data for PostgreSQL, as well as annoated assembly for the Linux kernel. |
| -p |
Default: (empty) Set database paramters for the database load phase. Value's must be enclosed in single-quotes ('). Recommend using as least '-c stats_start_collector=true -c stats_command_string=true -c stats_block_level=true -c stats_row_level=true -c stats_reset_on_server_start=true' in order to enable the collection of internal database statistics. |
| -q |
Default: (empty) Same as for '-p', except for the Power Test phase. |
| -r |
Default: (empty) Same as for '-p', except for the Throughput Test phase. |
| -s |
Default: 1 Database scale factor. The test will generate raw data totalling to approximately this number of gigabytes. |
| -v |
Default: (unselected) This enables verbose script output (bash set -x). Recommend selecting this in case we need to debug why a test failed. The scripts output is stored in the 'run-log.txt' file, which can be found under the 'Log Outputs' link from the test result's web page. |