On Thu, 28 Jul 2016 at 01:18 Gavin Flower <GavinFlower@xxxxxxxxxxxxxxxxx> wrote:
On 28/07/16 17:52, Jason Dusek wrote:
> With regards to write amplification, it makes me think about about
> OIDs. Used to be, every row had an OID and that OID persisted across
> row versions.
>
> https://www.postgresql.org/docs/9.5/static/runtime-config-compatible.html#GUC-DEFAULT-WITH-OIDS
>
> Would reintroducing such a feature address some of Uber's concerns
> about multiple indexes? It could, and would do so without the implicit
> requirement of a foreign key; but it would also require a fast OID to
> CTID mapping.
Would it be best to increase OIDs to 64 bits?
Possibly a choice of 32/64 to be decided when the DB is created???
Moving to 64 bit OIDs would make the OID->CTID mapping take more memory and could, consequently, make it slower; but OIDs would seem to be required to support temporal tables so maybe they should make a comeback?
Kind Regards,
Jason Dusek