Hi, On 2023-03-21 18:05:15 +0100, Peter Eisentraut wrote: > On 16.03.23 17:36, Andres Freund wrote: > > Maybe a daft question, but why do we need a separate type and typmod for > > encrypted columns? Why isn't the fact that the column is encrypted exactly > > one > > new field, and we use the existing type/typmod fields? > > The way this is implemented is that for an encrypted column, the real > atttypid and atttypmod are one of the encrypted special types > (pg_encrypted_*). That way, most of the system doesn't need to care about > the details of encryption or whatnot, it just unpacks tuples etc. by looking > at atttypid, atttyplen, etc., and queries on encrypted data behave normally > by just looking at what operators etc. those types have. This approach > heavily contains the number of places that need to know about this feature > at all.
I get that for the type, but why do we need the typmod duplicated as well? Greetings, Andres Freund