On Tue, Jan 6, 2015 at 12:23 PM, Atri Sharma <atri.j...@gmail.com> wrote:
> >>> >>> The overhead of this patch is small. A new path is added for the >>> preorder keys, and OrderCheck node's additional cost is pretty low, given >>> that it only compares two rows and stores only a single row (previous row >>> seen), hence the memory footprint is minuscule. >>> >>> >> We can eliminate the new node and put onus or having the right order on >> the user like we do with volatile setting of the function. >> >> > > That is exactly what the new node does, since we are not re sorting right > now in case the order is wrong. Please see my explanation upthread, > OrderCheck node's primary purpose is to check for a user error in the > result rows order. The onus right now to give correct order is on user. > > Even checking whether the output of the function is in the right order or not, has its cost. I am suggesting that we can eliminate this cost as well. For example, PostgreSQL does not check whether a function is really immutable or not. > Regards, > > Atri > -- > Regards, > > Atri > *l'apprenant* > -- Best Wishes, Ashutosh Bapat EnterpriseDB Corporation The Postgres Database Company