Thread

Commits

  1. Add stack depth checks to key recursive functions in backend/nodes/*.c.

  2. Doc: remove obsolete reference to recursive expression evaluation.

  1. docs: outdated reference to recursive expression evaluation

    John Naylor <jcnaylor@gmail.com> — 2018-12-08T12:21:09Z

    In confg.sgml, in the section about max_stack_depth, there's this sentence:
    
    "The safety margin is needed because the stack depth is not checked in
    every routine in the server, but only in key potentially-recursive
    routines such as expression evaluation."
    
    Since the change in expression evaluation in v10, there's probably a
    better example of recursive routines, but I'm not sure what that would
    be.
    
    -John Naylor
    
    
    
  2. Re: docs: outdated reference to recursive expression evaluation

    Tom Lane <tgl@sss.pgh.pa.us> — 2018-12-08T16:30:31Z

    John Naylor <jcnaylor@gmail.com> writes:
    > In confg.sgml, in the section about max_stack_depth, there's this sentence:
    > "The safety margin is needed because the stack depth is not checked in
    > every routine in the server, but only in key potentially-recursive
    > routines such as expression evaluation."
    
    > Since the change in expression evaluation in v10, there's probably a
    > better example of recursive routines, but I'm not sure what that would
    > be.
    
    We could say "expression compilation" and it'd still be valid.  Or just
    drop the last four words altogether.  I don't think we want to expend the
    verbiage to be more precise here, since it's only a tangential point.
    
    BTW, while looking at this I noted that copyfuncs.c has a
    check_stack_depth call but outfuncs, readfuncs, equalfuncs don't.
    Surely that's not good.
    
    			regards, tom lane
    
    
    
  3. Re: docs: outdated reference to recursive expression evaluation

    John Naylor <jcnaylor@gmail.com> — 2018-12-10T14:55:11Z

    On 12/8/18, Tom Lane <tgl@sss.pgh.pa.us> wrote:
    > John Naylor <jcnaylor@gmail.com> writes:
    >> In confg.sgml, in the section about max_stack_depth, there's this
    >> sentence:
    >> "The safety margin is needed because the stack depth is not checked in
    >> every routine in the server, but only in key potentially-recursive
    >> routines such as expression evaluation."
    >
    >> Since the change in expression evaluation in v10, there's probably a
    >> better example of recursive routines, but I'm not sure what that would
    >> be.
    >
    > We could say "expression compilation" and it'd still be valid.  Or just
    > drop the last four words altogether.  I don't think we want to expend the
    > verbiage to be more precise here, since it's only a tangential point.
    
    I'm inclined to agree. If you like, here's a patch to leave out the example.
    
    -John Naylor
    
  4. Re: docs: outdated reference to recursive expression evaluation

    Tom Lane <tgl@sss.pgh.pa.us> — 2018-12-10T15:44:52Z

    John Naylor <jcnaylor@gmail.com> writes:
    > On 12/8/18, Tom Lane <tgl@sss.pgh.pa.us> wrote:
    >> We could say "expression compilation" and it'd still be valid.  Or just
    >> drop the last four words altogether.  I don't think we want to expend the
    >> verbiage to be more precise here, since it's only a tangential point.
    
    > I'm inclined to agree. If you like, here's a patch to leave out the example.
    
    Pushed to HEAD (didn't seem worth back-patching, though).
    
    			regards, tom lane