https://redmine.czechidm.com/https://redmine.czechidm.com/themes/purplemine2/favicon/favicon.ico?16339658642018-07-03T08:26:14ZIdStory Identity ManagerIdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56302018-07-03T08:26:14ZVít Švanda
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In Progress</i></li><li><strong>Target version</strong> set to <i>Lapis (8.2.0)</i></li></ul> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56332018-07-03T16:08:17ZVít Švanda
<ul><li><strong>% Done</strong> changed from <i>0</i> to <i>40</i></li></ul><ul>
<li>I created VS system with 6000 accounts. </li>
<li>I discovered problem with delete. Problems mainly occures on delete a VsRequest where is in the VsRequestDto returned list of implementers (are shows in the request table and on the request detail). Time for search implementers are 1 sec for every request (on my ntb).</li>
</ul> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56452018-07-09T10:32:46ZVít Švanda
<ul><li><strong>% Done</strong> changed from <i>40</i> to <i>80</i></li></ul><p>I successfuly simulated problems described above. I think all problems was caused with renaming the attributes. I suppose that somebody renamed attributes "firstName", "lastName", "email" to "firstName ", "lastName ", "email " or with another white character.</p>
<p>Use case:</p>
<ol>
<li>We have new virtual system (generated) with one account "vs_one".</li>
<li>When we show detail of this account, we can see all attributes (firstName too).</li>
<li>Change the connector configuration "attributes". Rename the "firstName" -> "firstName ". Click on "Test connector" (save the changes and push configuration to the VS connector).</li>
<li>When we show detail of this account, we cannot se firstName attribute now. This is correct because old attribute "firstName" is not already in the connector schema and new attribute "firstName " not exists because was never provisioned.</li>
<li>Go to the identity "vs_one" and resave it.</li>
<li>Request with change of "firstName" attribute was created (again and again). That is "correct". Problem is in the IdM schema of virtual system. After rename the attributes in the threeth step, nobody clicked on the generate the schema from the connector. It means firstName is still mapped on the attribute wich does not exists in the connector schema. So during provisioning the connector allways returns "nothing" for "firstName" attribute (that is cause for request creating).</li>
</ol>
How to repair it?
<ol>
<li>Generate the IdM schema on virtual system. This creates new schema attribute with key "firstName ". Next we have to change mapping on this new attribute.</li>
<li>Easier way is rename currently exists schema attribute "firstName" to "firstName ".</li>
</ol> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56472018-07-09T12:29:39ZVít Švanda
<ul></ul>I moved loading of implementers from the service (toDto method) to controller. So implementers of requests are filled only on the REST layer.
<ul>
<li>I optimalized searching the implementers. Now is returned max 10 implementers over REST and 50 in the email notification.</li>
</ul>
<p>Delete VS system with 6000 VsAccounts and 6000 VsRequests takes cca 2 minuts (on my NTB) now.</p>
<ul>
<li>I tried trun off system-delete processor in the VS module and delete SysSystem without data in the VS module. This is no good way, because VsRequests has hard reference to SysSystem.</li>
</ul> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56522018-07-09T13:19:37ZVít Švanda
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Needs feedback</i></li><li><strong>Assignee</strong> changed from <i>Vít Švanda</i> to <i>Radek Tomiška</i></li></ul> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=56592018-07-10T10:16:41ZOndřej Kopr
<ul><li><strong>Assignee</strong> changed from <i>Radek Tomiška</i> to <i>Ondřej Kopr</i></li></ul> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=57012018-07-16T07:49:41ZOndřej Kopr
<ul><li><strong>Status</strong> changed from <i>Needs feedback</i> to <i>Resolved</i></li><li><strong>Assignee</strong> changed from <i>Ondřej Kopr</i> to <i>Vít Švanda</i></li><li><strong>% Done</strong> changed from <i>80</i> to <i>100</i></li></ul><p>AAAAaa I finally resolve this hell ticket! In first attempt I tested this in develop, so I tested behavior without and with your changes.</p>
<p>After I rebuild branch (vsvanda/1162-Delete-virtual-systems) and recover backup for DB I started with this review. I try load test with 20k identities and request to virtual system (prepare test data for this case was harder thing on review :)). I also resolve merge conflicts with develop.</p>
<p>Test system: (our virtual: <a class="external" href="http://172.31.255.96:8080/idm/">http://172.31.255.96:8080/idm/</a>)</p>
<p>Thanks for help with prepare test enviroment. Remove virtual system with ~20k archvied request and system entities takes about.</p>
<p>During delete virtual system was deleted about 70 000 entities (mapping, eavs, provisioning archive, system entities, vs request - all these entities generates audit logs). Processor from VS () starts 15:00:59 and ACC processors end 15:33:00 (in this mode was loged DEBUG for all loggers - hibernate and etc.) commit that contains all audit logs was ended in 22:08 (server logs debug messages - this probably slows down the process with create audit logs)</p>
<p>Remove virtual system by processor in VS was speeded up. Thanks for that.</p> IdStory Identity Manager - Task #1162: Delete virtual systemshttps://redmine.czechidm.com/issues/1162?journal_id=57062018-07-16T10:55:47ZVít Švanda
<ul><li><strong>Status</strong> changed from <i>Resolved</i> to <i>Closed</i></li></ul>