<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:10:21 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>FOLIO Jira</title>
    <link>https://folio-org.atlassian.net</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>1001.0.0-SNAPSHOT</version>
        <build-number>100246</build-number>
        <build-date>07-02-2024</build-date>
    </build-info>

<item>
            <title>[FOLIO-1034] Vagrant box becomes irresponsive while importing a large number of users</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-1034</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;The logs (Okapi, users module, auth module) do not contain any error messages.&lt;br/&gt;
The import module stops with the following error messages:&lt;br/&gt;
11:06:40 ERROR UserImportAPI        Failed to update user with externalSystemId: b1b8af9c-1385-4e19-b77f-cecda3ca4729&lt;br/&gt;
11:06:40 ERROR UserImportAPI        &lt;/p&gt;
{&quot;endpoint&quot;:&quot;/users/c6e24324-21a7-4bab-9fa4-3db25accbcfa&quot;,&quot;statusCode&quot;:500,&quot;errorMessage&quot;:&quot;Error getting expanded permissions for [\&quot;users.collection.get\&quot;,\&quot;addresstypes.collection.get\&quot;,\&quot;usergroups.collection.get\&quot;,\&quot;users.item.get\&quot;,\&quot;users.item.post\&quot;,\&quot;users.item.put\&quot;,\&quot;perms.users.item.post\&quot;] : Address not available: /10.0.2.15:9130&quot;}
&lt;p&gt;11:06:40 ERROR UserImportAPI        Failed to update user with externalSystemId: 70b50626-c394-4840-ac44-aa5d239a9501&lt;br/&gt;
11:06:40 ERROR UserImportAPI        &lt;/p&gt;
{&quot;endpoint&quot;:&quot;/users/651d756f-30d9-4049-9dc0-a34e054e52ef&quot;,&quot;statusCode&quot;:500,&quot;errorMessage&quot;:&quot;Unable to retrieve permissions for user with id&apos;1ad737b0-d847-11e6-bf26-cec0c932ce01&apos;: Address not available: /10.0.2.15:9130&quot;}
&lt;p&gt;11:06:40 ERROR UserImportAPI        Failed to update user with externalSystemId: 3f61dad2-cfed-4a4e-a210-8d26a76e1fdc&lt;br/&gt;
11:06:40 ERROR UserImportAPI        &lt;/p&gt;
{&quot;endpoint&quot;:&quot;/users/75019021-5e8a-4672-a031-510b878e796d&quot;,&quot;statusCode&quot;:500,&quot;errorMessage&quot;:&quot;Error getting expanded permissions for [\&quot;users.collection.get\&quot;,\&quot;addresstypes.collection.get\&quot;,\&quot;usergroups.collection.get\&quot;,\&quot;users.item.get\&quot;,\&quot;users.item.post\&quot;,\&quot;users.item.put\&quot;,\&quot;perms.users.item.post\&quot;] : Address not available: /10.0.2.15:9130&quot;}
&lt;p&gt;11:06:40 ERROR UserImportAPI        Failed to update user with externalSystemId: 7b08650a-1561-4351-90c8-da9bb1717286&lt;br/&gt;
11:06:40 ERROR UserImportAPI        &lt;/p&gt;
{&quot;endpoint&quot;:&quot;/users/f0a44049-2c7e-4c9f-8357-34f78c770f3a&quot;,&quot;statusCode&quot;:500,&quot;errorMessage&quot;:&quot;Error getting expanded permissions for [\&quot;users.collection.get\&quot;,\&quot;addresstypes.collection.get\&quot;,\&quot;usergroups.collection.get\&quot;,\&quot;users.item.get\&quot;,\&quot;users.item.post\&quot;,\&quot;users.item.put\&quot;,\&quot;perms.users.item.post\&quot;] : Address not available: /10.0.2.15:9130&quot;}
&lt;p&gt;11:06:40 ERROR UserImportAPI        Failed to update user with externalSystemId: 6c2cda17-52e9-46c0-8b7d-21ba018eb941&lt;br/&gt;
11:06:40 ERROR UserImportAPI        &lt;/p&gt;
{&quot;endpoint&quot;:&quot;/users/1b0a83f1-84b2-4466-b99d-72231bfa7ac3&quot;,&quot;statusCode&quot;:500,&quot;errorMessage&quot;:&quot;Unable to retrieve permissions for user with id&apos;1ad737b0-d847-11e6-bf26-cec0c932ce01&apos;: Address not available: /10.0.2.15:9130&quot;}

&lt;p&gt;The number of open connections on the Vagrant machine:&lt;br/&gt;
sudo lsof -i | wc -l = 181 after starting Vagrant machine&lt;br/&gt;
sudo lsof -i | wc -l = 16750 after the first request with 5000 users finished successfully.&lt;br/&gt;
sudo lsof -i | grep okapi | wc -l = 16604&lt;br/&gt;
sudo lsof -i | wc -l = 28480 when the second request fails.&lt;br/&gt;
sudo lsof -i | grep okapi | wc -l = 28334&lt;/p&gt;

&lt;p&gt;The request data is:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;$
{okapiUrl}
&lt;p&gt;/user-import&lt;/p&gt;&lt;/li&gt;
	&lt;li&gt;headers:
	&lt;ul&gt;
		&lt;li&gt;Content-Type: application/json&lt;/li&gt;
		&lt;li&gt;x-okapi-tenant&lt;/li&gt;
		&lt;li&gt;x-okapi-token&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;body: see the attached file&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The user whose authentication token is used needs to have a permission for importing users: User import (user-import.all).&lt;/p&gt;</description>
                <environment></environment>
        <key id="80510">FOLIO-1034</key>
            <summary>Vagrant box becomes irresponsive while importing a large number of users</summary>
                <type id="10001" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10303?size=medium">Bug</type>
                                            <priority id="10002" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p3.svg">P3</priority>
                        <status id="6" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10003">Done</resolution>
                                                        <assignee accountid="5e1750638dfdd40ec489bf08">Katalin Lovagn&#233; Sz&#369;cs</assignee>
                                                                <reporter accountid="5e1750638dfdd40ec489bf08">Katalin Lovagn&#233; Sz&#369;cs</reporter>
                                    <labels>
                            <label>sprint31</label>
                            <label>sprint32</label>
                            <label>sprint33</label>
                    </labels>
                <created>Wed, 17 Jan 2018 14:31:42 +0000</created>
                <updated>Mon, 12 Nov 2018 14:23:56 +0000</updated>
                            <resolved>Thu, 8 Mar 2018 15:00:18 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                    <timespent seconds="30600">1 day, 30 minutes</timespent>
                                <comments>
                                                            <comment id="189458" author="5f8314dfbdef80006f6f572d" created="Wed, 17 Jan 2018 15:21:13 +0000"  >&lt;p&gt;I&apos;m using script run.sh to try this out. It takes a while. At this stage .. while posting  .. I see now indication of socket leaks. I&apos;ll let it run for some time (still in progress). I am using Folio Ansible box v5.0.0-20180117.396&lt;/p&gt;</comment>
                                                            <comment id="189459" author="5f8314dfbdef80006f6f572d" created="Wed, 17 Jan 2018 15:43:01 +0000"  >&lt;p&gt;I tried to import 1 record (user_import_test_data_with_1_users.json). First time, I get a nice report back. 2nd time, it hangs. I need basic importing to work before getting thousands inserted/updated.. I&apos;m using the run.sh script as attached. I&apos;m pretty sure I&apos;m doing something wrong here.&lt;/p&gt;
</comment>
                                                            <comment id="189462" author="5f8314dfbdef80006f6f572d" created="Wed, 17 Jan 2018 16:17:17 +0000"  >&lt;p&gt;I recreated the Ansible box and imported 283 records OK (to ensure all : new). Then I tried with the 5000 record batch.. It got through after intensive work..&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
top - 16:16:50 up 8 min,  2 users,  load average: 4.50, 4.91, 2.88
Tasks: 163 total,   2 running, 161 sleeping,   0 stopped,   0 zombie
%Cpu(s): 68.5 us, 16.3 sy,  0.0 ni, 10.7 id,  0.0 wa,  0.0 hi,  4.5 si,  0.0 st
KiB Mem:   8195824 total,  7292780 used,   903044 free,    41740 buffers
KiB Swap:   473084 total,        0 used,   473084 free.   755144 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                                                                                                                                         
 1305 folio     20   0 4691860 1.099g  20880 S  45.9 14.1   3:35.83 java -javaagent:/opt/agent-bond/agent-bond.jar=jolokia{{host=0.0.0.0}},jmx_exporter{{9779:/opt/agent-bond/jmx_exporter_config.yml}} -cp . -jar /usr/verticles/mod-permissions-fat.jar                                                                           
 1804 folio     20   0 4698292 856752  21152 S   0.3 10.5   0:40.30 java -javaagent:/opt/agent-bond/agent-bond.jar=jolokia{{host=0.0.0.0}},jmx_exporter{{9779:/opt/agent-bond/jmx_exporter_config.yml}} -cp . -jar /usr/verticles/mod-users-fat.jar              
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The socket count is 200, which is similar to what it is upon booting.. In other words: no socket leak seen.&lt;/p&gt;</comment>
                                                            <comment id="189464" author="5c38e8d616ac1e4f7cbc660a" created="Wed, 17 Jan 2018 16:29:06 +0000"  >&lt;p&gt;I wonder if this is a possible case where a simple permissions cache in the authtoken module would start to make a lot of sense.&lt;/p&gt;</comment>
                                                            <comment id="189467" author="5e1750638dfdd40ec489bf08" created="Thu, 18 Jan 2018 12:44:06 +0000"  >&lt;p&gt;One thing to mention: while testing I ran the user-import module on my laptop in Eclipse and referenced to that instance in the discovery service. I tested it with the embedded module and the socket count seems to stop at about 200. So maybe the problem occurs only when deploying an external service.&lt;br/&gt;
Update: tried to import 1000 users after the successful import of 5000 users. I think something went wrong because at one time the logs just stopped and no response was returned to Postman. Also my laptop (with 8GB RAM) did not respond after the first request, I had to close every application (I gave my virtualbox a maximum of 4 GB memory).&lt;/p&gt;</comment>
                                                            <comment id="189469" author="5c38e8d616ac1e4f7cbc660a" created="Fri, 19 Jan 2018 16:36:12 +0000"  >&lt;blockquote&gt;
&lt;p&gt;I tried to import 1 record (user_import_test_data_with_1_users.json). First time, I get a nice report back. 2nd time, it hangs. I need basic importing to work before getting thousands inserted/updated.. I&apos;m using the run.sh script as attached. I&apos;m pretty sure I&apos;m doing something wrong here.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5f8314dfbdef80006f6f572d&quot; class=&quot;user-hover&quot; rel=&quot;5f8314dfbdef80006f6f572d&quot; data-account-id=&quot;5f8314dfbdef80006f6f572d&quot; accountid=&quot;5f8314dfbdef80006f6f572d&quot; rel=&quot;noreferrer&quot;&gt;Adam Dickmeiss&lt;/a&gt; I got this same behavior when I tried with my setup. Did you ever identify any cause for it?&lt;/p&gt;</comment>
                                                            <comment id="189471" author="5c38e8d616ac1e4f7cbc660a" created="Mon, 22 Jan 2018 13:34:42 +0000"  >&lt;p&gt;I went ahead and made a branch of mod-authtoken that had rudimentary caching to avoid having to do repeat lookups of permissions for the same user id. With the cache turned off, my VM takes 22 minutes to load 5000 records. With the cache turned on, it completes in 7 minutes.&lt;/p&gt;

&lt;p&gt;This suggests to me that caching is a worthy addition to the authtoken module, as permissions lookups are a bottleneck for a repetition-intensive task like import.&lt;/p&gt;

&lt;p&gt;Sadly, it does not solve the issue with updating already imported records. I will continue to investigate that.&lt;/p&gt;</comment>
                                                            <comment id="189473" author="5f8314dfbdef80006f6f572d" created="Mon, 22 Jan 2018 13:39:55 +0000"  >&lt;p&gt;Sounds good. Should improve the response times by the system as a whole, then&lt;/p&gt;</comment>
                                                            <comment id="189476" author="5c38e8d616ac1e4f7cbc660a" created="Mon, 22 Jan 2018 17:49:52 +0000"  >&lt;p&gt;I still haven&apos;t located the source of the users update issue. I consistently get a hung request when I attempt any re-import of existing users.&lt;/p&gt;

&lt;p&gt;The last output that I get from user-import is the output of the request to query the existing user by externalId. &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5e1750638dfdd40ec489bf08&quot; class=&quot;user-hover&quot; rel=&quot;5e1750638dfdd40ec489bf08&quot; data-account-id=&quot;5e1750638dfdd40ec489bf08&quot; accountid=&quot;5e1750638dfdd40ec489bf08&quot; rel=&quot;noreferrer&quot;&gt;Katalin Lovagn&#233; Sz&#369;cs&lt;/a&gt;, do you have any thoughts as to what happens differently when a user already exists as opposed to not existing at this particular juncture?&lt;/p&gt;</comment>
                                                            <comment id="189482" author="5e1750638dfdd40ec489bf08" created="Mon, 29 Jan 2018 09:23:05 +0000"  >&lt;p&gt;I realized that the users schema has changed in mod-users and I am using a separate one. Can I reuse the schema in mod-users but change the required fields? (I want externalSystemId to be required instead of id).&lt;/p&gt;</comment>
                                                            <comment id="189484" author="5e1750638dfdd40ec489bf08" created="Mon, 29 Jan 2018 10:54:14 +0000"  >&lt;p&gt;I fixed the user update problem so (after I manage to merge my PR) you can test with it. I just tried with the 5000 users and the vagrant machine has stopped itself (or rather paused). My pull request just in case: &lt;a href=&quot;https://github.com/folio-org/mod-user-import/pull/19&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/mod-user-import/pull/19&lt;/a&gt;&lt;/p&gt;</comment>
                                                            <comment id="189488" author="5c38e8d616ac1e4f7cbc660a" created="Tue, 30 Jan 2018 17:36:13 +0000"  >&lt;p&gt;I can confirm that the user update works now. Should probably update &lt;a href=&quot;https://folio-org.atlassian.net/browse/FOLIO-1037&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://folio-org.atlassian.net/browse/FOLIO-1037&lt;/a&gt;, I think.&lt;/p&gt;

&lt;p&gt;I am able to import/update 5000 users on my machine (running with jars) without issue. With my experimental caching for permissions activated, it takes about 7-8 minutes.&lt;/p&gt;

&lt;p&gt;Would it be possible to get a larger file to test with? Say 20k users?&lt;/p&gt;</comment>
                                                            <comment id="189492" author="5e1750638dfdd40ec489bf08" created="Wed, 31 Jan 2018 11:36:54 +0000"  >&lt;p&gt;I have a larger data set with 20k users, I uploaded the JSON file to Google drive: &lt;a href=&quot;https://drive.google.com/drive/folders/1m8nVqSTg-dMrltF7Az8Fc08Eqq7GA2EM?usp=sharing&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://drive.google.com/drive/folders/1m8nVqSTg-dMrltF7Az8Fc08Eqq7GA2EM?usp=sharing&lt;/a&gt;&lt;br/&gt;
I can generate even larger data sets if necessary.&lt;/p&gt;</comment>
                                                            <comment id="189496" author="5c38e8d616ac1e4f7cbc660a" created="Wed, 31 Jan 2018 14:56:24 +0000"  >&lt;p&gt;The 20k file did manage to bork things up good and proper. &lt;img class=&quot;emoticon&quot; src=&quot;/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;  Here&apos;s the stack dump:&lt;/p&gt;


&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
14:51:27 ERROR utingContextImplBase Unexpected exception in route
java.lang.OutOfMemoryError: Java heap space
        at org.hibernate.validator.internal.metadata.raw.ConstrainedParameter.merge(ConstrainedParameter.java:150)
        at org.hibernate.validator.internal.metadata.raw.ConstrainedExecutable.merge(ConstrainedExecutable.java:285)
        at org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData$Builder.addToExecutablesByDeclaringType(ExecutableMetaData.java:373)
        at org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData$Builder.add(ExecutableMetaData.java:347)
        at org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData$Builder.&amp;lt;init&amp;gt;(ExecutableMetaData.java:317)
        at org.hibernate.validator.internal.metadata.aggregated.BeanMetaDataImpl$BuilderDelegate.&amp;lt;init&amp;gt;(BeanMetaDataImpl.java:615)
        at org.hibernate.validator.internal.metadata.aggregated.BeanMetaDataImpl$BeanMetaDataBuilder.addMetaDataToBuilder(BeanMetaDataImpl.java:559)
        at org.hibernate.validator.internal.metadata.aggregated.BeanMetaDataImpl$BeanMetaDataBuilder.add(BeanMetaDataImpl.java:546)
        at org.hibernate.validator.internal.metadata.BeanMetaDataManager.createBeanMetaData(BeanMetaDataManager.java:167)
        at org.hibernate.validator.internal.metadata.BeanMetaDataManager.getOrCreateBeanMetaData(BeanMetaDataManager.java:194)
        at org.hibernate.validator.internal.metadata.BeanMetaDataManager.getBeanMetaData(BeanMetaDataManager.java:142)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraint(ValidatorImpl.java:783)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraints(ValidatorImpl.java:664)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:416)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraint(ValidatorImpl.java:795)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraints(ValidatorImpl.java:681)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:416)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraint(ValidatorImpl.java:795)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateCascadedConstraints(ValidatorImpl.java:681)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:416)
        at org.hibernate.validator.internal.engine.ValidatorImpl.validate(ValidatorImpl.java:205)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle.isValidRequest(RestVerticle.java:1454)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle.lambda$11(RestVerticle.java:1275)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle$$Lambda$86/1086721990.accept(Unknown Source)
        at java.util.Iterator.forEachRemaining(Iterator.java:116)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle.parseParams(RestVerticle.java:1223)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle.route(RestVerticle.java:428)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle.lambda$12(RestVerticle.java:253)
        at org.folio.&lt;span class=&quot;code-keyword&quot;&gt;rest&lt;/span&gt;.RestVerticle$$Lambda$58/1650886178.handle(Unknown Source)
        at io.vertx.ext.web.impl.RouteImpl.handleContext(RouteImpl.java:217)
        at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:78)
        at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:118)
14:51:28 INFO  ProxyContext         633150/user-&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt; RES 500 86342187us mod-user-&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt;-2.0.1-SNAPSHOT http:&lt;span class=&quot;code-comment&quot;&gt;//localhost:9134/user-&lt;span class=&quot;code-keyword&quot;&gt;import&lt;/span&gt;&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                                                            <comment id="189500" author="5c38e8d616ac1e4f7cbc660a" created="Wed, 31 Jan 2018 15:22:44 +0000"  >&lt;p&gt;Without delving into the code, I wonder if the user-import module needs to be configured to only work on a chunk of records of some particular limit? Perhaps 1000 at a time? Is it trying to load all 20k into memory at once?&lt;/p&gt;</comment>
                                                            <comment id="189502" author="5e1750638dfdd40ec489bf08" created="Wed, 31 Jan 2018 15:48:33 +0000"  >&lt;p&gt;Yes, it is loaded to memory at once but the processing happens in smaller (10 for now) batches.&lt;/p&gt;</comment>
                                                            <comment id="189504" author="5c38e8d616ac1e4f7cbc660a" created="Wed, 31 Jan 2018 15:55:06 +0000"  >&lt;p&gt;When the records are loaded to memory, what representation are they stored as? Is it just JSON? Or POJOs?&lt;/p&gt;</comment>
                                                            <comment id="189505" author="5e1750638dfdd40ec489bf08" created="Wed, 31 Jan 2018 16:37:51 +0000"  >&lt;p&gt;POJOs.&lt;/p&gt;</comment>
                                                            <comment id="189507" author="5c38e8d616ac1e4f7cbc660a" created="Wed, 31 Jan 2018 16:50:25 +0000"  >&lt;p&gt;So it looks like whatever RMB is doing when it creates/validates the POJOs is heavy enough that we don&apos;t want to just load them all at once. Would it be difficult to restrict the number of POJOs loaded to a certain number?&lt;/p&gt;</comment>
                                                            <comment id="189509" author="5e17508d5361330daaeb6d63" created="Thu, 1 Mar 2018 11:57:15 +0000"  >&lt;p&gt;I released a new version of mod-user-import: 3.0.0. It contains improvements since 2.0.0 and tested in Vagrant box. I haven&apos;t experienced any memory issue in this version. I also did profiling the code and no leak was experienced.&lt;br/&gt;
Note that there is no prebuilt vagrant box in the cloud which runs the latest docker container, I deployed it manually in my box. So please do the same or build a new Vagrant box before testing!&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                            <outwardlinks description="blocks">
                                        <issuelink>
            <issuekey id="80487">FOLIO-1024</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is blocked by">
                                        <issuelink>
            <issuekey id="80584">FOLIO-1112</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="80530">FOLIO-1037</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="47168">CIRC-86</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="64013" name="run.sh" size="668" author="5f8314dfbdef80006f6f572d" created="Wed, 17 Jan 2018 15:15:04 +0000"/>
                            <attachment id="64014" name="user_import_test_data_with_1_users.json" size="711" author="5f8314dfbdef80006f6f572d" created="Wed, 17 Jan 2018 15:39:53 +0000"/>
                            <attachment id="64015" name="user_import_test_data_with_5000_users.json" size="3340045" author="5e1750638dfdd40ec489bf08" created="Wed, 17 Jan 2018 14:28:16 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummarycf">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzy7jj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 17 Jan 2018 15:21:13 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10025" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>[CHART] Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>