<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 04:02: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 append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-23165] When using gridFS, expiration time (ttl) set by client application works for documents in metadata collection but does not work in chunks collection</title>
                <link>https://jira.mongodb.org/browse/SERVER-23165</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;When using gridFS, expiration time (ttl) set by client application works for documents in metadata collection but does not work in chunks collection. This results in chunks not getting cleaned up from the mongodb. However when we do delete operation, both meta data and chunks gets deleted as expected. Can you please confirm if ttl-expiration time is supposed to work with chunks ?  (apparently it does not in our testing).  &lt;/p&gt;</description>
                <environment></environment>
        <key id="272811">SERVER-23165</key>
            <summary>When using gridFS, expiration time (ttl) set by client application works for documents in metadata collection but does not work in chunks collection</summary>
                <type id="6" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14720&amp;avatarType=issuetype">Question</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/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="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="stephen.steneker@mongodb.com">Stennie Steneker</assignee>
                                    <reporter username="taelen.lewis">Taelen Lewis</reporter>
                        <labels>
                    </labels>
                <created>Wed, 16 Mar 2016 01:35:07 +0000</created>
                <updated>Fri, 29 Apr 2016 05:57:28 +0000</updated>
                            <resolved>Fri, 29 Apr 2016 05:56:36 +0000</resolved>
                                                                    <component>GridFS</component>
                                        <votes>0</votes>
                                    <watches>8</watches>
                                                                                                                <comments>
                            <comment id="1250007" author="stennie" created="Fri, 29 Apr 2016 05:56:21 +0000"  >&lt;p&gt;Hi Taelen,&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://docs.mongodb.org/manual/core/gridfs/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;GridFS&lt;/a&gt; is a driver specification for storing and retrieving large files in MongoDB. While GridFS stores files in two collections (&lt;tt&gt;files&lt;/tt&gt; metadata and binary &lt;tt&gt;chunks&lt;/tt&gt;), the MongoDB server is generally unaware of the relationship between documents in these collections. &lt;a href=&quot;https://docs.mongodb.org/manual/core/index-ttl/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;TTL indexes&lt;/a&gt; only apply to a single collection and require a date field in order to find expired documents to remove. The current GridFS API only specifies an &lt;tt&gt;uploadDate&lt;/tt&gt; field for the &lt;tt&gt;files&lt;/tt&gt; collection; &lt;tt&gt;chunks&lt;/tt&gt; do not have any date information.&lt;/p&gt;

&lt;p&gt;To automate expiry of GridFS documents within the current design, I would suggest writing an application/script which searches for expired GridFS files and removes these via the GridFS API. An expiry script could be scheduled to run periodically via &lt;tt&gt;cron&lt;/tt&gt; or similar, and will have an equivalent outcome to a TTL index. An index on &lt;tt&gt;files.uploadDate&lt;/tt&gt; should be added to support finding expired documents.&lt;/p&gt;

&lt;p&gt;Alternatively, you could copy the &lt;tt&gt;uploadDate&lt;/tt&gt; field from the &lt;tt&gt;files&lt;/tt&gt; collection to the associated &lt;tt&gt;chunks&lt;/tt&gt; after uploading a new document. This would allow TTL indexes to be set on both the &lt;tt&gt;files&lt;/tt&gt; and &lt;tt&gt;chunks&lt;/tt&gt; collections, but adds extra overhead (two new TTL indexes on the collections and an extra field on every chunk document) as compared to using the GridFS API to remove. The TTL indexes would also be independent, so this approach may result in errors if GridFS files are read close to their expiry and some chunks have already been deleted.&lt;/p&gt;

&lt;p&gt;Regards,&lt;br/&gt;
Stephen&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 16 Mar 2016 12:51:11 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        7 years, 41 weeks, 5 days ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>stephen.steneker@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            7 years, 41 weeks, 5 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>stephen.steneker@mongodb.com</customfieldvalue>
            <customfieldvalue>taelen.lewis</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrkdh3:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hsjgp3:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hsf55r:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>