Tests
Suites
Latest Results
Search
Register
Login
Popular Tests
Timed Linux Kernel Compilation
7-Zip Compression
SVT-AV1
nginx
PostgreSQL
FFmpeg
Newest Tests
WarpX
Epoch
Valkey
Whisperfile
XNNPACK
GROMACS
Recently Updated Tests
Apache CouchDB
PostgreSQL
NAMD
Apache Cassandra
Opus Codec Encoding
ParaView
New & Recently Updated Tests
Recently Updated Suites
Database Test Suite
Machine Learning
Steam
New & Recently Updated Suites
Component Benchmarks
CPUs / Processors
GPUs / Graphics
OpenGL
Disks / Storage
Motherboards
File-Systems
Operating Systems
OpenBenchmarking.org
Corporate / Organization Info
Bug Reports / Feature Requests
PostgreSQL pgbench 1.5.1
pts/pgbench-1.5.1
- 09 June 2015 -
Hack up pgbench to let it run as root
downloads.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v5.8.0 (Belev)--> <PhoronixTestSuite> <Downloads> <Package> <URL>https://ftp.postgresql.org/pub/source/v9.4.3/postgresql-9.4.3.tar.bz2</URL> <MD5>05217e0921b51fb886e9e50875776bf1</MD5> <SHA256>734acfd2ac352dd0cd353d226f3199c2e1a2730200998aea5b38cf685136d755</SHA256> <FileSize>17618524</FileSize> </Package> </Downloads> </PhoronixTestSuite>
install.sh
#!/bin/sh version=9.4.3 tar -xjf postgresql-${version}.tar.bz2 rm -rf $HOME/pg_ mkdir -p $HOME/pg_/data/postgresql/extension/ touch $HOME/pg_/data/postgresql/extension/plpgsql.control # Junk up the root checking code so test profiles can easily run as root echo "diff -Naur postgresql-9.4.3.orig/contrib/pg_upgrade/option.c postgresql-9.4.3/contrib/pg_upgrade/option.c --- postgresql-9.4.3.orig/contrib/pg_upgrade/option.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-9.4.3/contrib/pg_upgrade/option.c 2015-06-09 20:15:18.401447066 -0400 @@ -95,8 +95,8 @@ } /* Allow help and version to be run as root, so do the test here. */ - if (os_user_effective_id == 0) - pg_fatal(\"%s: cannot be run as root\\\n\", os_info.progname); + //if (os_user_effective_id == 0) + // pg_fatal(\"%s: cannot be run as root\\\n\", os_info.progname); if ((log_opts.internal = fopen_priv(INTERNAL_LOG_FILE, \"a\")) == NULL) pg_fatal(\"cannot write to log file %s\\\n\", INTERNAL_LOG_FILE); diff -Naur postgresql-9.4.3.orig/src/bin/initdb/initdb.c postgresql-9.4.3/src/bin/initdb/initdb.c --- postgresql-9.4.3.orig/src/bin/initdb/initdb.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-9.4.3/src/bin/initdb/initdb.c 2015-06-09 20:21:57.424364326 -0400 @@ -794,7 +794,7 @@ { const char *username; -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) /* 0 is root's uid */ { fprintf(stderr, diff -Naur postgresql-9.4.3.orig/src/bin/pg_ctl/pg_ctl.c postgresql-9.4.3/src/bin/pg_ctl/pg_ctl.c --- postgresql-9.4.3.orig/src/bin/pg_ctl/pg_ctl.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-9.4.3/src/bin/pg_ctl/pg_ctl.c 2015-06-09 20:22:25.360273073 -0400 @@ -2129,7 +2129,7 @@ /* * Disallow running as root, to forestall any possible security holes. */ -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) { write_stderr(_(\"%s: cannot be run as root\\\n\" diff -Naur postgresql-9.4.3.orig/src/backend/main/main.c postgresql-9.4.3/src/backend/main/main.c --- postgresql-9.4.3.orig/src/backend/main/main.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-9.4.3/src/backend/main/main.c 2015-06-09 20:29:40.324604340 -0400 @@ -391,7 +391,7 @@ static void check_root(const char *progname) { -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) { write_stderr(\"\\\"root\\\" execution of the PostgreSQL server is not permitted.\\\n\" @@ -415,7 +415,6 @@ progname); exit(1); } -#else /* WIN32 */ if (pgwin32_is_admin()) { write_stderr(\"Execution of PostgreSQL by a user with administrative permissions is not\\\n\" " | patch -p0 cd postgresql-${version} ./configure --prefix=$HOME/pg_ --without-readline --without-zlib make -j $NUM_CPU_JOBS make -C contrib/pgbench all echo $? > ~/install-exit-status make install make -C contrib/pgbench install cd .. rm -rf postgresql-${version}/ rm -rf pg_/doc/ # initialize database with encoding and locale $HOME/pg_/bin/initdb -D $HOME/pg_/data/db --encoding=SQL_ASCII --locale=C echo "#!/bin/sh PGDATA=\$HOME/pg_/data/db/ PGPORT=7777 export PGDATA export PGPORT # start server pg_/bin/pg_ctl start -o '-c checkpoint_segments=8 -c autovacuum=false' # wait for server to start sleep 10 # create test db pg_/bin/createdb pgbench # set up tables case \$1 in \"BUFFER_TEST\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.003\" | bc\` ;; \"MOSTLY_CACHE\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.03\" | bc\` ;; \"ON_DISK\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.3\" | bc\` ;; esac pg_/bin/pgbench -i -s \$SCALING_FACTOR pgbench case \$2 in \"SINGLE_THREAD\") PGBENCH_ARGS=\"-c 1\" ;; \"NORMAL_LOAD\") PGBENCH_ARGS=\"-j \$NUM_CPU_CORES -c \$((\$NUM_CPU_CORES*4))\" ;; \"HEAVY_CONTENTION\") PGBENCH_ARGS=\"-j \$((\$NUM_CPU_CORES*2)) -c \$((\$NUM_CPU_CORES*32))\" ;; esac case \$3 in \"READ_WRITE\") PGBENCH_MORE_ARGS=\"\" ;; \"READ_ONLY\") PGBENCH_MORE_ARGS=\"-S\" ;; esac # run the test pg_/bin/pgbench \$PGBENCH_ARGS \$PGBENCH_MORE_ARGS -T 60 pgbench >\$LOG_FILE 2>&1 # drop test db pg_/bin/dropdb pgbench # stop server pg_/bin/pg_ctl stop" > pgbench chmod +x pgbench
results-definition.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v5.8.0 (Belev)--> <PhoronixTestSuite> <ResultsParser> <OutputTemplate>tps = #_RESULT_# (excluding connections establishing) TPS</OutputTemplate> <LineHint>excluding connections establishing</LineHint> </ResultsParser> </PhoronixTestSuite>
test-definition.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v5.8.0 (Belev)--> <PhoronixTestSuite> <TestInformation> <Title>PostgreSQL pgbench</Title> <AppVersion>9.4.3</AppVersion> <Description>This is a simple benchmark of PostgreSQL using pgbench.</Description> <ResultScale>TPS</ResultScale> <Proportion>HIB</Proportion> <Executable>pgbench</Executable> <TimesToRun>3</TimesToRun> </TestInformation> <TestProfile> <Version>1.5.1</Version> <SupportedPlatforms>Linux, MacOSX, Solaris</SupportedPlatforms> <SoftwareType>Benchmark</SoftwareType> <TestType>System</TestType> <License>Free</License> <Status>Verified</Status> <ExternalDependencies>build-utilities</ExternalDependencies> <EnvironmentSize>990</EnvironmentSize> <ProjectURL>http://www.postgresql.org/</ProjectURL> <InternalTags>SMP</InternalTags> <Maintainer>Michael Larabel</Maintainer> </TestProfile> <TestSettings> <Option> <DisplayName>Scaling</DisplayName> <Identifier>scaling-factor</Identifier> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Buffer Test</Name> <Value>BUFFER_TEST</Value> </Entry> <Entry> <Name>Mostly RAM</Name> <Value>MOSTLY_CACHE</Value> </Entry> <Entry> <Name>On-Disk</Name> <Value>ON_DISK</Value> </Entry> </Menu> </Option> <Option> <DisplayName>Test</DisplayName> <Identifier>run-test</Identifier> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Single Thread</Name> <Value>SINGLE_THREAD</Value> </Entry> <Entry> <Name>Normal Load</Name> <Value>NORMAL_LOAD</Value> </Entry> <Entry> <Name>Heavy Contention</Name> <Value>HEAVY_CONTENTION</Value> </Entry> </Menu> </Option> <Option> <DisplayName>Mode</DisplayName> <Identifier>run-mode</Identifier> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Read Write</Name> <Value>READ_WRITE</Value> </Entry> <Entry> <Name>Read Only</Name> <Value>READ_ONLY</Value> </Entry> </Menu> </Option> </TestSettings> </PhoronixTestSuite>