Cause (query, types) can give more combinations than (query,)?

On Wed, 23 Dec 2020 at 15:12, Adrian Klaver <[email protected]>
wrote:

> On 12/23/20 2:53 PM, Daniele Varrazzo wrote:
> > On Tue, 22 Dec 2020 at 22:36, Daniele Varrazzo
> > <[email protected]> wrote:
> >>
> >> On Tue, 22 Dec 2020 at 05:39, Vladimir Ryabtsev <[email protected]>
> wrote:
> >
>
> >
> > Heads up about this: it's better than I thought!
> >
> > I wrote a first implementation of the prepared statements cache using
> > the query as a key, but it's actually enough to use the (query, types)
> > tuple in order to tell apart statements that are executed with
> > different types. This way even the "SELECT %s" case won't be a
> > problem. Of course a statement executed with a mix of types will be
> > prepared later than `prepare_threshold`, but I think it's perfectly
>
> Alright I was following you until you got to above. I'm not following
> why it would overshoot prepare_threshold?
>
> > acceptable: the case doesn't happen often and having the query
> > prepared after 10 times instead of 5 doesn't change much if it will be
> > executed hundreds of times or more.
> >
> > What seems a feature-complete branch is available in [1]. The tests
> > [2] illustrate the main behaviour of the prepared statements system.
> >
> > [1]: https://github.com/psycopg/psycopg3/tree/prepared-statements>.
> > [2]:
> https://github.com/psycopg/psycopg3/blob/prepared-statements/tests/test_prepared.py
> >
> > Off to do some benchmarks now...
> >
> > -- Daniele
> >
>
>
> --
> Adrian Klaver
> [email protected]
>

Reply via email to