Re: making the backend's json parser work in frontend code
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: David Steele <david@pgmasters.net>
Cc: Andres Freund <andres@anarazel.de>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2020-01-16T20:44:37Z
Lists: pgsql-hackers
On Thu, Jan 16, 2020 at 1:58 PM David Steele <david@pgmasters.net> wrote: > To do page-level incrementals (which this feature is intended to enable) > the user will need to be able to associate full and incremental backups > and the only way I see to do that (currently) is to read the manifests, > since the prior backup should be stored there. I think this means that > parsing the manifest is not really optional -- it will be required to do > any kind of automation with incrementals. My current belief is that enabling incremental backup will require extending the manifest format either not at all or by adding one additional line with some LSN info. If we could foresee a need to store a bunch of additional *per-file* details, I'd be a lot more receptive to the argument that we ought to be using a more structured format like JSON. And it doesn't seem impossible that such a thing could happen, but I don't think it's at all clear that it actually will happen, or that it will happen soon enough that we ought to be worrying about it now. It's possible that we're chasing a real problem here, and if there's something we can agree on and get done I'd rather do that than argue, but I am still quite suspicious that there's no actually serious technical problem here. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Add jsonapi.c to Mkvcbuild.pm's @pgcommonallfiles.
- 006b9dcad419 13.0 landed
-
Move jsonapi.c and jsonapi.h to src/common.
- beb4699091e9 13.0 landed
-
Move some code from jsonapi.c to jsonfuncs.c.
- 73ce2a03f30b 13.0 landed
-
Adjust pg_parse_json() so that it does not directly ereport().
- 1f3a021730be 13.0 landed
-
Remove jsonapi.c's lex_accept().
- 530609aa4263 13.0 landed
-
Split JSON lexer/parser from 'json' data type support.
- 11b5e3e35d39 13.0 landed
-
Rationalize code placement between wchar.c, encnames.c, and mbutils.c.
- 5afaa2e42655 13.0 landed
-
Move wchar.c and encnames.c to src/common/.
- e6afa8918c46 13.0 landed
-
Update header comments for wchar.c and encnames.c.
- 3d4cb5d6c180 13.0 landed
-
Make StringInfo available to frontend code.
- 26aaf97b683d 13.0 cited
-
Use SASLprep to normalize passwords for SCRAM authentication.
- 60f11b87a234 10.0 cited