[
http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-598?pag...
]
Sanne Grinovero commented on HSEARCH-598:
-----------------------------------------
hi, the dataset size is not relevant, the number of threads enabled on the indexer are.
each thread might potentially need an hibernate session, and this number varies with the
actual data but of course will never be above the number of threads.
Until we find a better way, to be safe always have a higher number of connections than the
total of each set of threads of the massindexer, and it won't hurt to have a couple of
spare ones.
I'll figure out what the exact numbers are and document it, but I don't think we
can actually prevent users from setting this wrong - still looking for ideas and
suggestions are welcome.
MassIndexer freezes when pool size is too low
---------------------------------------------
Key: HSEARCH-598
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-598
Project: Hibernate Search
Issue Type: Bug
Components: documentation, massindexer
Affects Versions: 3.2.1
Environment: Hibernate Core 3.5.4, PostgreSQL 8.4.4
Reporter: I D
Assignee: Sanne Grinovero
Fix For: 3.2.2, 3.3.0.Beta2
In our application we use db connection pooling at the servlet container level - Jetty
instantiates a com.mchange.v2.c3p0.ComboPooledDataSource. We've disabled
Hibernate's connection pooling to avoid multiple connection pools.
Soon after starting to use MassIndexer we noticed that it SOMETIMES freezes during
operation - startAndWait() just hangs indefinitely. After some experimentation, we
realized that during this freeze the connection pool is maxed out and all the 15
connections (c3p0's default value for maxPoolSize is 15) are active.
We therefore experimented with various values for maxPoolSize and found that 10 or less
always seems to cause freezes, whereas 20 or more seems to work fine consistently. In
between is a grey area, where the freeze occurs inconsistently (this grey area may of
course extend to maxPoolSize<=10 and/or maxPoolSize>=20, since our tests only
provide a partial statistical sample).
If this is expected behavior, the minimal pool size / number of required connections
should be well documented.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira