Alexander Kukushkin and GitHub
90a4208390
Get rid from requests module ( #1296 )
...
It wasn't used for anything critical anyway, so it doesn't make a lot of sense to keep it as an explicit dependency.
2019-11-22 15:31:55 +01:00
Alexander Kukushkin and GitHub
0f666e69f3
Prefix system tables, views and functions with pg_catalog ( #845 )
...
and implement missing unit tests
2018-11-01 16:17:40 +01:00
Alexander Kukushkin and GitHub
3fee62c39b
BUGFIX: retry on boto exceptions never worked ( #450 )
...
because `boto.exception` is not an excpetion, but a python module.
+ increase retry timeout to 5 minutes
+ refactor unit-tests to cover the case with retries.
2017-06-16 10:27:03 +02:00
Alexander Kukushkin and GitHub
e3a01727a9
Implement missing tests and add pg-10 support to wale_restore( #446 )
...
in addition to that get rid from two modules and fix formatting of tests
2017-05-22 12:01:02 +02:00
Joar Wandborg and Alexander Kukushkin
3725b4bbcb
Add wal-e threshold logging ( #440 )
...
Add error log for threshold, so that you can see if thresholds were the reason for ExitCode.FAIL.
2017-05-19 16:28:29 +02:00
Joar Wandborg and Alexander Kukushkin
3241ec2504
Use csv.DictReader when parsing wal-e backup-list ( #436 )
...
wal-e outputs in CSV format using the 'excel-tab' dialect: https://github.com/wal-e/wal-e/blob/3164de68527e6ace269a2112291344b18b9ca6c5/wal_e/operator/backup.py#L63
The ISO date may be written with a space instead of'T' as delimiter between date
and time, this causes the old parsing to fail.
2017-04-27 14:33:22 +02:00
Oleksii Kliukin and GitHub
875e450ff8
Retry when tagging EC2 and EBS with Postgres roles. ( #418 )
...
Retry if an error happens when setting Role or Name tags for the
EC2 instances or EBS volumes. The maximum retry interval is 15 seconds.
2017-03-24 16:51:24 +01:00
Alexander Kukushkin and GitHub
0443844f65
Make it possible to compare xlog location against replica ( #396 )
2017-02-16 17:07:34 +01:00
Oleksii Kliukin and GitHub
cffc7d8dc5
Fix flake8 warnings, release 1.2 ( #364 )
2016-12-13 11:07:37 +01:00
Alexander Kukushkin and GitHub
1e984c3f00
Take a max from xlog_receive and xlog_replay ( #363 )
2016-12-12 16:27:36 +01:00
Oleksii Kliukin and GitHub
b38d98a6a3
Fix the WAL-E restore ( #359 )
...
* Fix broken WAL directory symlinks after WAL-E restore.
* Add unit-tests for wale_restore.
* Reduce the amount of MagicMock to the one (for psycopg2.connect)
* Make WAL-E restore process more robuts.
Allow retries only on WAL-E failures.
Sleep after each attempt
* Update the tests.
* Change WAL-E behavior when master is absent, tests.
- Challenge the use of WAL-E even when 'no_master' flag is set. This flag in
fact does not indicate that the master is absent. In order to check the master
absense the script looks whether the connection string is not empty.
- Retry on a failure to fetch current xlog position from the master. The reason
it has to be separate from retries in the main loop is that we don't just
retry the connection attempt, but also make a decision when either it was
successfull or all attempts are exhausted.
- Remove wrong usages of ProperyMocks from the tests.
* Avoid redundant output of the exception message in logger.exception
* Address issues uncovered by flake8
2016-12-06 17:01:40 +01:00
Alexander Kukushkin and GitHub
37b020e7a3
Various bugfixes and improvements: ( #346 )
...
* Replace pytz.UTC with dateutil.tz.tzutc, it helps to reduce memory by more than 4Mb...
* fix check of python version: 0x0300000 => 0x3000000
* Update leader key before restart and demote
2016-11-04 18:42:56 +02:00
Feike Steenbergen
ebf64828e1
Decode output from wal-e list backup
...
When running this script using Python3, the output is bytestring instead of string.
We explicitly decode it to ensure checks further down are ok.
The trigger for this patch is:
ERROR: unable to get some of WALE backup parameters: 'expanded_size_bytes'
2016-09-02 16:37:06 +02:00
Alexander Kukushkin
bd1e658080
Bugfix: obviously sys.hexversion was one symbol shorter
...
plus remove some unneeded code
2016-06-17 12:18:41 +02:00
Alexander Kukushkin
d3c2b8b2aa
replace unused variables with _
2016-03-11 15:18:58 +01:00
Alexander Kukushkin
b973ed7e4f
improve test coverage
2016-02-12 16:52:26 +01:00
Alexander Kukushkin
ab0ef91f24
Improve quality of code by resolving issues found by quantifiedcode and codacy
2016-02-12 14:52:23 +01:00
Alexander Kukushkin
df9b8fed2e
Improve quality of code by resolving issues found by quantifiedcode and codacy
2016-02-12 12:23:49 +01:00
Oleksii Kliukin
78f0b7e681
Add main() function inside the scripts/
...
We need this in order to install those scripts via pip.
2015-11-25 16:07:13 +01:00
Oleksii Kliukin
daf2a2686b
Merge branch 'pgexperts-restore/movebasebackup' of https://github.com/zalando/patroni into pgexperts-restore/movebasebackup
2015-11-24 15:22:44 +01:00
Oleksii Kliukin
35efd36c5c
Improve unittests and make minor bugfixes.
...
In particular, remove restore.py in favor of
wale_restore.py, fix minor bugs in the latter
and add unit tests.
2015-11-24 15:21:47 +01:00
Oleksii Kliukin
6c769554a3
Add -p 1 to an example restore_command in order to limit WAL-E to only a single thread
...
With out tests, the multi-threaded WAL fetch didn't work reliably with S3, resulting in stuck WAL-E processes.
2015-11-23 17:42:08 +01:00
Oleksii Kliukin
5370b46c65
Make sure WAL-E restore script returns 1 if criterias to use WAL-E were not met.
2015-11-23 15:27:15 +01:00
Oleksii Kliukin
4814e82055
Fix a typo and an error in calling subprocess.call.
2015-11-20 17:55:51 +01:00
Oleksii Kliukin
7bc5ed7e4d
Small fixes and an executable bit for wale script.
2015-11-18 18:03:38 +01:00
Josh Berkus
30aa83c5b2
Fixed failing tests, pep8 issues.
2015-11-02 17:51:01 -08:00
Josh Berkus
e7a0ce57aa
Fixes, changes per discussion on pull request. Fixed logic path errors in postgresql.py. Cleaned up and shortened wale_restore.py. Reverted bad merge for YML files.
2015-10-28 14:55:42 -07:00
Josh Berkus
06cd94b12d
Commit addressing several issues around this branch. Major changes to wal_e_restore script. Updated postgres0.yml to show example options.
2015-10-27 17:35:44 -07:00
Oleksii Kliukin
b223319183
use the PATH to get the python interpreter path for the scripts.
2015-09-30 18:00:28 +02:00
Feike Steenbergen
04d6f7b418
Make scripts into a module, so it can be imported.
2015-09-03 10:34:37 +02:00
Feike Steenbergen
b1afd5ddc4
Refactoring to enable package building and succesfull installation of the Patroni package.
...
Build the first packages of patroni and added them to pypi.python.org
Update Dockerfile to use pip to install patroni.
2015-09-03 09:52:01 +02:00
Feike Steenbergen
e96265e4d1
Make Patroni suitable for packaging.
...
- Restructured the repository: Moved patroni into its own directory.
- Changed readme into reStructuredText
2015-09-01 17:05:05 +02:00