<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Fri Feb 09 00:40:30 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>[UXPROD-4514] Review and implement table key constraints and indexes in Licenses</title>
                <link>https://folio-org.atlassian.net/browse/UXPROD-4514</link>
                <project id="10000" key="UXPROD">UX Product</project>
                    <description>&lt;p&gt;&lt;b&gt;Current situation or problem&lt;/b&gt;:&lt;/p&gt;

&lt;p&gt;Some tables in Licenses are missing indexes that could increase performance. Additionally some tables are missing primary key constraints which means that cannot be included in metadb reporting&lt;/p&gt;

&lt;p&gt;&lt;b&gt;In scope&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Firstly all foreign keys should have a foreign key constraint, and I think there are ones that do not. I haven&apos;t changed these because that has wider implications for existing data (we have been bitten by this recently).&lt;/li&gt;
	&lt;li&gt;Check for any tables missing primary keys and fix (including license_document_attachment and license_tag)&lt;/li&gt;
	&lt;li&gt;All foreign keys should be indexed and should be the default index type from postgres (Btree). You can use liquibases&#160;&lt;tt&gt;CreateIndex&lt;/tt&gt;&lt;/li&gt;
	&lt;li&gt;If a table is a resolution of a many to many and has 2 foreign keys you should add a composite index (specify both columns in the create index entry). Order of columns here can be important, and the general rule is anything used in a join or where clause more frequently should be defined first.&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;There is no need to add indexes for the columns individually as well, unless you need a free text as well as a composite match, in which case add a GIN as below for the single field as well&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Anything you search on using the text box should have a GIN index. This requires a special kind of entry in the migrations.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&#160;&lt;br/&gt;
When adding foreign key constraints need to handle the situation where people have removed a foreign reference otherwise there will be issues when the migration &#160;to add the constraint attempts to run.&lt;br/&gt;
&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="12923">UXPROD-4514</key>
            <summary>Review and implement table key constraints and indexes in Licenses</summary>
                <type id="10002" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10322?size=medium">New Feature</type>
                                            <priority id="10005" iconUrl="https://dev.folio.org/assets/jira-priority/tbd.svg">TBD</priority>
                        <status id="1" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                                        <assignee accountid="557058:f42d9c43-226d-4aa3-bb31-9b2dd07920aa">Owen Stephens</assignee>
                                                                <reporter accountid="557058:f42d9c43-226d-4aa3-bb31-9b2dd07920aa">Owen Stephens</reporter>
                                    <labels>
                            <label>erm</label>
                            <label>licenses</label>
                    </labels>
                <created>Tue, 17 Oct 2023 10:00:38 +0000</created>
                <updated>Thu, 1 Feb 2024 11:17:03 +0000</updated>
                                                            <fixVersion>Quesnelia (R1 2024)</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                    <issuelinks>
                            <issuelinktype id="10001">
                    <name>Cloners</name>
                                            <outwardlinks description="clones">
                                        <issuelink>
            <issuekey id="12922">UXPROD-4513</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10008">
                    <name>Defines</name>
                                                                <inwardlinks description="is defined by ">
                                        <issuelink>
            <issuekey id="44457">ERM-3073</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </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="10141"><![CDATA[Bienenvolk]]></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_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i08b54:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10046" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Release</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10079"><![CDATA[Quesnelia (R1 2024)]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    </customfields>
    </item>
</channel>
</rss>