On 19/12/2018 05:17, Andres Freund wrote: > I'm concerned that naming it heap, and the corresponding functions > fitting with that name, will be confusing. There's a lot of functions > that have a heap_ prefix (or similar) that aren't really dependent on > how the storage works, but much more general infrastructure (consider > e.g. heap_create_with_catalog()).
I'm wondering where the choice of the name "heap" originally came from and what it refers to. In "The Design of Postgres"[0], it is said that "All relations will be stored as heaps (as in [ASTR76]) with an optional collection of secondary indexes." But ASTR76[1] does not mention the word "heap", so it doesn't appear to refer to any specific method or algorithm. The heap is clearly not the tree data structure. Is it meant in the sense of memory allocation, a place to store a large amount of stuff in a mostly unorganized way? [0]: http://db.cs.berkeley.edu/papers/ERL-M85-95.pdf [1]: http://daslab.seas.harvard.edu/reading-group/papers/astrahan-1976.pdf -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services