<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du in Administration and Deployment</title>
    <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/982349#M30612</link>
    <description>&lt;P&gt;The transfer to disk instead of the database with the pyviyatools helped a lot, the backup time is now 'normal' about 1 hour instead of 5 hours. The inode table is not full anymore.&lt;/P&gt;</description>
    <pubDate>Fri, 23 Jan 2026 06:41:20 GMT</pubDate>
    <dc:creator>paterd2</dc:creator>
    <dc:date>2026-01-23T06:41:20Z</dc:date>
    <item>
      <title>sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob dumps</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965938#M29938</link>
      <description>&lt;P&gt;Dear community experts.&lt;/P&gt;
&lt;P&gt;I have an issue with inodes in our backups , especially postgres .&lt;BR /&gt;wc -l gives me&amp;nbsp;642258&amp;nbsp;&lt;BR /&gt;642258 .........../20250507-010211F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;/P&gt;
&lt;P&gt;The issue is that it looks that there are orphaned largeobjects.&lt;/P&gt;
&lt;P&gt;I suspect the export and import of reports.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Daily we export and import our reports.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;We delete the old ones, but it looks like this does not correctly delete the large objects.&lt;/P&gt;
&lt;P&gt;We use 'sas-viya transfer export&amp;nbsp; ' and 'sas-viya transfer delete'.&lt;/P&gt;
&lt;P&gt;sh-4.4$ vacuumlo -n SharedServices&lt;/P&gt;
&lt;P&gt;Connected to database "SharedServices"&lt;/P&gt;
&lt;P&gt;Test run: no large objects will be removed!&lt;/P&gt;
&lt;P&gt;Checking content_data_oid_no in files.file_content&lt;/P&gt;
&lt;P&gt;Checking content_bin in transfer.large_object&lt;/P&gt;
&lt;P&gt;Checking content_bin in transfer.map_object&lt;/P&gt;
&lt;P&gt;Checking object_content_txt in transfer.package_object&lt;/P&gt;
&lt;P&gt;Checking object_summary_txt in transfer.package_object&lt;/P&gt;
&lt;P&gt;Checking error_txt in transfer.transfer_export_job&lt;/P&gt;
&lt;P&gt;Checking request_txt in transfer.transfer_export_job&lt;/P&gt;
&lt;P&gt;Checking error_txt in transfer.transfer_export_task&lt;/P&gt;
&lt;P&gt;Checking error_txt in transfer.transfer_import_job&lt;/P&gt;
&lt;P&gt;Checking request_txt in transfer.transfer_import_job&lt;/P&gt;
&lt;P&gt;Checking error_txt in transfer.transfer_import_task&lt;/P&gt;
&lt;P&gt;Checking model_xml_doc_oid in workflow.wf_definition_model&lt;/P&gt;
&lt;P&gt;Checking message_json_doc_oid in workflow.wf_history_event&lt;/P&gt;
&lt;P&gt;Would remove 447798 large objects from database "SharedServices".&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Do we have to run : vacuumlo SharedServices on a regular schedule ?&lt;/LI&gt;
&lt;LI&gt;Is this normal behavior of 'sas-viya transfer' ?&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Regards&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Dik.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 07 May 2025 08:32:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965938#M29938</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-05-07T08:32:05Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965940#M29939</link>
      <description>&lt;P&gt;Hi Dik,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The transfer packages are stored in the &lt;SPAN&gt;SharedServices PostgreSQL database and&amp;nbsp;&lt;/SPAN&gt;can only be deleted using the &lt;A href="https://documentation.sas.com/doc/en/sasadmincdc/default/calcli/n01xwtcatlinzrn1gztsglukb34a.htm" target="_self"&gt;SAS CLI&lt;/A&gt;, rather than through any of the GUIs. There is a great post from&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class=""&gt;AllenCunningham&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN class=""&gt;which provides much more detail&amp;nbsp;here:&amp;nbsp;&lt;A title="Managing SAS Viya Transfer Packages" href="https://communities.sas.com/t5/SAS-Communities-Library/Managing-SAS-Viya-Transfer-Packages/ta-p/839056" target="_self"&gt;Managing SAS Viya Transfer Packages.&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;TDLR;&lt;/U&gt;&lt;/P&gt;&lt;P&gt;'Transfer List' will show you all packages:&lt;/P&gt;&lt;LI-CODE lang="sas"&gt;./sas-viya transfer list&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;'Transfer Delete' will then delete a specific package:&lt;/P&gt;&lt;PRE&gt;./sas-viya transfer delete --id &amp;lt;package_id&amp;gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;To delete multiple packages you can use&amp;nbsp;&lt;A href="https://github.com/sassoftware/pyviyatools/blob/master/README.md" target="_self"&gt;Python Tools for SAS Viya&lt;/A&gt;,&amp;nbsp;&lt;A href="https://github.com/sassoftware/pyviyatools/blob/master/listtransferpackages.py" target="_self"&gt;listtransferpackages.py&lt;/A&gt;&amp;nbsp; allows you to create a CSV file with filters which can then be used as input into&amp;nbsp;&lt;A href="https://github.com/sassoftware/pyviyatools/blob/master/deletetransferpackages.py" target="_self"&gt;deletetransferpackages.py&lt;/A&gt;&amp;nbsp;to delete multiple packages.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jack&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 07 May 2025 09:52:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965940#M29939</guid>
      <dc:creator>JackMcGuire</dc:creator>
      <dc:date>2025-05-07T09:52:04Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965978#M29940</link>
      <description>The transfer service will call lo_unlink to the postgres database when you delete a package to delete the associated large object. If this call returns an error from postgres I would expect you to see an error in the transfer service log. The vacuumlo utility is the appropriate solution for removing those large objects that have been orphaned, so I would agree this is something that should be done periodically along with your other Postgres routine maintenance tasks like vacuuming and reindexing.</description>
      <pubDate>Wed, 07 May 2025 13:52:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/965978#M29940</guid>
      <dc:creator>gwootton</dc:creator>
      <dc:date>2025-05-07T13:52:15Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966044#M29941</link>
      <description>Greg , we will schedule this. I will also take a look at the log.</description>
      <pubDate>Thu, 08 May 2025 05:56:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966044#M29941</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-05-08T05:56:22Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966045#M29942</link>
      <description>Jack, thank you for this advice. We do use these transfer cli commands.&lt;BR /&gt;I will take a closer look at the Python Tools for SAS Viya.&lt;BR /&gt;Regards, &lt;BR /&gt;Dik</description>
      <pubDate>Thu, 08 May 2025 05:58:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966045#M29942</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-05-08T05:58:40Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966136#M29946</link>
      <description>Greg , there are many ERRORS in the transfer log..... &lt;BR /&gt;Here is an example.&lt;BR /&gt;&lt;BR /&gt;{"version":1,"timeStamp":"2025-04-23T19:28:56.65+02:00","level":"error","source":"sas-transfer","message":"[TRANSFER_PROMOTION_EXCEPTION] Exception occurred while importing a package.\norg&lt;BR /&gt;.springframework.orm.jpa.JpaSystemException: Unable to access lob stream; nested exception is org.hibernate.HibernateException: Unable to access lob stream\nCaused by: org.hibernate.Hibern&lt;BR /&gt;ateException: Unable to access lob stream\nCaused by: org.postgresql.util.PSQLException: ERROR: large object 30416 does not exist","properties":{"logger":"com.sas.transfer.domain.Promotion&lt;BR /&gt;Manager","thread":"transfer-service-request-pool-10-thread-1"},"messageKey":"com.sas.transfer.logging.LogMessages.TRANSFER_PROMOTION_EXCEPTION"}&lt;BR /&gt;</description>
      <pubDate>Fri, 09 May 2025 07:42:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966136#M29946</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-05-09T07:42:42Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966167#M29947</link>
      <description>This error is an import failure. When importing you first upload a package to the transfer service which would store the package as a large object, then import on that package ID. This error message is saying the package ID we are trying to import is associated with a large object that isn't in the database, so this is sort of the opposite of your initial concern, where we have a reference to the large object in the transfer schema table, but the large object itself isn't present.</description>
      <pubDate>Fri, 09 May 2025 15:14:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/966167#M29947</guid>
      <dc:creator>gwootton</dc:creator>
      <dc:date>2025-05-09T15:14:03Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/978799#M30443</link>
      <description>&lt;P&gt;I have some interesting information on this subject.&lt;/P&gt;
&lt;P&gt;Daily we export the SAS reports.&lt;/P&gt;
&lt;P&gt;We keep this for 30 days.&lt;/P&gt;
&lt;P&gt;Side effect is that this is stored in the postgres database.&lt;/P&gt;
&lt;P&gt;about 80% of the pg_largeobjects is from the sas - package exports.&lt;/P&gt;
&lt;P&gt;Giving the following effect.&lt;/P&gt;
&lt;P&gt;psql # select count from pg_largeobject&lt;BR /&gt;where loid in ( select object_content_txt from transfer.package_object ) or loid in ( select object_summary_txt from transfer.package_object ) ;&lt;BR /&gt;count&lt;BR /&gt;----------&lt;BR /&gt;15337937&lt;BR /&gt;(1 row)&lt;/P&gt;
&lt;P&gt;SharedServices=# select count from pg_largeobject;&lt;BR /&gt;count&lt;BR /&gt;----------&lt;BR /&gt;17444165&lt;BR /&gt;(1 row)&lt;/P&gt;
&lt;P&gt;The blobs.toc file containts over 500.000 records, we keep 15 days.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;$ wc -l viya/data/*/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;597579 viya/data/20251022-200214F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;634932 viya/data/20251026-010016F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;562805 viya/data/20251027-200210F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;577580 viya/data/20251028-200018F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;592384 viya/data/20251029-200214F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;607219 viya/data/20251030-200210F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;621721 viya/data/20251031-200207F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;620364 viya/data/20251102-010217F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;566437 viya/data/20251103-200213F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;578777 viya/data/20251104-200208F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;583160 viya/data/20251105-200210F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;597774 viya/data/20251106-200209F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;612399 viya/data/20251107-200208F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;401607 viya/data/20251109-010213F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;550359 viya/data/20251110-200210F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;564687 viya/data/20251111-200209F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;579554 viya/data/20251112-200213F/__default__/postgres/SharedServices_pg_dump.dmp/blobs.toc&lt;BR /&gt;9849338 total&lt;/P&gt;
&lt;P&gt;This is a large amount of inodes ...&lt;/P&gt;
&lt;P&gt;We are now considering another approach.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Btw : we run vacuum_lo on a regular base.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;regards,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Dik&lt;/P&gt;</description>
      <pubDate>Thu, 13 Nov 2025 09:09:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/978799#M30443</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-11-13T09:09:39Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/979030#M30458</link>
      <description>vacuumlo would remove large objects that are orphaned, (i.e. no table references the loid). Your query returns objects whose loid is in the table, so all the packages are still in the transfer service. Are you deleting the packages after downloading them using the command Jack mentioned? Did you go back and delete old packages?</description>
      <pubDate>Tue, 18 Nov 2025 16:47:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/979030#M30458</guid>
      <dc:creator>gwootton</dc:creator>
      <dc:date>2025-11-18T16:47:32Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/979080#M30461</link>
      <description>&lt;P&gt;Greg,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;thanks for your answer.&lt;/P&gt;
&lt;P&gt;We are now using the pyviyatools on test and will implement this in our production environments.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://communities.sas.com/t5/SAS-Communities-Library/Selective-backup-and-restore-of-SAS-Viya-Content/ta-p/968018" target="_blank"&gt;Selective backup and restore of SAS Viya Content&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;I will let you know the results after we deleted all the transfer packages.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Dik&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Nov 2025 07:39:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/979080#M30461</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2025-11-19T07:39:08Z</dc:date>
    </item>
    <item>
      <title>Re: sas-viya transfer delete leaves orphaned large objects behind resulting in many postgres blob du</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/982349#M30612</link>
      <description>&lt;P&gt;The transfer to disk instead of the database with the pyviyatools helped a lot, the backup time is now 'normal' about 1 hour instead of 5 hours. The inode table is not full anymore.&lt;/P&gt;</description>
      <pubDate>Fri, 23 Jan 2026 06:41:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/sas-viya-transfer-delete-leaves-orphaned-large-objects-behind/m-p/982349#M30612</guid>
      <dc:creator>paterd2</dc:creator>
      <dc:date>2026-01-23T06:41:20Z</dc:date>
    </item>
  </channel>
</rss>

