<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 22:22:48 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>[MODINV-752] Mod inventory fails to fetch individual bound-with items with more than 100 bound instances</title>
                <link>https://folio-org.atlassian.net/browse/MODINV-752</link>
                <project id="10144" key="MODINV">mod-inventory</project>
                    <description>&lt;p&gt;&lt;b&gt;Overview:&lt;/b&gt;&lt;br/&gt;
&lt;b&gt;Steps to Reproduce:&lt;/b&gt;&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Log into some FOLIO environment&#160;&lt;/li&gt;
	&lt;li&gt;Create a Bound-with structure in Inventory where one item is &quot;bound&quot; to more than 100 titles (the item that made FOLIO crash had 360+ Instances attached).&lt;/li&gt;
	&lt;li&gt;Locate this item in the Inventory UI, and click the item.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;&lt;b&gt;Expected Results:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;The Item details window is displayed&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Actual Results:&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;The UI hangs, since the call to GET /inventory/items/{uuid} times out (HTTP 504)&lt;/p&gt;

&lt;p&gt;Looking at the logs the underlying GET&#160; request gets a Entity too large (or equivalent) error.&lt;/p&gt;

&lt;p&gt;&#160; &lt;span class=&quot;image-wrap&quot; style=&quot;&quot;&gt;&lt;img src=&quot;/rest/api/3/attachment/content/47040&quot; style=&quot;border: 0px solid black&quot; /&gt;&lt;/span&gt;&lt;br/&gt;
&lt;b&gt;Additional Information:&lt;/b&gt;&lt;br/&gt;
Looking at the &lt;a href=&quot;https://github.com/folio-org/mod-inventory/blob/68fc2aed9174d2a53370e19e0ed0fb0d2b93c276/src/main/java/org/folio/inventory/resources/Items.java#L1042&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;source code for fetching the bound-with titles&lt;/a&gt;, it seems mod-inventory is creating a GET request with 360 uuids, which makes the request fail due to the request gets larger than the allowed size.&#160;&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;
&lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt; boundWithPartsByItemIdsQuery = &lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;.format(&lt;span class=&quot;code-quote&quot;&gt;&quot;itemId==(%s)&quot;&lt;/span&gt;,        itemIds.stream()          .map(&lt;span class=&quot;code-object&quot;&gt;String&lt;/span&gt;::toString)          .collect(Collectors.joining(&lt;span class=&quot;code-quote&quot;&gt;&quot; or &quot;&lt;/span&gt;))); &lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;&lt;b&gt;Interested parties:&lt;/b&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="60686">MODINV-752</key>
            <summary>Mod inventory fails to fetch individual bound-with items with more than 100 bound instances</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="10001" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p2.svg">P2</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="5bffed5e2434bf3a1a91d37a">Niels Erik Nielsen</assignee>
                                                                <reporter accountid="712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2">Theodor Tolstoy (One-Group.se)</reporter>
                                    <labels>
                    </labels>
                <created>Thu, 6 Oct 2022 14:17:50 +0000</created>
                <updated>Sat, 28 Oct 2023 10:34:57 +0000</updated>
                            <resolved>Thu, 3 Nov 2022 11:51:31 +0000</resolved>
                                                    <fixVersion>19.0.1</fixVersion>
                    <fixVersion>20.0.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                <comments>
                                                            <comment id="143756" author="600c4a3b74c3e200718680d8" created="Thu, 6 Oct 2022 15:52:15 +0000"  >&lt;p&gt;This use case is not as unusual as it sounds as bound pamphlets and microfilms often have large number of boundwiths&lt;/p&gt;</comment>
                                                            <comment id="143757" author="5af5e627525ba96b58654f12" created="Mon, 10 Oct 2022 18:31:25 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=557058%3Af80403de-e149-421e-8750-af45c853402f&quot; class=&quot;user-hover&quot; rel=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; data-account-id=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; accountid=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; rel=&quot;noreferrer&quot;&gt;Charlotte Whitt&lt;/a&gt; There&apos;s no dev team on this bug. Could you review and assign? Thank you!&lt;/p&gt;</comment>
                                                            <comment id="143758" author="5af5e627525ba96b58654f12" created="Fri, 21 Oct 2022 21:29:46 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=557058%3Af80403de-e149-421e-8750-af45c853402f&quot; class=&quot;user-hover&quot; rel=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; data-account-id=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; accountid=&quot;557058:f80403de-e149-421e-8750-af45c853402f&quot; rel=&quot;noreferrer&quot;&gt;Charlotte Whitt&lt;/a&gt;&#160; Would this bug belong to Prokopovych or some other dev team? It probably should get moved into the proper MOD project. Thank you!&lt;/p&gt;</comment>
                                                            <comment id="143759" author="5bffed5e2434bf3a1a91d37a" created="Thu, 3 Nov 2022 11:59:13 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=63e2a2771b13d42998e4e706&quot; class=&quot;user-hover&quot; rel=&quot;63e2a2771b13d42998e4e706&quot; data-account-id=&quot;63e2a2771b13d42998e4e706&quot; accountid=&quot;63e2a2771b13d42998e4e706&quot; rel=&quot;noreferrer&quot;&gt;Marc Johnson&lt;/a&gt;, would you like me to roll release 19.0.1 with this fix, tagged for Nolana R3 BugFix,&#160; I suppose?&lt;/p&gt;</comment>
                                                            <comment id="143760" author="63e2a2771b13d42998e4e706" created="Thu, 3 Nov 2022 12:21:07 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5bffed5e2434bf3a1a91d37a&quot; class=&quot;user-hover&quot; rel=&quot;5bffed5e2434bf3a1a91d37a&quot; data-account-id=&quot;5bffed5e2434bf3a1a91d37a&quot; accountid=&quot;5bffed5e2434bf3a1a91d37a&quot; rel=&quot;noreferrer&quot;&gt;Niels Erik Nielsen&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;would you like me to roll release 19.0.1 with this fix, tagged for Nolana R3 BugFix,  I suppose?&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Sure. Given this was intended for back porting, the issue should NOT be closed, it should be in the status &lt;tt&gt;awaiting release&lt;/tt&gt;. And there should be a release issue for 19.0.1.&lt;/p&gt;

&lt;p&gt;Does this issue also occur on the mainline (for the next feature release for Orchid)?&lt;/p&gt;</comment>
                                                            <comment id="143761" author="63e2a2771b13d42998e4e706" created="Thu, 3 Nov 2022 12:22:22 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=712020%3A0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; class=&quot;user-hover&quot; rel=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; data-account-id=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; accountid=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; rel=&quot;noreferrer&quot;&gt;Theodor Tolstoy (One-Group.se)&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Create a Bound-with structure in Inventory where one item is &quot;bound&quot; to more than 100 titles (the item that made FOLIO crash had 360+ Instances attached)&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Out of curiosity, what kinds of items are bound together in quantities of 360+?&lt;/p&gt;</comment>
                                                            <comment id="143762" author="5bffed5e2434bf3a1a91d37a" created="Thu, 3 Nov 2022 12:33:22 +0000"  >&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=600c4a3b74c3e200718680d8&quot; class=&quot;user-hover&quot; rel=&quot;600c4a3b74c3e200718680d8&quot; data-account-id=&quot;600c4a3b74c3e200718680d8&quot; accountid=&quot;600c4a3b74c3e200718680d8&quot; rel=&quot;noreferrer&quot;&gt;Kyle Banerjee&lt;/a&gt;&#160;added a comment -&#160;06/Oct/22 3:52 PM&lt;br/&gt;
This use case is not as unusual as it sounds as bound pamphlets and microfilms often have large number of boundwiths&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&#160;&lt;/p&gt;</comment>
                                                            <comment id="143763" author="63e2a2771b13d42998e4e706" created="Thu, 3 Nov 2022 13:07:39 +0000"  >&lt;p&gt;Thanks &lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5bffed5e2434bf3a1a91d37a&quot; class=&quot;user-hover&quot; rel=&quot;5bffed5e2434bf3a1a91d37a&quot; data-account-id=&quot;5bffed5e2434bf3a1a91d37a&quot; accountid=&quot;5bffed5e2434bf3a1a91d37a&quot; rel=&quot;noreferrer&quot;&gt;Niels Erik Nielsen&lt;/a&gt; I missed that comment.&lt;/p&gt;

&lt;p&gt;I think this reminds me why I find &lt;tt&gt;bound with&lt;/tt&gt; to be such a strange modelling of the domain.&lt;/p&gt;</comment>
                                                            <comment id="143764" author="712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2" created="Thu, 3 Nov 2022 13:48:03 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=63e2a2771b13d42998e4e706&quot; class=&quot;user-hover&quot; rel=&quot;63e2a2771b13d42998e4e706&quot; data-account-id=&quot;63e2a2771b13d42998e4e706&quot; accountid=&quot;63e2a2771b13d42998e4e706&quot; rel=&quot;noreferrer&quot;&gt;Marc Johnson&lt;/a&gt;&#160; another reason is that other systems have functional limitations that encourage libraries from over-using the boundwith structure for other purposes than initially intended.&lt;/p&gt;</comment>
                                                            <comment id="143765" author="63e2a2771b13d42998e4e706" created="Thu, 3 Nov 2022 14:19:21 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=712020%3A0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; class=&quot;user-hover&quot; rel=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; data-account-id=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; accountid=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; rel=&quot;noreferrer&quot;&gt;Theodor Tolstoy (One-Group.se)&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;another reason is that other systems have functional limitations that encourage libraries from over-using the boundwith structure for other purposes than initially intended.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;I love these kinds of answers, because that tells me this isn&apos;t necessarily an underlying domain challenge and rather an implementation challenge.&lt;/p&gt;

&lt;p&gt;I might hope that building and implementing FOLIO might be an opportunity to try to remove those limitations, rather than carry over those from past systems.&lt;/p&gt;</comment>
                                                            <comment id="143766" author="712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2" created="Thu, 3 Nov 2022 16:11:33 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=63e2a2771b13d42998e4e706&quot; class=&quot;user-hover&quot; rel=&quot;63e2a2771b13d42998e4e706&quot; data-account-id=&quot;63e2a2771b13d42998e4e706&quot; accountid=&quot;63e2a2771b13d42998e4e706&quot; rel=&quot;noreferrer&quot;&gt;Marc Johnson&lt;/a&gt;&#160; this irony of it is that for that to happen, FOLIO needs to have other areas build out/completed as well. But I completely agree.&lt;/p&gt;</comment>
                                                            <comment id="143767" author="63e2a2771b13d42998e4e706" created="Fri, 4 Nov 2022 10:38:06 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=712020%3A0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; class=&quot;user-hover&quot; rel=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; data-account-id=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; accountid=&quot;712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2&quot; rel=&quot;noreferrer&quot;&gt;Theodor Tolstoy (One-Group.se)&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;this irony of it is that for that to happen, FOLIO needs to have other areas build out/completed as well&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Oh yeah, I&apos;m sure folks are using features inappropriately as workarounds for features that haven&apos;t been built yet.&lt;/p&gt;</comment>
                                                            <comment id="143768" author="5bffed5e2434bf3a1a91d37a" created="Fri, 4 Nov 2022 13:10:29 +0000"  >&lt;p&gt;The real-life existence of bound-withs shows that the basic data design of Inventory is incomplete (or flawed, to be harsh). The current&#160; structure of instances-holdingsRecords-items&#160; presumes that a title can manifests as multiple circulatable &quot;items&quot; &#8211; which is obviously true &amp;#8211; but that a circulatable item can only contain one title &#8211; which is not true; because, bound-withs.&#160;&lt;/p&gt;

&lt;p&gt;Implementing bound-withs as an add-on to that data structure &#8211; rather than refactoring the basic data design to inherently accommodate for the concept of bound-withs &#8211; is a half-measure, and thus likely to be strange one way or the other.&lt;/p&gt;</comment>
                                                            <comment id="143769" author="63e2a2771b13d42998e4e706" created="Fri, 4 Nov 2022 13:43:57 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5bffed5e2434bf3a1a91d37a&quot; class=&quot;user-hover&quot; rel=&quot;5bffed5e2434bf3a1a91d37a&quot; data-account-id=&quot;5bffed5e2434bf3a1a91d37a&quot; accountid=&quot;5bffed5e2434bf3a1a91d37a&quot; rel=&quot;noreferrer&quot;&gt;Niels Erik Nielsen&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;The real-life existence of bound-withs shows that the basic data design of Inventory is incomplete (or flawed, to be harsh).&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;It is indeed incomplete (like pretty much any software that is built incrementally).&lt;/p&gt;

&lt;p&gt;I certainly wasn&apos;t aware of the notion of bound withs when I was involved in the early days of development on inventory. I don&apos;t recall conversations about them at the time. It&apos;s hard to design for expectations / needs that folks don&apos;t describe.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;The current  structure of instances-holdingsRecords-items  presumes that a title can manifests as multiple circulatable &quot;items&quot; &#8211; which is obviously true &#8211; but that a circulatable item can only contain one title &#8211; which is not true; because, bound-withs. &lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Indeed, IIRC I was an advocate for changing the fundamental model of inventory in a similar manner to this.&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;Implementing bound-withs as an add-on to that data structure &#8211; rather than refactoring the basic data design to inherently accommodate for the concept of bound-withs &#8211; is a half-measure, and thus likely to be strange one way or the other.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;That is one of the reasons I argued &lt;em&gt;against&lt;/em&gt; going this route and why I stepped away from the current implementation of bound withs.&lt;/p&gt;

&lt;p&gt;I am a little surprised by this comment, from my recollection of the working group around bound withs, I thought you were an advocate of this approach.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="60695">MODINV-753</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="46505">UIIN-2478</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="47040" name="image-2022-10-06-16-08-55-613.png" size="10926" author="712020:0a02d059-b8b9-48b3-8a58-727ec44d05d2" created="Thu, 6 Oct 2022 14:08:56 +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_10057" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Development Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10178"><![CDATA[Sif]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10063" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>PO Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10106" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>RCA Group</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10367"><![CDATA[TBD]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i05jfv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10046" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Release</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10062"><![CDATA[Nolana (R3 2022) Bug Fix]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="1675">Sif Sprint 151</customfieldvalue>
    <customfieldvalue id="1679">Sif Sprint 152</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10024" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>[CHART] Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 6 Oct 2022 15:52:15 +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>