Andreas Kretschmer <akretschmer(at)spamfence(dot)net> writes:
> You can check the plan with the auto_explain - Extension, and you can
> force the planner to create a plan based on the actual input-value by
> using dynamic SQL (EXECUTE 'your query string' inside the function)
Steve *is* using EXECUTE, so that doesn't seem to be the answer. I'm
wondering about datatype mismatches myself --- the function form is
forcing the parameter to be char(9), which is not a constraint imposed
in the written-out query. There are lots of other possibilities
though. It would be hard to say much without a self-contained example
to try.
regards, tom lane