Subject RE: [firebird-support] Partial update
Author Leyne, Sean
> > Is that the real issue, you want to eliminate the "prepare" stage?
> "Prepare" does much more than just parsing of query and building plan. It
> also check for permissions and this stage cannot be cached.

Not if the cache was in the context of the current connection, so permissions could be checked just once. Then the prepare would only be done for the first execution of each statement variant.

As for the PLAN, arguably this could be handled by a process which would clear cache statements whenever DDL was applied to the database -- in essence causing the next execution to re-prepare the statement.

Maybe I am just being selfish but it seems my suggestion is more along the lines of how other engines think of optimizing performance, rather than your "skip parameter" approach. It also has the advantage of applying to all use cases, not just operations using native API.