From: Kenneth Marshall <ktm@rice.edu>
To: rawi <only4com@web.de>
Cc: pgsql-sql@postgresql.org
Subject: Re: Hibernate, web application and only one sequence for all primary keys
Date: Thu, 17 Sep 2009 09:54:53 -0500
Message-ID: <20090917145453.GC22802@it.is.rice.edu> (raw)
In-Reply-To: <25491924.post@talk.nabble.com>
References: <25490498.post@talk.nabble.com>
<4AB23593.4090906@beecom.ch>
<25491924.post@talk.nabble.com>
On Thu, Sep 17, 2009 at 07:47:13AM -0700, rawi wrote:
>
>
> Leo Mannhart wrote:
> >
> > Caveat: If you use the standard sequence generator in hibernate, it is
> > not using the postgres-sequence in the "usual" manner. hibernate itself
> > caches 50 ID's as sequence numbers by default. This means, hibernate
> > only does a select on the database sequence every 50 numbers. it
> > multyplies the database sequence by 50 to get the "real" sequence
> > number. it generates the sequence numbers in blocks of 50 numbers or
> > according to the sequence cache size.
> > That said, you would probably not see any performance bottlenecks
> > because of the sequence number generator in the database, even with
> > thousands of inserts per second.
> >
>
> Hi Leo, thank you for the explanation!
>
> I don't know if it is that cool to lose up to 50 IDs on each session-end of
> Hibernate...
> And what do you suppose it would happen, if I set the cache size of
> Hibernate's own sequence (after generation) by hand to 1 instead of 50? I
> wouldn't need tausends of inserts per second...
>
> Kind regards, Rawi
>
Hi Rawi,
If hibernate manages its pool of 50, it can use much lighter-weight
processes than using a full SQL query to a database. I would recommend
leaving it be. You can afford to lose a few ids in 2**63.
Regards,
Ken
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: ktm@rice.edu, only4com@web.de
Subject: Re: Hibernate, web application and only one sequence for all primary keys
In-Reply-To: <20090917145453.GC22802@it.is.rice.edu>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox