bojanserafimov
242af75653
Fix signal file parsing ( #2042 )
2022-07-06 13:45:02 -04:00
Arthur Petukhovsky
8fabdc6708
Add tests with concurrent computes.
...
Removes test_restart_compute, as added test_compute_restarts is stronger.
2022-07-06 18:07:29 +04:00
Alexander Bayandin
07df7c2edd
github/actions: fix storing perf data for main ( #2038 )
2022-07-06 13:15:15 +01:00
Kirill Bulatov
50821c0a3c
Return download stream directly from the remote storage API
2022-07-05 21:45:15 +03:00
Andrey Taranik
68adfe0fc8
inventory file fix for neon-stress env
2022-07-05 21:29:03 +04:00
Dmitry Rodionov
cfdf79aceb
harden create_empty_timeline
...
Reorder checks so it checks whether the timeline exists
before writing something to disk, possibly replacing valid content
2022-07-05 16:44:18 +03:00
bojanserafimov
32560e75d2
Enable relocation test ( #1974 )
2022-07-05 08:27:57 -04:00
Heikki Linnakangas
bb69e0920c
Do not overwrite an existing image layer.
...
See github issues #1594 and #1690
Co-authored-by: Konstantin Knizhnik <knizhnik@neon.tech >
2022-07-05 14:45:31 +03:00
Alexander Bayandin
05f6a1394d
Add tests for different Postgres client libraries ( #2008 )
...
* Add tests for different postgres clients
* test/fixtures: sanitize test name for test_output_dir
* test/fixtures: do not look for etcd before runtime
* Add workflow for testing Postgres client libraries
2022-07-05 12:22:58 +01:00
Heikki Linnakangas
844832ffe4
Bump vendor/postgres
...
Contains changes from two PRs in vendor/postgres:
- https://github.com/neondatabase/postgres/pull/163
- https://github.com/neondatabase/postgres/pull/176
2022-07-05 10:55:03 +03:00
bojanserafimov
d29c545b5d
Gc/compaction thread pool, take 2 ( #1933 )
...
Decrease the number of pageserver threads by running gc and compaction in a blocking tokio thread pool
2022-07-05 02:06:40 -04:00
Kirill Bulatov
6abdb12724
Fix 1.62 Clippy errors
2022-07-04 23:46:37 +03:00
Alexander Bayandin
7898e72990
Remove duplicated checks from LocalEnv
2022-07-04 22:35:00 +03:00
Dmitry Rodionov
65704708fa
remove unused imports, make more use of pathlib.Path
2022-07-01 18:56:51 +03:00
Arseny Sher
6100a02d0f
Prefix WAL files in s3 with environment name.
...
It wasn't merged to prod yet, so safe to enable.
2022-07-01 19:21:28 +04:00
Arseny Sher
97fed38213
Fix cadaca010c for older ssh clients.
2022-07-01 19:20:59 +04:00
Arseny Sher
cadaca010c
Make ansible to work with storage nodes through teleport from local box.
2022-07-01 16:58:34 +03:00
Bojan Serafimov
f09c09438a
Fix gc after import
2022-07-01 11:10:49 +03:00
Dmitry Rodionov
00fc696606
replace extra urlencode dependency with already present url library
2022-06-30 14:32:15 +03:00
Kirill Bulatov
1d0706cf25
Fix walreceiver connection selection mechanism
...
* Avoid reconnecting to safekeeper immediately after its failure by limiting candidates to those with fewest connection attempts. Thus we don't have to wait lagging_wal_timeout (10s by default) before switch happens even if no new changes are generated, and current test_restarts_under_load expects some commits to happen within 4s.
* Make default max_lsn_wal_lag larger, otherwise we constant reconnections happen during normal work.
* Fix wal_connection_attempts maintanance, preventing busy loop of reconnections.
2022-06-30 00:40:12 +03:00
Dmitry Ivanov
5ee19b0758
Fix bloated coverage uploads ( #2005 )
...
Move coverage data to a better directory, merge it better and don't publish it from CircleCI pipeline
2022-06-29 17:59:19 +03:00
Kirill Bulatov
cef90d9220
Disable cachepot for GH Actions builds ( #2007 )
2022-06-29 17:56:02 +03:00
Kirill Bulatov
4a05413a4c
More code coverage fixes in GH Actions ( #2002 )
2022-06-27 22:40:20 +03:00
Kirill Bulatov
dd61f3558f
Fix coverage upload credentials retrieval ( #2001 )
2022-06-27 20:41:09 +03:00
Kirill Bulatov
8a714f1ebf
Add coverage to GH actions and rework part of them ( #1987 )
2022-06-27 19:15:56 +03:00
Arseny Sher
137291dc24
Push to etcd from safekeeper many timelines concurrently.
...
Mitigates latency fee, making push throughput 1-1.5 order of magnitude bigger.
Also make leases per timeline, not per whole safekeeper, avoiding storing
garbage in etcd for deleted timelines while safekeeper is alive.
2022-06-27 16:30:21 +03:00
Kirill Bulatov
eb8926083e
Use the updated base build Docker image ( #1972 )
2022-06-27 13:12:58 +03:00
Johan Eliasson
26bca6ddba
Add openssl to OSX dependencies ( #1994 )
2022-06-26 21:54:07 +03:00
Arthur Petukhovsky
55192384c3
Fix zero timeline_start_lsn ( #1981 )
...
* Fix zero timeline_start_lsn
* Log more info on control file upgrade
* Fix formatting
Co-authored-by: Anastasia Lubennikova <anastasia@neon.tech >
2022-06-24 13:59:37 +03:00
KlimentSerafimov
392cd8b1fc
Refactored extracting project_name in console.rs. ( #1982 )
2022-06-24 05:57:33 -04:00
Alexey Kondratov
3cc531d093
Fix CREATE EXTENSION for non-db-owner users ( #1408 )
...
Previously, we were granting create only to db owner, but now we have a
dedicated 'web_access' role to connect via web UI and proxy link auth.
We anyway grant read / write all data to all roles, so let's grant
create to everyone too. This creates some provelege objects in each db,
which we need to drop before deleting the role. So now we reassign all
owned objects to each db owner before deletion. This also fixes deletion
of roles that created some data in any db previously. Will be tested by
https://github.com/neondatabase/cloud/pull/1673
Later we should stop messing with Postgres ACL that much.
2022-06-23 21:36:53 +02:00
bojanserafimov
84b9fcbbd5
Increase a few test timeouts ( #1977 )
2022-06-23 11:51:56 -04:00
Bojan Serafimov
93e050afe3
Don't require project name for link auth
2022-06-23 15:38:05 +03:00
Anastasia Lubennikova
6d7dc384a5
Add zenith-us-stage-ps-3 to deploy
2022-06-23 14:52:32 +03:00
Anastasia Lubennikova
3c2b03cd87
Update timeline size on dropdb. Add the test ( #1973 )
...
In addition, fix database size calculation:
count not only main fork of the relation, but also vm and fsm.
2022-06-23 12:28:12 +03:00
Kirill Bulatov
7c49abe7d1
Rework etcd timeline updates and their handling
2022-06-23 09:11:27 +03:00
KlimentSerafimov
d059e588a6
Added invariant check for project name. ( #1921 )
...
Summary: Added invariant checking for project name. Refactored ClientCredentials and TlsConfig.
* Added formatting invariant check for project name:
**\forall c \in project_name . c \in [alnum] U {'-'}.
** sni_data == <project_name>.<common_name>
* Added exhaustive tests for get_project_name.
* Refactored TlsConfig to contain common_name : Option<String>.
* Refactored ClientCredentials construction to construct project_name directly.
* Merged ProjectNameError into ClientCredsParseError.
* Tweaked proxy tests to accommodate refactored ClientCredentials construction semantics.
* [Pytests] Added project option argument to test_proxy_select_1.
* Removed project param from Api since now it's contained in creds.
* Refactored &Option<String> -> Option<&str>.
Co-authored-by: Dmitrii Ivanov <dima@neon.tech >.
2022-06-22 09:34:24 -04:00
Sergey Melnikov
6222a0012b
Migrate from CircleCI to Github Actions: python codestyle, build and tests ( #1647 )
...
Duplicate postgres and neon build and test jobs from CircleCI to Github actions.
2022-06-22 11:40:59 +03:00
bojanserafimov
1ca28e6f3c
Import basebackup into pageserver ( #1925 )
...
Allow importing basebackup taken from vanilla postgres or another pageserver via psql copy in protocol.
2022-06-21 11:04:10 -04:00
Arthur Petukhovsky
6c4d6a2183
Remove timeline_start_lsn check temporary. ( #1964 )
2022-06-21 02:02:24 +03:00
Thang Pham
37465dafe3
Add wal backpressure tests ( #1919 )
...
Resolves #1889 .
This PR adds new tests to measure the WAL backpressure's performance under different workloads.
## Changes
- add new performance tests in `test_wal_backpressure.py`
- allow safekeeper's fsync to be configurable when running tests
2022-06-20 11:40:55 -04:00
Joshua D. Drake
ec0064c442
Small README.md changes ( #1957 )
...
* Update make instructions for release and debug build. Update PostgreSQL glossary to proper version (14)
* Continued cleanup of build instructions including removal of redundancies
2022-06-20 10:05:10 -04:00
Heikki Linnakangas
83c7e6ce52
Bump vendor/postgres.
...
This brings in the change to not use a shared memory in the WAL redo
process, to avoid running out of sysv shmem segments in the page server.
Also, removal of callmemaybe bits.
2022-06-20 15:28:43 +03:00
Arthur Petukhovsky
f862373ac0
Fix WAL timeout in test_s3_wal_replay ( #1953 )
2022-06-17 20:43:54 +03:00
Arthur Petukhovsky
699f46cd84
Download WAL from S3 if it's not available in safekeeper dir ( #1932 )
...
`send_wal.rs` and `WalReader` are now async. `test_s3_wal_replay` checks that WAL can be replayed after offloaded.
2022-06-17 15:33:39 +03:00
Anastasia Lubennikova
36ee182d26
Implement page servise 'fullbackup' endpoint ( #1923 )
...
* Implement page servise 'fullbackup' endpoint that works like basebackup, but also sends relational files
* Add test_runner/batch_others/test_fullbackup.py
Co-authored-by: bojanserafimov <bojan.serafimov7@gmail.com >
2022-06-16 14:07:11 +03:00
Anastasia Lubennikova
d11c9f9fcb
Use random ports for the proxy and local pg in tests
...
Fixes #1931
Author: Dmitry Ivanov
2022-06-15 20:21:58 +03:00
Kirill Bulatov
d8a37452c8
Rename ZenithFeedback ( #1912 )
2022-06-11 00:44:05 +03:00
chaitanya sharma
e1336f451d
renamed .zenith data-dir to .neon.
2022-06-09 18:19:18 +02:00
Arseny Sher
a4d8261390
Save Postgres log in test_find_end_of_wal_* tests.
2022-06-09 19:16:43 +04:00