Cache Macro - Interoperability

Summary

The cache macro works fine with many macros, however, there are cases that you may need to order your macros carefully in order to get the desired results. The cache macro will not help with macros that use javascript asynchronous approaches to bring data into a page. This is because the cache macro caches the rendered HTML content which in that case is just place holders for data that then still needs to be brought in. 

See Future Macro - Interoperability for interoperability with the Future Macro.

This page is intended to document interoperability with other advanced macros. Please comment or report on other interoperability problems. 

Outer

Macro

MacrosStatusTested

Restrictions & Workarounds

Discussion
cachechart(warning)(tick)

Use the chart macro attachment parameters to persistently store the generated chart image so it can be displayed at a later time.

Another alternative is to put the cache macro inside the chart macro to save on the generation of the data from external sources while still doing normal rendering of the chart.

Normally, the chart macro creates a temporary image to display. The cache macro captures the html that references the temporary image. This displays properly as long as the temporary chart image is available. Once the temporary image is gone on the server, the chart can no longer be displayed by the another browser.

cache

expand

(tick)(tick)

Reverse the macros - use the cache macro inside the expand macro.

Avoid using the cache refresh parameter. It will cause all the expand macros to contract since the expand macro does not remember the last setting.

Since 6.1, a workaround has been implement to make the expand macro work inside a cache macro pending full availability of Confluence 5.4.3 (see CACHE-75).

cache

expand or similar

(tick)(tick)

Reverse the macros - use the cache macro inside the expand macro.

Avoid using the cache refresh parameter. It will cause all the expand macros to contract since the expand macro does not remember the last setting.

Prior to 6.1, workaround is to put an expand macro somewhere on the page outside of the cache macro. See CACHE-75 - Getting issue details... STATUS

The expand settings (expand or contract) are javascript based and not part of the html that is captured by the cache macro.

cachemacros needing web resources

(warning)


(tick) Confluence 4.x - 5.1

Some compatibility problems on Confluence 5.2 - 5.4.3 due to CACHE-63 - Getting issue details... STATUS

Resolved with Confluence 5.4.3 and above together with Cache 6.3 or above.

Workaround is to put the specific macro somewhere on the page outside of the cache macro (this brings in the resources necessary).

If necessary, use the Hide macro with render body to achieve this without showing anything on the page.

cachereport-table(tick)(tick)
Tested with 6.1.
cacheOfficeConnector macros(tick)(tick)Requires release 6.1.
cacheJIRA macro(error)(tick)

cachepagetree(warning)(tick)

(tick) Confluence 4.x - 5.1

(tick) Confluence 5.2 or above: Requires Cache 6.4 or above

CACHE-92 - Getting issue details... STATUS
cachepage gadget(warning)(tick)

(tick) Confluence 4.x - 5.1

(tick) Confluence 5.2 or above: Requires Cache 6.4 or above

CACHE-92 - Getting issue details... STATUS
cache

code

code-pro

(warning)(tick)(tick) Confluence 5.2 or above: Requires Cache 6.6 or above CACHE-113 - Getting issue details... STATUS
cache

excerpt-include

excerpt

(error)
Avoid putting the excerpt macro within a cache macro if you need to access the data using excerpt-include. CACHE-183 - Getting issue details... STATUS
cachedetails (Page properties)(tick)



cachedetailssummary (Page properties report)(thumbs down)

Should display properly, but not have any significant performance benefit.

CACHE-189 - Getting issue details... STATUS
cacheany asynchronous macro(thumbs down)
Should display properly, but not have any significant performance benefit.
LegendStatus
(tick)Works
(warning)Works with some restrictions or workarounds
(thumbs down)Is not effective since macro uses asynchronous methods for bringing in data
(error)Does not work in most cases
(question)Unknown




Find answers from the community.

Ask a question to the community.

Log a request with our support team.

Confluence®, Jira®, Atlassian Bamboo®, Bitbucket®, Fisheye®, and Atlassian Crucible® are registered trademarks of Atlassian®
Copyright © 2005 - 2024 Appfire | All rights reserved. Appfire™, the 'Apps for makers™' slogan and Bob Swift Atlassian Apps™ are all trademarks of Appfire Technologies, LLC.