<!-- 
RSS generated by JIRA (8.3.4#803005-sha1:1f96e09b3c60279a408a2ae47be3c745f571388b) at Sat Feb 10 16:03:16 JST 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 append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>PFS-JIRA</title>
    <link>https://pfspipe.ipmu.jp/jira</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.3.4</version>
        <build-number>803005</build-number>
        <build-date>13-09-2019</build-date>
    </build-info>


<item>
            <title>[PIPE2D-1138] ingestPfsImagesPgsql.py only partially succeeds when pfsConfig unavailable</title>
                <link>https://pfspipe.ipmu.jp/jira/browse/PIPE2D-1138</link>
                <project id="10002" key="PIPE2D">DRP 2-D Pipeline</project>
                    <description>&lt;p&gt;See discussion on slack: &lt;a href=&quot;https://sumire-pfs.slack.com/archives/C3AU3VCMU/p1672866688320709&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;https://sumire-pfs.slack.com/archives/C3AU3VCMU/p1672866688320709&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We&apos;ve noticed that for certain visits, for example &lt;tt&gt;84574..84578&lt;/tt&gt;, that ingestion via &lt;tt&gt;ingestPfsImagesPgsql.py&lt;/tt&gt; is problematic due to issues identifying the correct &lt;tt&gt;pfsDesign/pfsConfig&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;However, it has been noticed that some of the individual exposures have been ingested over, for example the &lt;tt&gt;b1&lt;/tt&gt; exposures for some visits, while the remainder &lt;tt&gt;b3, r1, r3&lt;/tt&gt; raw images were not.&lt;/p&gt;

&lt;p&gt;Arnaud reports for a test ingest with a list of visits:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;lsst-scipipe-3.0.0) &lt;span class=&quot;error&quot;&gt;&amp;#91;alefur@pfsa-usr01-gb ~&amp;#93;&lt;/span&gt;$ ingestPfsImagesPgsql.py /work/drp --pfsConfigDir /data/raw --mode=copy /data/raw/2023-01-04/sps/PFSA*32.fits&lt;br/&gt;
/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/pipe_base/g590c34a36e+5da9528084/python/lsst/pipe/base/argumentParser.py:782: FutureWarning: Gen2 Butler has been deprecated (PfsButler). It will be removed sometime after v23.0 but no earlier than the end of 2021.&lt;br/&gt;
  namespace.butler = dafPersist.Butler(outputs=outputs)&lt;br/&gt;
/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/pipe_base/g590c34a36e+5da9528084/python/lsst/pipe/base/argumentParser.py:782: FutureWarning: Gen2 Butler has been deprecated (PfsMapper). It will be removed sometime after v23.0 but no earlier than the end of 2021.&lt;br/&gt;
  namespace.butler = dafPersist.Butler(outputs=outputs)&lt;br/&gt;
lsst.CameraMapper INFO: Loading exposure registry from /work/drp/registry.pgsql&lt;br/&gt;
lsst.CameraMapper INFO: Loading calib registry from /work/drp/CALIB/calibRegistry.sqlite3&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;That the first file in the list is ingested:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;lsst.ingestPfs INFO: /data/raw/2023-01-04/sps/PFSA08457432.fits -&lt;del&gt;&amp;lt;copy&amp;gt;&lt;/del&gt;-&amp;gt; /work/drp/2023-01-04/PFSA084574r3.fits&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;But then no further files are ingested after the &lt;tt&gt;pfsConfig&lt;/tt&gt; is not identified:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;numexpr.utils INFO: Note: detected 128 virtual cores but NumExpr set to maximum of 64, check &quot;NUMEXPR_MAX_THREADS&quot; environment variable.&lt;br/&gt;
numexpr.utils INFO: Note: NumExpr detected 128 cores but &quot;NUMEXPR_MAX_THREADS&quot; not set, so enforcing safe limit of 8.&lt;br/&gt;
lsst.ingestPfs WARN: Unable to find PfsConfig file for pfsDesignId=0x0000010001001010, visit=84574; using pfsDesign&lt;br/&gt;
lsst.ingestPfs WARN: Failed to ingest file /data/raw/2023-01-04/sps/PFSA08457432.fits: Unable to find PfsConfig or PfsDesign for pfsDesignId=0x0000010001001010&lt;br/&gt;
Traceback (most recent call last):&lt;br/&gt;
  File &quot;/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/pipe_tasks/gb1d6de0934+6a8639994f/python/lsst/pipe/tasks/ingest.py&quot;, line 625, in run&lt;br/&gt;
    self.runFile(infile, registry, args, pos)&lt;br/&gt;
  File &quot;/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/obs_pfs/w.2022.51/python/lsst/obs/pfs/ingest.py&quot;, line 750, in runFile&lt;br/&gt;
    self.ingestPfsConfig(pfsConfigDir, hduInfoList&lt;span class=&quot;error&quot;&gt;&amp;#91;0&amp;#93;&lt;/span&gt;, args)&lt;br/&gt;
  File &quot;/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/obs_pfs/w.2022.51/python/lsst/obs/pfs/ingest.py&quot;, line 625, in ingestPfsConfig&lt;br/&gt;
    infile = self.findPfsConfig(dirName, fileInfo)&lt;br/&gt;
  File &quot;/work/stack_&lt;a href=&quot;https://pfspipe.ipmu.jp/jira/browse/INFRA-312&quot; title=&quot;Install rubin-env=3 stack at Hilo and summit.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;INFRA-312&quot;&gt;&lt;del&gt;INFRA-312&lt;/del&gt;&lt;/a&gt;/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/obs_pfs/w.2022.51/python/lsst/obs/pfs/ingest.py&quot;, line 601, in findPfsConfig&lt;br/&gt;
    raise RuntimeError(f&quot;Unable to find PfsConfig or PfsDesign for pfsDesignId=0x&lt;/p&gt;
&lt;div class=&quot;error&quot;&gt;&lt;span class=&quot;error&quot;&gt;Unknown macro: {pfsDesignId}&lt;/span&gt; &lt;/div&gt;
&lt;p&gt;&quot;)&lt;br/&gt;
RuntimeError: Unable to find PfsConfig or PfsDesign for pfsDesignId=0x0000010001001010&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;It should either fully ingest all the specified visits, or none. A partial success is confusing and incorrect. It seems that the pfsConfig check is not being applied prior to the first file being ingested.&lt;/p&gt;</description>
                <environment></environment>
        <key id="23190">PIPE2D-1138</key>
            <summary>ingestPfsImagesPgsql.py only partially succeeds when pfsConfig unavailable</summary>
                <type id="3" iconUrl="https://pfspipe.ipmu.jp/jira/secure/viewavatar?size=xsmall&amp;avatarId=10518&amp;avatarType=issuetype">Task</type>
                                            <priority id="10000" iconUrl="https://pfspipe.ipmu.jp/jira/images/icons/priorities/medium.svg">Normal</priority>
                        <status id="10002" iconUrl="https://pfspipe.ipmu.jp/jira/images/icons/statuses/generic.png" description="The issue is resolved, reviewed, and merged">Done</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="hassan">hassan</assignee>
                                    <reporter username="hassan">hassan</reporter>
                        <labels>
                            <label>EngRun</label>
                    </labels>
                <created>Fri, 6 Jan 2023 12:48:41 +0000</created>
                <updated>Mon, 30 Jan 2023 21:40:51 +0000</updated>
                            <resolved>Mon, 30 Jan 2023 21:40:51 +0000</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>1</watches>
                                                                <comments>
                            <comment id="32153" author="hassan" created="Mon, 30 Jan 2023 19:25:20 +0000"  >&lt;p&gt;Ordering of operations updated such that the appropriate &lt;tt&gt;pfsConfig&lt;/tt&gt; is ingested first. Should that fail, an exception is raised and no ingestion of images will take place.&lt;/p&gt;</comment>
                            <comment id="32155" author="hassan" created="Mon, 30 Jan 2023 21:40:51 +0000"  >&lt;p&gt;Merged to master.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="23191">INSTRM-1833</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="23220">INSTRM-1846</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10500" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|zzsvhe:i</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10100" key="com.atlassian.jira.plugin.system.customfieldtypes:userpicker">
                        <customfieldname>Reviewers</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>price</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10005" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="159">PreEngRun10Feb</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10002" key="com.atlassian.jira.plugin.system.customfieldtypes:float">
                        <customfieldname>Story Points</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                        </customfields>
    </item>
</channel>
</rss>