{"version":3,"term":{"cols":120,"rows":30,"type":"xterm-256color","version":"iTerm2 3.5.14","theme":{"fg":"#697a82","bg":"#fcf7e5","palette":"#163540:#cb4238:#89982d:#ae8b2c:#4689cd:#c34380:#519f98:#ede9d7:#0d2a34:#bc5329:#5c6d74:#697a82:#869496:#6d71bf:#96a1a1:#fcf7e5"}},"timestamp":1768184496,"idle_time_limit":0.5,"title":"pgsql-svc","env":{"SHELL":"/bin/bash"}}
[0.013, "o", "\u001b[?2004h\u001b]0;vonng@vonng-aimax: ~/pigsty\u0007\u001b[01;32mvonng@vonng-aimax\u001b[00m:\u001b[01;34m~/pigsty\u001b[00m$ "]
[0.439, "o", "b"]
[0.087, "o", "i"]
[0.068, "o", "n"]
[0.065, "o", "/"]
[0.166, "o", "p"]
[0.074, "o", "g"]
[0.087, "o", "s"]
[0.148, "o", "q"]
[0.045, "o", "l"]
[0.177, "o", "-"]
[0.116, "o", "s"]
[0.130, "o", "v"]
[0.201, "o", "c"]
[0.174, "o", " "]
[0.174, "o", "p"]
[0.131, "o", "g"]
[0.107, "o", "-"]
[0.134, "o", "t"]
[0.070, "o", "e"]
[0.043, "o", "s"]
[0.070, "o", "t"]
[0.093, "o", "\r\n\u001b[?2004l\r"]
[0.004, "o", "\u001b[0;35m[EXECUTE] ===========================================\u001b[0m\r\n[\u001b[0;33mWARN\u001b[0m] \u001b[0;33mreload pgsql services for 'pg-test'\u001b[0m\r\n\u001b[0;34m$ ./pgsql.yml -l 'pg-test' -t pg_service\u001b[0m\r\n"]
[0.275, "o", "\r\nPLAY [PGSQL] ***********************************************************************************************************\r\n"]
[0.021, "o", "\r\nTASK [node_id : get node fact] *****************************************************************************************\r\n"]
[0.191, "o", "\u001b[0;33mchanged: [10.10.10.12]\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.11]\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [node_id : set node fact] *****************************************************************************************\r\n"]
[0.017, "o", "\u001b[0;32mok: [10.10.10.11]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;32mok: [10.10.10.12]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;32mok: [10.10.10.13]\u001b[0m\r\n"]
[0.000, "o", "\r\nTASK [node_id : fill empty nodename with hostname] *********************************************************************\r\n"]
[0.017, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [node_id : build node identity] ***********************************************************************************\r\n"]
[0.021, "o", "\u001b[0;32mok: [10.10.10.12]\u001b[0m\r\n"]
[0.001, "o", "\u001b[0;32mok: [10.10.10.11]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;32mok: [10.10.10.13]\u001b[0m\r\n"]
[0.003, "o", "\r\nTASK [node_id : load roles/node_id/vars/u24.x86_64.yml] ****************************************************************\r\n"]
[0.015, "o", "\u001b[0;32mok: [10.10.10.11]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;32mok: [10.10.10.12]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;32mok: [10.10.10.13]\u001b[0m\r\n"]
[0.002, "o", "\r\nTASK [node_id : fallback to u24.x86_64.yml if u24.x86_64.yml not exists] ***********************************************\r\n"]
[0.006, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.000, "o", "\r\nTASK [node_id : print node identity] ***********************************************************************************\r\n"]
[0.019, "o", "\u001b[0;32mok: [10.10.10.11] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"nodename: pg-test-1, node_cluster: pg-test, spec: c4m8, os: ubuntu.24.x86_64 u24:deb,   [PGSQL: pg-test] [REDIS: redis-meta]    \"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;32mok: [10.10.10.12] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"nodename: pg-test-2, node_cluster: pg-test, spec: c4m8, os: ubuntu.24.x86_64 u24:deb,   [PGSQL: pg-test] [REDIS: redis-test]    \"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;32mok: [10.10.10.13] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"nodename: pg-test-3, node_cluster: pg-test, spec: c4m8, os: ubuntu.24.x86_64 u24:deb,   [PGSQL: pg-test] [REDIS: redis-test]    \"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pg_id : get pgsql identity] **************************************************************************************\r\n"]
[0.123, "o", "\u001b[0;32mok: [10.10.10.11]\u001b[0m\r\n"]
[0.004, "o", "\u001b[0;32mok: [10.10.10.13]\u001b[0m\r\n"]
[0.004, "o", "\u001b[0;32mok: [10.10.10.12]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pg_id : build pgsql identity] ************************************************************************************\r\n"]
[0.103, "o", "\u001b[0;32mok: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\u001b[0;32mok: [10.10.10.11]\u001b[0m\r\n\u001b[0;32mok: [10.10.10.12]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pg_id : print pgsql identity] ************************************************************************************\r\n"]
[0.079, "o", "\u001b[0;32mok: [10.10.10.12] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"  [replica] pg-test-2 @ 10.10.10.12 , ins = pg-test-2 , cls = pg-test , REPLICATE PRIMARY pg-test-1 @ 10.10.10.11 -> pg-test-2   , postgres://10.10.10.12:5432/postgres\"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;32mok: [10.10.10.13] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"  [replica] pg-test-3 @ 10.10.10.13 , ins = pg-test-3 , cls = pg-test , REPLICATE PRIMARY pg-test-1 @ 10.10.10.11 -> pg-test-3  [OFFLINE]  , postgres://10.10.10.13:5432/postgres\"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.005, "o", "\u001b[0;32mok: [10.10.10.11] => {\u001b[0m\r\n\u001b[0;32m    \"msg\": \"  [primary] pg-test-1 @ 10.10.10.11 , ins = pg-test-1 , cls = pg-test ,  CLUSTER LEADER @ pg-test-1    , postgres://10.10.10.11:5432/postgres\"\u001b[0m\r\n\u001b[0;32m}\u001b[0m\r\n"]
[0.002, "o", "\r\nTASK [pgsql : wipe existing postgres haproxy service from local haproxy] ***********************************************\r\n"]
[0.124, "o", "\u001b[0;33mchanged: [10.10.10.12]\u001b[0m\r\n"]
[0.004, "o", "\u001b[0;33mchanged: [10.10.10.13]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;33mchanged: [10.10.10.11]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pgsql : render haproxy service config on local haproxy] **********************************************************\r\n"]
[0.429, "o", "\u001b[0;33mchanged: [10.10.10.13] => (item={'name': 'primary', 'port': 5433, 'dest': 'default', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.12] => (item={'name': 'primary', 'port': 5433, 'dest': 'default', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.11] => (item={'name': 'primary', 'port': 5433, 'dest': 'default', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.281, "o", "\u001b[0;33mchanged: [10.10.10.11] => (item={'name': 'replica', 'port': 5434, 'dest': 'default', 'check': '/read-only', 'selector': '[]', 'backup': '[? pg_role == `primary` || pg_role == `offline` ]'})\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;33mchanged: [10.10.10.13] => (item={'name': 'replica', 'port': 5434, 'dest': 'default', 'check': '/read-only', 'selector': '[]', 'backup': '[? pg_role == `primary` || pg_role == `offline` ]'})\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.12] => (item={'name': 'replica', 'port': 5434, 'dest': 'default', 'check': '/read-only', 'selector': '[]', 'backup': '[? pg_role == `primary` || pg_role == `offline` ]'})\u001b[0m\r\n"]
[0.276, "o", "\u001b[0;33mchanged: [10.10.10.12] => (item={'name': 'default', 'port': 5436, 'dest': 'postgres', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.13] => (item={'name': 'default', 'port': 5436, 'dest': 'postgres', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;33mchanged: [10.10.10.11] => (item={'name': 'default', 'port': 5436, 'dest': 'postgres', 'check': '/primary', 'selector': '[]'})\u001b[0m\r\n"]
[0.278, "o", "\u001b[0;33mchanged: [10.10.10.13] => (item={'name': 'offline', 'port': 5438, 'dest': 'postgres', 'check': '/replica', 'selector': '[? pg_role == `offline` || pg_offline_query ]', 'backup': '[? pg_role == `replica` && !pg_offline_query]'})\u001b[0m\r\n"]
[0.001, "o", "\u001b[0;33mchanged: [10.10.10.12] => (item={'name': 'offline', 'port': 5438, 'dest': 'postgres', 'check': '/replica', 'selector': '[? pg_role == `offline` || pg_offline_query ]', 'backup': '[? pg_role == `replica` && !pg_offline_query]'})\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;33mchanged: [10.10.10.11] => (item={'name': 'offline', 'port': 5438, 'dest': 'postgres', 'check': '/replica', 'selector': '[? pg_role == `offline` || pg_offline_query ]', 'backup': '[? pg_role == `replica` && !pg_offline_query]'})\u001b[0m\r\n"]
[0.003, "o", "\r\nTASK [pgsql : check local haproxy config before reload] ****************************************************************\r\n"]
[0.163, "o", "\u001b[0;33mchanged: [10.10.10.11]\u001b[0m\r\n\u001b[0;33mchanged: [10.10.10.13]\u001b[0m\r\n"]
[0.004, "o", "\u001b[0;33mchanged: [10.10.10.12]\u001b[0m\r\n"]
[0.000, "o", "\r\nTASK [pgsql : reload local haproxy] ************************************************************************************\r\n"]
[0.588, "o", "\u001b[0;33mchanged: [10.10.10.13]\u001b[0m\r\n"]
[0.013, "o", "\u001b[0;33mchanged: [10.10.10.12]\u001b[0m\r\n"]
[0.007, "o", "\u001b[0;33mchanged: [10.10.10.11]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pgsql : wipe existing postgres service from remote haproxy] ******************************************************\r\n"]
[0.007, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.003, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pgsql : render haproxy service on remote haproxy] ****************************************************************\r\n"]
[0.007, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.001, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pgsql : check remote haproxy config before reload] ***************************************************************\r\n"]
[0.007, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.001, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.001, "o", "\r\nTASK [pgsql : reload remote haproxy] ***********************************************************************************\r\n"]
[0.007, "o", "\u001b[0;36mskipping: [10.10.10.11]\u001b[0m\r\n"]
[0.000, "o", "\u001b[0;36mskipping: [10.10.10.12]\u001b[0m\r\n"]
[0.002, "o", "\u001b[0;36mskipping: [10.10.10.13]\u001b[0m\r\n"]
[0.004, "o", "\r\nPLAY RECAP *************************************************************************************************************\r\n"]
[0.000, "o", "\u001b[0;33m10.10.10.11\u001b[0m                : \u001b[0;32mok=12  \u001b[0m \u001b[0;33mchanged=5   \u001b[0m unreachable=0    failed=0    \u001b[0;36mskipped=6   \u001b[0m rescued=0    ignored=0   \r\n"]
[0.000, "o", "\u001b[0;33m10.10.10.12\u001b[0m                : \u001b[0;32mok=12  \u001b[0m \u001b[0;33mchanged=5   \u001b[0m unreachable=0    failed=0    \u001b[0;36mskipped=6   \u001b[0m rescued=0    ignored=0   \r\n"]
[0.000, "o", "\u001b[0;33m10.10.10.13\u001b[0m                : \u001b[0;32mok=12  \u001b[0m \u001b[0;33mchanged=5   \u001b[0m unreachable=0    failed=0    \u001b[0;36mskipped=6   \u001b[0m rescued=0    ignored=0   \r\n\r\n"]
[0.060, "o", "\u001b[0;35m[SUMMARY] ===========================================\u001b[0m\r\n[\u001b[0;32m OK \u001b[0m] \u001b[0;32mreload pgsql services for pg-test complete!\u001b[0m\r\n\u001b[0;34mcheck haproxy admin page: http://i.pigsty/haproxy/pg-test-n/\u001b[0m\r\n"]
[0.000, "o", "\u001b[?2004h\u001b]0;vonng@vonng-aimax: ~/pigsty\u0007\u001b[01;32mvonng@vonng-aimax\u001b[00m:\u001b[01;34m~/pigsty\u001b[00m$ "]
[1.287, "o", "\u001b[?2004l\r\r\n"]
[0.000, "o", "exit\r\n"]
[0.001, "x", "0"]
