<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 00:03:07 CET 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>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLCMNT-97] Flushing cache after commenting is triggered too late</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLCMNT-97</link>
                <project id="10310" key="MGNLCMNT">Commenting (closed)</project>
                    <description>&lt;p&gt;Avoid sending cached response after a comment has been posted!&lt;/p&gt;

&lt;p&gt;When a comment is posted, the page which &quot;has&quot; the comments must be flushed from the cache; this triggered by info.magnolia.module.commenting.cache.ReferencedPageFlushPolicy.&lt;br/&gt;
Unfortunatly, this happens mostly too late.&lt;br/&gt;
=&amp;gt; The user which posted a comment has to reload the page to see the comment.&lt;br/&gt;
Triggering the flushing of the page should occur earlier.&lt;/p&gt;

&lt;p&gt;Note, that this is a follow-up-ticket of &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLCMNT-94&quot; title=&quot;make sure commenting works with anonymous user&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLCMNT-94&quot;&gt;&lt;del&gt;MGNLCMNT-94&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</description>
                <environment></environment>
        <key id="36618">MGNLCMNT-97</key>
            <summary>Flushing cache after commenting is triggered too late</summary>
                <type id="1" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10883&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/critical.svg">Critical</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="cmeier">Christoph Meier</assignee>
                                    <reporter username="cmeier">Christoph Meier</reporter>
                        <labels>
                    </labels>
                <created>Tue, 18 Feb 2014 15:48:24 +0100</created>
                <updated>Wed, 5 Mar 2014 20:05:37 +0100</updated>
                            <resolved>Wed, 5 Mar 2014 14:49:38 +0100</resolved>
                                                    <fixVersion>2.2</fixVersion>
                                    <component>Cache</component>
                    <component>client-ui</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="80743" author="cmeier" created="Tue, 4 Mar 2014 17:04:23 +0100"  >&lt;p&gt;Using a query-param when redirecting the page to ensure its not server from cache.&lt;/p&gt;


&lt;p&gt;Note: The last version which didn&apos;t have that problem and where &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLCACHE-54&quot; title=&quot;CLONE - uuid-cache key mapping is not updated&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLCACHE-54&quot;&gt;&lt;del&gt;MGNLCACHE-54&lt;/del&gt;&lt;/a&gt; was not an issue was on Magnolia 4.2.9 / commenting-1.1.1.&lt;br/&gt;
There,  PageComments#executeEarly() was not doing a redirect. If that redirect is not occuring, it works fine, the response showed after posting a comment is &quot;fresh&quot; (not serverd from cache).&lt;br/&gt;
But since &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLCMNT-67&quot; title=&quot;Posting comments should use the POST-REDIRECT-GET pattern&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLCMNT-67&quot;&gt;&lt;del&gt;MGNLCMNT-67&lt;/del&gt;&lt;/a&gt; this redirect occurs (and should not be removed), and so, during redirect-request, cached-content will be served; to avoid exactly that, the redirection URI gets a query-param.  &lt;/p&gt;</comment>
                            <comment id="80756" author="rkovarik" created="Wed, 5 Mar 2014 08:50:35 +0100"  >&lt;ol&gt;
	&lt;li&gt;Could you please add test? Something like:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
@Test
    &lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; void test() &lt;span class=&quot;code-keyword&quot;&gt;throws&lt;/span&gt; Exception {
        &lt;span class=&quot;code-comment&quot;&gt;// GIVEN
&lt;/span&gt;        comment = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; ExtendsPageComments(nodeContent, renderable, model);
        &lt;span class=&quot;code-comment&quot;&gt;// WHEN
&lt;/span&gt;        comment.executeEarly();
        &lt;span class=&quot;code-comment&quot;&gt;// THEN
&lt;/span&gt;        verify(response).sendRedirect(&lt;span class=&quot;code-quote&quot;&gt;&quot;....&quot;&lt;/span&gt;);
    }
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;li&gt;Why is the query like &lt;tt&gt;1394005623740=1&lt;/tt&gt;? I know that this is only because of caching, but wouldn&apos;t be something like &lt;tt&gt;parameterName=1394005623740&lt;/tt&gt; better?&lt;/li&gt;
	&lt;li&gt;Use import &lt;tt&gt;import static org.mockito.Mockito.*;&lt;/tt&gt;&lt;/li&gt;
&lt;/ol&gt;
</comment>
                            <comment id="80768" author="cmeier" created="Wed, 5 Mar 2014 11:38:04 +0100"  >&lt;p&gt;I added a test which checks that the redirec-links contains a query. =&amp;gt; PageCommentsTest#testRedirectAfterPostContainsQuery&lt;/p&gt;

&lt;p&gt;The already existing PageCommentsTest#testEnterWhitespaceCharIntoComment was not really meaningful. (I think it was never properly finished). &lt;br/&gt;
I extended it a little bit that it is testing at least some minimal behaviour.&lt;/p&gt;


</comment>
                            <comment id="80776" author="rkovarik" created="Wed, 5 Mar 2014 13:24:58 +0100"  >&lt;ul&gt;
	&lt;li&gt;These assertions always pass, because e.g first parameter would have value &quot;forumId&quot;:
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
verify(forumManager, never()).replyToThread(&lt;span class=&quot;code-quote&quot;&gt;&quot;&quot;,&quot;&lt;/span&gt;&lt;span class=&quot;code-quote&quot;&gt;&quot;,&quot;&lt;/span&gt;&lt;span class=&quot;code-quote&quot;&gt;&quot;,&quot;&lt;/span&gt;&lt;span class=&quot;code-quote&quot;&gt;&quot;,&quot;&lt;/span&gt;&quot;,&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;);
verify(forumManager, never()).createThread(&lt;span class=&quot;code-quote&quot;&gt;&quot;&quot;,&quot;&lt;/span&gt;&lt;span class=&quot;code-quote&quot;&gt;&quot;,&quot;&lt;/span&gt;&lt;span class=&quot;code-quote&quot;&gt;&quot;,&quot;&lt;/span&gt;&quot;,&lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;);
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Better would be to do:&lt;/p&gt;
	&lt;ul&gt;
		&lt;li&gt;A)
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
verify(forumManager).getForumId(...);
verifyNoMoreInteractions(forumManager)
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
		&lt;li&gt;B)
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
verify(forumManager, never()).replyToThread(anyString(), anyString(), anyString(), anyString(), anyString(), anyBoolean());
...
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;Could you also remove extra catch block on the line 202?&lt;/li&gt;
	&lt;li&gt;&lt;tt&gt;info.magnolia.module.commenting.frontend.action.PageCommentsTest.testRedirectAfterPostContainsQuery()&lt;/tt&gt; looks good.&lt;/li&gt;
&lt;/ul&gt;
</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>relation</name>
                                            <outwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="36384">MGNLCMNT-94</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>magnolia-cms.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 5 Mar 2014 08:50:35 +0100</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mmuehlebach</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            9 years, 50 weeks, 4 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>cmeier</customfieldvalue>
            <customfieldvalue>rkovarik</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i034wv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>18390</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>