<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:25:34 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-3094] SPIKE:  Investigate Upgrade to Postgres 12</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-3094</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;h2&gt;&lt;a name=&quot;Overview&quot;&gt;&lt;/a&gt;Overview&lt;/h2&gt;
&lt;p&gt;Investigate the breakinging changes in postgres 12 and evaluate what, if anything might need to be done in order to upgrade.&lt;/p&gt;

&lt;h2&gt;&lt;a name=&quot;Scope&quot;&gt;&lt;/a&gt;Scope&lt;/h2&gt;
&lt;p&gt;FOLIO as a whole, not isolated to a given framework or module.&lt;/p&gt;

&lt;h2&gt;&lt;a name=&quot;AcceptanceCriteria&quot;&gt;&lt;/a&gt;Acceptance Criteria&lt;/h2&gt;
&lt;ul&gt;
	&lt;li&gt;Findings are documented (probably on the wiki) and shared with the team&lt;/li&gt;
	&lt;li&gt;User stories are created as needed&lt;/li&gt;
&lt;/ul&gt;
</description>
                <environment></environment>
        <key id="82030">FOLIO-3094</key>
            <summary>SPIKE:  Investigate Upgrade to Postgres 12</summary>
                <type id="10003" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10318?size=medium">Task</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="62e181430b4bf7ad924b3732">Steve Ellis</assignee>
                                                                <reporter accountid="5cf6c546b87c300f36eb7b9a">Craig McNally</reporter>
                                    <labels>
                            <label>R2</label>
                    </labels>
                <created>Mon, 29 Mar 2021 12:56:51 +0000</created>
                <updated>Thu, 20 May 2021 13:27:37 +0000</updated>
                            <resolved>Thu, 20 May 2021 13:27:37 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                <comments>
                                                            <comment id="196925" author="62e181430b4bf7ad924b3732" created="Thu, 6 May 2021 14:43:58 +0000"  >&lt;p&gt;I created a wiki page documenting my process and progress. I&apos;ll update that as things progress. See &lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/FOLIJET/Upgrading+to+Postgres+12&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://folio-org.atlassian.net/wiki/display/FOLIJET/Upgrading+to+Postgres+12&lt;/a&gt;.&lt;/p&gt;</comment>
                                                            <comment id="196930" author="62e181430b4bf7ad924b3732" created="Fri, 7 May 2021 21:14:01 +0000"  >&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/secure/ViewProfile.jspa?accountId=5ee89462f7aa140abd82d11d&quot; class=&quot;user-hover&quot; rel=&quot;5ee89462f7aa140abd82d11d&quot; data-account-id=&quot;5ee89462f7aa140abd82d11d&quot; accountid=&quot;5ee89462f7aa140abd82d11d&quot; rel=&quot;noreferrer&quot;&gt;Julian Ladisch&lt;/a&gt;&#160;I&apos;ve made some edits to the wiki page. Unfortunately I don&apos;t see a clear path to running tests against postgres 12 for modules that use embedded. I saw your edits to the wiki page suggesting that you could use 12 or 13 with embedded but I don&apos;t see a way to do that using their code.&lt;/p&gt;

&lt;p&gt;I do see that you made a contribution to the embedded pg repo &lt;a href=&quot;https://github.com/yandex-qatools/postgresql-embedded/pull/148/files#diff-854c76239cb4969a1e2b714f5beb7b421b363434f64638837f578f33b45fcfbb&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;back in 2018&lt;/a&gt; to add version 11 support. But nobody seems to have added 12 or 13. I&apos;m wondering if you&apos;re thinking that might be something we want to do here (fork embedded pg and add support for 12?).&lt;/p&gt;

&lt;p&gt;In a perfect world embedded pg would just let you point to the pg binary you wanted to use. But I don&apos;t see a way to do that. It&apos;s &quot;embedded&quot; too deep perhaps. &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;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                                                            <comment id="196935" author="5ee89462f7aa140abd82d11d" created="Fri, 7 May 2021 22:10:55 +0000"  >&lt;p&gt;[https://github.com/yandex-qatools/postgresql-embedded&lt;br/&gt;
 ]downloads the postgres binary from&lt;br/&gt;
 &lt;a href=&quot;https://www.enterprisedb.com/downloads/postgres-postgresql-downloads&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://www.enterprisedb.com/downloads/postgres-postgresql-downloads&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is a configuration option to load any version you want:&lt;br/&gt;
 &lt;a href=&quot;https://github.com/yandex-qatools/postgresql-embedded#how-to-use-your-custom-version-of-postgresql&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/yandex-qatools/postgresql-embedded#how-to-use-your-custom-version-of-postgresql&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;However, enterprisedb.com offers PostgreSQL download of version &amp;gt;= 11 for Mac OS X and Windows x86-64 only.&lt;br/&gt;
Not for Linux.&lt;/p&gt;

&lt;p&gt;Embedded postgresql is deprecated. FOLIO switches to the more flexible use of Docker containers.&lt;/p&gt;

&lt;p&gt;Therefore we shouldn&apos;t waist time trying to make embedded postgres work with PostgreSQL 12.&lt;/p&gt;

&lt;p&gt;Removing startEmbeddedPostgres() in the unit tests and using DB_* is probably more easy.&lt;/p&gt;</comment>
                                                            <comment id="196940" author="62e181430b4bf7ad924b3732" created="Sat, 8 May 2021 20:57:31 +0000"  >&lt;p&gt;For modules that haven&apos;t yet made the switch to RMB 32.2+ and are still using embedded, testing against version 12 still seems be possible by bypassing embedded postgres by using a postgres-conf.json file or environment variables. For more info:&#160;&lt;a href=&quot;https://github.com/folio-org/raml-module-builder#postgresql-integration&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://github.com/folio-org/raml-module-builder#postgresql-integration&lt;/a&gt;. Using the conf file I&apos;m able to have the tests in mod-finance-storage run against my local postgres 9.6. However a lot of tests that don&apos;t fail with embedded are failing with local non-embedded, even though I appear to be connecting to the db and queries from the tests are hitting it. Will continue to investigate this.&lt;/p&gt;</comment>
                                                            <comment id="196945" author="62e181430b4bf7ad924b3732" created="Sun, 9 May 2021 14:36:03 +0000"  >&lt;p&gt;I&apos;m able to see all tests pass in mod-finance-storage when running against a local postgres version 10.16, so I&apos;m thinking that embedded pg in RMB 32.1 isn&apos;t hitting 9.6, but rather 10.6, which is the default in embedded if no version is selected, and which appears to be the case in vertex-pg-client.&lt;/p&gt;</comment>
                                                            <comment id="196949" author="62e181430b4bf7ad924b3732" created="Tue, 11 May 2021 20:19:14 +0000"  >&lt;p&gt;In our discussion on monday we decided that version 10 is what I should be testing against, not 9.6. I&apos;ve now run most tests using 10.16. Attaching the script I&apos;m using to run the tests for a given module. This approach works reasonably well, and I&apos;m able to bypass embedded postgres with a local postgres. So far most modules where the approach succeeds (it doesn&apos;t work for everything) seem to indicate that upgrading to 12 will be no problem. Of course there are cases which this may not be the case, some of which may be due to the postgres version change, and some of which may just be because I&apos;m not running the tests in the right way, because the module&apos;s configuration is slightly different than what my script expects.&lt;/p&gt;

&lt;p&gt;See the current state of things in the wiki:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://folio-org.atlassian.net/wiki/display/FOLIJET/Upgrading+to+Postgres+12&quot; class=&quot;external-link&quot; rel=&quot;nofollow noreferrer&quot;&gt;https://folio-org.atlassian.net/wiki/display/FOLIJET/Upgrading+to+Postgres+12&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                                                            <comment id="196953" author="62e181430b4bf7ad924b3732" created="Fri, 14 May 2021 20:58:48 +0000"  >&lt;p&gt;Adding the testing-outcomes.zip which contains detailed logs (4 files) for each of the tests run. I changed my approach to logging part way through my testing as I tried to script more things. Mosts test produced 4 log files:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;The output of the postgres log with logging level set to info for version 10&lt;/li&gt;
	&lt;li&gt;Same for version 12&lt;/li&gt;
	&lt;li&gt;The output from mvn clean install invoked on 10&lt;/li&gt;
	&lt;li&gt;Same for version 12&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;If your&#160; module has a warning sign in the wiki table these logs might provide meaningful information.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="81300">FOLIO-2145</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="64379" name="run-tests.sh" size="2540" author="62e181430b4bf7ad924b3732" created="Tue, 11 May 2021 20:11:02 +0000"/>
                            <attachment id="64380" name="test-outcomes.zip" size="4330407" author="62e181430b4bf7ad924b3732" created="Wed, 19 May 2021 18:17:25 +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="10144"><![CDATA[Core: Platform]]></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|hzx3o9:hzza</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10046" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Release</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10040"><![CDATA[R2 2021]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="1428">CP: sprint 113</customfieldvalue>
    <customfieldvalue id="1429">CP: sprint 114</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10044" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3.0</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 May 2021 14:43:58 +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>