Skip to content

Commit b829d27

Browse files
committed
sysbench: add postgresql native TPS variablity support
Add PostgreSQL TPS variability benchmark support. Reviewed-by: Luis Chamberlain <[email protected]> Acked-by: Luis Chamberlain <[email protected]> Signed-off-by: Daniel Gomez <[email protected]>
1 parent 735a32f commit b829d27

File tree

8 files changed

+2667
-2
lines changed

8 files changed

+2667
-2
lines changed

playbooks/roles/sysbench/defaults/main.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,18 @@ sysbench_docker_telemetry_path: "/data/sysbench-telemetry"
5555

5656
sysbench_disable_doublewrite_auto: False
5757
sysbench_disable_doublewrite_always: False
58+
59+
sysbench_type_postgresql_native: false
60+
61+
sysbench_postgresql_repo_path: "{{ data_path }}/postgresql"
62+
sysbench_postgresql_pgdata: "{{ sysbench_mnt }}/postgresql"
63+
sysbench_postgresql_logfile: "{{ sysbench_mnt }}/postgresql/postgresql.log"
64+
sysbench_postgresql_configuration: postgresql-conf-default.conf
65+
sysbench_postgresql_user: postgres
66+
67+
# pg_controldata
68+
# https://www.postgresql.org/docs/current/app-pgcontroldata.html
69+
sysbench_postgresql_controldata_logfile: "{{ sysbench_telemetry_path }}/controldata.log"
70+
71+
sysbench_disable_full_page_writes_auto: false
72+
sysbench_disable_full_page_writes_always: false

playbooks/roles/sysbench/tasks/install-deps/debian/main.yml

Lines changed: 62 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,65 @@
2626
- locales
2727
- rsync
2828
state: present
29-
update_cache: yes
30-
tags: [ 'deps' ]
29+
update_cache: true
30+
tags: ['deps']
31+
when: 'sysbench_type_mysql_docker|bool'
32+
33+
- name: Install PosgreSQL build deps
34+
tags: ['deps']
35+
become: true
36+
become_method: sudo
37+
ansible.builtin.apt:
38+
name:
39+
- bison
40+
- build-essential
41+
- flex
42+
- git
43+
- libicu-dev
44+
- libreadline-dev
45+
- pkgconf
46+
- sysbench
47+
- zlib1g-dev
48+
state: present
49+
update_cache: true
50+
when: 'sysbench_type_postgresql_native|bool'
51+
52+
# acl - Required for running Ansible with unpriviledge user (sysbench_postgresql_user)
53+
# https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_privilege_escalation.html#risks-of-becoming-an-unprivileged-user
54+
- name: Install PosgreSQL runtime deps
55+
tags: ['deps']
56+
become: true
57+
become_method: sudo
58+
ansible.builtin.apt:
59+
name:
60+
- acl
61+
- xfsprogs
62+
- nvme-cli
63+
state: present
64+
update_cache: true
65+
when: 'sysbench_type_postgresql_native|bool'
66+
67+
- name: Install sysbench deps
68+
tags: ['deps']
69+
become: true
70+
become_method: sudo
71+
ansible.builtin.apt:
72+
name:
73+
- locales
74+
- rsync
75+
state: present
76+
update_cache: true
77+
when: 'sysbench_type_postgresql_native|bool'
78+
79+
- name: Install plot deps
80+
tags: ['deps']
81+
become: true
82+
become_method: sudo
83+
delegate_to: localhost
84+
ansible.builtin.apt:
85+
name:
86+
- python3-pandas
87+
- python3-seaborn
88+
state: present
89+
update_cache: true
90+
when: 'sysbench_type_postgresql_native|bool'

0 commit comments

Comments
 (0)