Re: Key management with tests
Bruce Momjian <bruce@momjian.us>
From: Bruce Momjian <bruce@momjian.us>
To: Stephen Frost <sfrost@snowman.net>
Cc: Masahiko Sawada <sawada.mshk@gmail.com>, Tom Kincaid <tomjohnkincaid@gmail.com>, Robert Haas <robertmhaas@gmail.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Andres Freund <andres@anarazel.de>, Amit Kapila <amit.kapila16@gmail.com>, Thomas Munro <thomas.munro@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Masahiko Sawada <masahiko.sawada@2ndquadrant.com>
Date: 2021-03-12T03:31:28Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Rethink method for assigning OIDs to the template0 and postgres DBs.
- 2cb1272445d2 15.0 landed
-
pg_upgrade: Preserve database OIDs.
- aa01051418f1 15.0 landed
-
pg_upgrade: Preserve relfilenodes and tablespace OIDs.
- 9a974cbcba00 15.0 landed
-
Fix for new Boolean node
- cf925936ecc0 15.0 cited
-
Improve error handling of HMAC computations
- 5513dc6a304d 15.0 cited
-
Add macro RelationIsPermanent() to report relation permanence
- 95d77149c535 14.0 landed
-
Enhance nbtree index tuple deletion.
- d168b666823b 14.0 cited
Attachments
- cfe-01-doc_over_master.diff.gz (application/gzip) patch
- cfe-02-internaldoc_over_cfe-01-doc.diff.gz (application/gzip) patch
- cfe-03-scripts_over_cfe-02-internaldoc.diff.gz (application/gzip) patch
- cfe-04-common_over_cfe-03-scripts.diff.gz (application/gzip) patch
- cfe-05-crypto_over_cfe-04-common.diff.gz (application/gzip) patch
- cfe-06-backend_over_cfe-05-crypto.diff.gz (application/gzip) patch
- cfe-07-bin_over_cfe-06-backend.diff.gz (application/gzip) patch
- cfe-08-pg_alterckey_over_cfe-07-bin.diff.gz (application/gzip) patch
- cfe-09-test_over_cfe-08-pg_alterckey.diff.gz (application/gzip) patch
- cfe-10-hint_over_cfe-09-test.diff.gz (application/gzip) patch
- cfe-11-persistent_over_cfe-10-hint.diff (text/x-diff)
I have made significant progress on the cluster file encryption feature so it is time for me to post a new set of patches. I went backward and forward on this patch. I went backward and created significant user and developer documentation for this feature. I went forward and added heap/index file encryption, so it actually does something useful. Patch ----- I have broken the patch into 13 parts, attached, which can be reviewed separately. However, to get a running system, you have to apply all the patches in order. The GitHub patch link has more details, has a combined patch link, and is updated regularly: https://wiki.postgresql.org/wiki/Transparent_Data_Encryption#Patches I have 13 questions about the patch's approach, marked with XXX comments. I hope to get these 13 patches into committable shape, but not commit them, and then continue on to WAL and temporary file encryption, and pg_basebackup changes. My hope is to have this full feature committed together early in the PG 15 development cycle. This progress would not be possible without critical work by Masahiko Sawada and Stephen Frost. Performance ----------- I have used pgbench to test the performance overhead of this feature. AES128 shows 2.5% overhead, and AES256 shows 3.5% overhead. My testing was done on this 16-core, 24MB, single SSD server: https://momjian.us/main/blogs/pgblog/2012.html#January_20_2012 My CPU supports AES acceleration. I made these configuration changes: shared_buffers = 6GB effective_io_concurrency = 256 effective_cache_size = 12GB checkpoint_completion_target = 0.9 max_wal_size = 3GB wal_compression = on I used a scale factor of 1000 (15GB database), with this invocation: pgbench --no-vacuum --protocol prepared --client 32 --jobs 16 --time 3600 I prewarmed the server via pg_prewarm and ran pgbench for an hour before using the results from another one-hour run. TPS was around 6.5k. For the default shared_buffers size of 128MB, I see 7% overhead. -- Bruce Momjian <bruce@momjian.us> https://momjian.us EDB https://enterprisedb.com The usefulness of a cup is in its emptiness, Bruce Lee