On Saturday, December 20, 2014, Mike Pultz [via PostgreSQL] < ml-node+s1045698n583155...@n5.nabble.com> wrote:
> Hey David, > > > What version are you using? > > Sorry, I'm on 9.3.4. > > >Now() is a volatile function so the planner cannot omit partitions. > > > >Replace that with a constant and now it can. > > I'm not sure what you mean- now() is a stable function: My mistake but unless it is immutable the planner cannot evaluate it, it has to defer to the executor. The executor can evaluate it a single time for the query but it is still left with the original execution plan given to it by the planner. > it's the timestamp at the start of the transaction- so the planner should > have a set value for all rows. > Am I missing something else? > > Precise responsibility and timing mechanics between the planner and executor which I cannot give adequate exposition on off the top of my head... David J. -- View this message in context: http://postgresql.nabble.com/Problem-with-constraint-exclusion-on-partitions-tp5831541p5831552.html Sent from the PostgreSQL - general mailing list archive at Nabble.com.