Christian Kruse
98b1f8d28a
rather big refactoring: use a naming scheme
...
In the past naming of functions, variables and such didn't really have a
naming scheme. Now they should have.
2014-03-06 18:34:40 +01:00
Christian Kruse
9eba986833
avoid usage of snprintf()
...
We have a nice little abstraction for snprintf with covering the case
that a string is too big for the target buffer – let's use that!
2014-03-06 18:34:40 +01:00
Christian Kruse
164cf9d08f
completely avoid usage of strnlen()
2014-03-06 18:34:40 +01:00
Christian Kruse
d8b8bf0e2a
pg_indent'ing all files…
2014-03-06 18:34:40 +01:00
Warren Moore
7e55ce737d
fix: store the master connection user name on standby follow
2014-03-05 16:49:56 +00:00
Christian Kruse
c3b58658ad
fixing repmgr repl_status columns
...
repmgr repl_status had the column time_lag which was documented to be
the time a standby is behind master. In fact it only works like this
when viewed on the standby and not on the master: there it only was the
time of the last status update. We dropped that column and replaced it
by a new column „communication_time_lag“ which is the content of the
repl_status column on the master. On the standby we contain the time of
the last update in shared mem though refer always to the correct time
nonetheless where repl_status is queried. We also added a new column,
„replication_time_lag“, which refers to the apply delay.
2014-02-15 01:35:27 +01:00
Christian Kruse
c4ac2d3343
fixing PQexec() calls
...
fixing several calls where we did not check the result status but only
the return value; the query may fail nonetheless
2014-02-15 01:27:53 +01:00
Christian Kruse
ca470647cb
cleanup of usage text
...
Now it properly aligns and breaks at 78 characters.
2014-01-30 14:26:17 +01:00
Christian Kruse
701cf043fd
fix: seems as if I missread -hackers
2014-01-23 16:46:49 +01:00
Christian Kruse
bbb67c55f6
simple past of set is set
2014-01-23 10:50:37 +01:00
Christian Kruse
680f23fb1d
copyright push
2014-01-23 10:37:49 +01:00
Christian Kruse
1159113c58
ignore the dynamic shared memory directory, too
2014-01-23 10:02:32 +01:00
Christian Kruse
0fdcce0477
use if instead of switch and avoid a warning
2014-01-22 15:12:29 +01:00
Christian Kruse
f2a0b31a20
more log format fixes
2014-01-22 14:30:24 +01:00
Christian Kruse
d235c696af
fix: do not newline at the start of a log line
...
This breaks the log file format since it will have a line break directly
after the timestamp
2014-01-22 11:47:02 +01:00
Christian Kruse
c81793b63f
fix: added forgotten options.priority value
...
Patch by Marco Nenciarini <mnencia@debian.org >
2014-01-21 14:18:12 +01:00
Christian Kruse
9563877fbb
new config option, stdout/stdin closed
...
Now stdin and stdout get closed. Additionally stderr gets closed and
reopened to the new config option „logfile“ if specified
2014-01-16 15:22:34 +01:00
Christian Kruse
4f3bd6612c
do not exit in getMasterConnection()
2014-01-16 15:07:15 +01:00
Christian Kruse
192ee3cdb0
do not exit in get_cluster_size
2014-01-16 15:07:06 +01:00
Christian Kruse
6f149ead8f
do not exit in guc_setted and guc_setted_typed
2014-01-16 14:48:46 +01:00
Christian Kruse
77aa6aa326
do not exit in pg_version
2014-01-16 14:48:42 +01:00
Christian Kruse
4fabfbbbd0
fix: do not exit in is_standby()
...
Instead we now return an int with 0 meaning „not a standby,“ 1 meaning
„is a standby“ and -1 meaning „connection dropped“
2014-01-10 17:11:16 +01:00
Christian Kruse
a0fdadd5d2
this way it is much cleaner
2014-01-09 15:35:44 +01:00
Christian Kruse
4c3d7f80ed
now code compiles with -ansi -pedantic and has less warnings
2014-01-09 14:45:07 +01:00
Christian Kruse
6e3fe059d8
added config options pg_bindir and pg_ctl_options
2014-01-09 14:44:34 +01:00
Christian Kruse
9f26254ac3
fix: added some missing initializers to avoid compiler warning
2014-01-09 13:33:22 +01:00
Christian Kruse
d0f3cb59c7
fix: create data directory after sanity check
2014-01-07 14:42:55 +01:00
Christian Kruse
7428e92e10
fix: correctly check the return value of PQexec()
...
not only check if return value is not NULL but also check that the
returned result is a PGRES_COMMAND_OK (e.g. the INSERT was successful)
2014-01-07 14:27:31 +01:00
Christian Kruse
a97065113d
fix: remove own node earlier if force is set
...
We have to remove our own node before we check for a new master if force
is set; else master register would fail on the second time since there
already is a master (ourselves), even if we specify -F
2014-01-07 14:16:58 +01:00
Christian Kruse
9e2f276fcf
fix: do not exit after pg_start_backup() w/o pg_stop_backup()
2014-01-07 14:02:29 +01:00
Jaime Casanova
5e04ab6eae
Add a ssh_options parameter to allow ssh checking
...
to consider non-default values (ie: a different port)
Patch by Jay Taylor
2013-12-19 01:22:55 -05:00
Jaime Casanova
a1f4285e2b
Add guc_setted_typed() function to allow
...
wal_keep_segmeents to be checked as an integer instead
of text
Patch by Jay Taylor
2013-12-19 01:22:42 -05:00
Jaime Casanova
8b370dc581
Fix some typos
...
Patch by Krzysztof Gajdemski
2013-12-07 13:25:46 -05:00
Jaime Casanova
43af00aa12
Ignore pg_log when cloning, just like we ignore pg_xlog
2013-12-04 01:23:48 -05:00
Jaime Casanova
49a2531930
Options -F -W -I -v doesn't accept arguments, which means that on
...
getopt_long shouldn't be marked with the colon (:) character.
This has been wrong since day one, so backpatching all the way until
1.1
2013-01-13 16:37:39 -05:00
Jaime Casanova
93a999adc7
Formatting code using astyle
2012-12-11 11:49:07 -05:00
Jaime Casanova
30e9d06172
Add an option for STANDBY FOLLOW to wait for a master to appear.
...
This is important for autofailover to do the right thing when
standbys detected master death at different times.
While this is a new option, seems important for the autofailover
to work properly so i will consider the lack of it a bug and
will backpatch to 2.0 where autofailover was introduced.
For gripe from Alex Railean, about a standby not finding the new
master because the new master hasn't finish promoting.
2012-11-14 15:09:26 -05:00
Jaime Casanova
499a501afd
Make repmgr compatible with FreeBSD.
...
We need to add an #include and make it use a different path for the
"true" binary.
Maybe we need to make this changes for all BSD systems but having no
evidence of that i prefer to make this only for systems with __FreeBSD__
2012-09-15 17:37:59 -05:00
Jaime Casanova
95ec0450da
When we have more command-line arguments than we should have we
...
need to show that last value and we should use only optind for that
instead of optind+1
2012-08-30 02:11:48 -05:00
Jaime Casanova
50b7147f15
Change Copyright date to cover 2012
2012-07-04 10:47:26 -05:00
Jaime Casanova
e3c3c22b6e
Improve the version message to actually show the repmgr version not
...
only postgresql's one
2012-06-25 22:54:48 -05:00
Jaime Casanova
861a3c8f22
Fix CLUSTER CLEANUP, it needs to establish a local connection in order
...
to look for the master
2012-06-16 01:32:59 -05:00
Jaime Casanova
e51870b504
Force to enter a password for the superuser in the witness, this is
...
in case we need to send a password to connect as stated in
master's pg_hba.conf.
2012-06-15 13:51:45 -05:00
Jaime Casanova
5651720560
Remove a variable left in last commit
2012-06-15 09:46:01 -05:00
Jaime Casanova
d32a6cdb24
Remove kludge added to create user and db for witness.
...
It's too fragile, almost always cause a "segment violation" and
don't seems to be very useful.
2012-06-15 09:41:54 -05:00
Jaime Casanova
9e10987b90
Fix a few bugs introduced when merging features
2012-06-15 09:40:09 -05:00
Jaime Casanova
64fce88e99
Add a CLUSTER CLEANUP command to clean monitor's history,
...
also include a --keep-history (-k) option to indicate how many
days of history to keep
2012-06-13 00:39:54 -05:00
Jaime Casanova
7a76f1998c
getMasterConnection() cannot avoid checking the same node that asks
...
to find the master.
This was a micro optimization based on the fact that all commands that
needed to detect the master were executed from the standby but now that
we have CLUSTER level commands that is not true anymore
2012-06-12 23:28:24 -05:00
Jaime Casanova
4db046a8ea
Allow repmgr to obtain tablespace's locations from pg 9.2 and later
...
in which we no longer have a spclocation column in pg_tablespaces
2012-06-12 11:08:15 -05:00
Jaime Casanova
331eca447a
STANDBY CLONE should be run by a SUPERUSER, otherwise we won't be able
...
to retrieve data_directory and the other parameters we need by
querying the database.
2012-06-12 09:42:50 -05:00