Hi,
no idea if this could be helpful, but I could reproduce a deadlock some
time ago in Syncope by an artificial load test with many parallel
threads. The deadlock occurred when there were no more connections
available in the connection pool.
You could check if the connection pool (property jpa.pool.maxActive) is
sufficiently large.
The mentioned log that "claims some deadlocks" could also be helpful to
see where the deadlock exactly happens.
Cheers,
Guido
Am 18.03.2016 um 17:56 schrieb Colm O hEigeartaigh:
Yes, the users are stored internally after creation. I guess we will
have to set up a test-case and try to reproduce the issue.
Thanks for your help Giacomo!
Colm.
On Fri, Mar 18, 2016 at 11:08 AM, Giacomo Lamonaco
<[email protected] <mailto:[email protected]>> wrote:
Hi Colm,
I tried to inspect the latest fixes but I didn't find something
related to performance or deadlock.
I have some more questions:
1) At the end of the creation process, users have been stored
internally?
2) Could you provide the average time required for an user
creation? And for an user search?
It could be better to test 2) both with and without the cluster.
Anyway, my suggestion is to upgrade Syncope to 1.2.8-SNAPSHOT
version and start again with the import.
Best Regards,
--
Giacomo Lamonaco
Tirasa - Open Source Excellence
http://www.tirasa.net/
Syncope committer
http://people.apache.org/~giacomolm
<http://people.apache.org/%7Egiacomolm>
Il giorno ven, 18/03/2016 alle 09.54 +0000, Colm O hEigeartaigh ha
scritto:
i Giacomo,
My understanding is that there are no external resources involved
here. The MSSQL cluster is used for the Syncope internal storage.
So the users are created directly in Syncope itself via the REST
API. Does this kind of deadlock issue ring any bells for any
issue fixed subsequent to 1.2.5? If not we will try to reproduce
the issue locally to try to narrow the problem down.
Thanks,
Colm.
On Thu, Mar 17, 2016 at 1:27 PM, Giacomo Lamonaco
<[email protected]
<mailto:[email protected]>> wrote:
Il giorno mer, 16/03/2016 alle 15.27 +0000, Aniket Band ha scritto:
> Hello All,
>
> One of our customers uses Syncope (1.2.5) and got some performance
> issues. They want to upload 100.000 users via REST interface. They
> created 3-5 routes in parallel to call the rest interface.
> Unfortunately it requires 2 day to insert 100.000 users. As
far as I
> know it should not take 2 days. The Log claims some deadlocks
in the
> database.
>
> Any idea about it? In the mailing list and in JIRA I could not
find
> any similar issue.
>
> Database is a MSSQL in a cluster. Thanks in advance for your
inputs.
>
Hi Aniket,
Do you have some external resources connected to Syncope?
(Connected means that every time you create an user in Syncope,
that user is automatically propagated to the external resource).
Do you have the possibility to create users just on one MSSQL
instance (switching off the cluster)?
It's not always a good idea to perform large 'import' using the
REST interface. You could try to perform this kind of import at
a lower level, maybe creating a dump containing those users.
Best Regards,
--
Giacomo Lamonaco
Tirasa - Open Source Excellence
http://www.tirasa.net/
Syncope committer
http://people.apache.org/~giacomolm
<http://people.apache.org/%7Egiacomolm>
--
Colm O hEigeartaigh
Talend Community Coder
http://coders.talend.com