? Failure

User tests: Successful: Unsuccessful:

avatar csthomas
csthomas
18 Feb 2016

Column category path_published is a calculation of all parents and own category published.

I have experience with big joomla 3 website and a lots of time I try to improve performance.
This is one of that.

You can see performance improvement on featured or category view especially.
All calculation of category state is calculated when administrator change state of category.
Front end requests get one column to check - c.path_published.

Examples of category paths (after calculation):

  • Root(published=1, path_published=1)->Category1(published=1, path_published=1)
    (... - represent about line)
  • ... Category2(published=-2, path_published=-2)->Category3(published=1, path_published=-2)
  • ... Category2(published=2, path_published=2)->Category3(published=1, path_published=2)
  • ... Category2(published=0, path_published=0)->Category3(published=1, path_published=0)
  • ... Category2(published=2, path_published=2)->Category3(published=0, path_published=0)
  • ... Category2(published=2, path_published=2)->Category3(published=1, path_published=2)

Priority for calculation state of path_published:

  • the most priority has Trash state (-2), all children will have -2
  • the next is Unpublished (0), all children may have -2 or 0
  • the next is Archive(2), all children may have -2,0 or 2
  • the last one is Published (1)

Please comment.

avatar csthomas csthomas - open - 18 Feb 2016
avatar csthomas csthomas - change - 18 Feb 2016
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 18 Feb 2016
Labels Added: ?
avatar csthomas csthomas - change - 19 Feb 2016
Title
Speed up com_content by remove badcats sql and use path_published column instead
Accelerate com_content by removing subquery with badcats and use instead a new c.path_published column
avatar csthomas csthomas - change - 19 Feb 2016
Status Pending Closed
Closed_Date 0000-00-00 00:00:00 2016-02-19 08:20:45
Closed_By csthomas
avatar csthomas csthomas - close - 19 Feb 2016

Add a Comment

Login with GitHub to post a comment