Hi Christian -- On Mon, Sep 27, 2021 at 05:53:24PM +0200, Christian Grün scripsit: > To understand you correctly: You indicated that you only observed the > initial error if the code was moved into a module.
That is factual, but it's an artifact of poor testing on my part. I had tested the function against some samples before inserting it in the module and did not take sufficient care to find an actually large pattern string. As a result, the function worked fine with the test cases, and when it was put it in a module and called as part of processing the whole content set it failed. This is not plausibly a result of putting it in a module rather than a result of poorly chosen test cases. With an actually large pattern string, the function fails when run by itself, outside of a module. > Did I get this right? If not, what did you mean by »Stick the > functions in a module namespace«? You have what I said correct, but I made a mistake when I said it. I didn't see the failure until the function had been put in a module and run against the full content set, so I was wondering if that was a contributing factor. If I'd done a better job of picking test cases, I would have seen the failure with the stand-alone function, and do now see the failure with the stand-alone function in example2.zip. Hope that helps! Graydon > On Mon, Sep 27, 2021 at 3:20 PM Graydon <graydon...@gmail.com> wrote: > > > > Hi Christian -- > > > > Apologies; I was hoping there was something in the structure of the > > function that was obviously daft by inspection. > > > > On Mon, Sep 27, 2021 at 09:15:56AM +0200, Christian Grün scripsit: > > > Sorry, I’m lazy. Could you share some minimized code with us that > > > triggers the error? > > > > For certain narrowly defined values of lazy! > > > > I've attached a zip. > > > > The variable "awkward" has been assigned the string literal of the first > > pattern in the sorted list of patterns which triggers the error. Due to > > a large table in the markup, this pattern is about 75 kb long. > > > > The rest of the query is a function call using this variable as the > > parameter. It fails with a "Stack Overflow: Try tail recursion?" > > error. > > > > Thanks! > > > > Graydon