On 6/5/18 13:29, Andres Freund wrote: > Besides the change here, I think we should also go much further with the > conversion to NullableDatum. There's two main areas of change: I want > to move the execExpr.c related code so steps return data into > NullableDatums - that removes a good chunk of pointer dereferences and > allocations. Secondly I think we should move TupleTableSlot to this > format - the issue with nulls / datums being on separate cachelines is > noticeable in profiles, but more importantly the code looks more > consistent with it.
There are also a variety of utility functions that return a Datum and have an extra bool *isnull argument. What are your thoughts on using NullableDatum more in those cases? Is returning structs a problem for low-level performance? -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services