TOAST_TUPLE_THRESHOLD bytes (normally 2 kB).
The
TOAST code will compress and/or move
field values out-of-line until the row value is shorter than
-TOAST_TUPLE_TARGET bytes (also normally 2 kB)
+TOAST_TUPLE_TARGET bytes (also normally 2 kB, adjustable)
or no more gains can be had. During an UPDATE
operation, values of unchanged fields are normally preserved as-is; so an
UPDATE of a row with out-of-line values incurs no
TOAST costs if
with ALTER TABLE ... SET STORAGE.
+TOAST_TUPLE_TARGET can be adjusted for each table using
+ALTER TABLE ... SET (toast_tuple_target = N)
+
+
This scheme has a number of advantages compared to a more straightforward
approach such as allowing row values to span pages. Assuming that queries are