Thanks for the elaborated reply.
IMO, collaborative web applications like you describe should be created using a single Resource serving as a view into the highly dynamic content being posted. Any navigation for these posts would similarly be dynamic and not be related to the main web site cache anyway.
You mean like quip, for example. where a comment is not a resource.
In my case, the user’s post is equivalent to a blog post. there’s no one blog in the site, but hundreds of small-blogs.. each user runs his posts, children of his profile document.
I chose to implement this as a standard resource (modDocument **) simply because it
fitted by design. I could rapidly reuse many of the existing functionality in modx (tv(!!), acl, pre-built processors, moderation via manager ui, etc...). This client already has some modx’s running, they are used to the modx-management logic.
Now - as far as I see, the only drawback is this caching issue, but even though - I would have chosen the existing method over again (unless I’m missing another drawback that is waiting around the corner?!)
** (unrelated note) modDocument - what’s the story with this, why didn’t you fully switch to modResource only in revo? in the schema i see it’s (almost) marked for removal, and it’S there to maintain evo-compatibility. but - in all around the core+extras, I see you always work with modDocument class - so i understand you decided to stay with that?
If you don’t clear the other pages, they will not be aware of the changes to the URL structure of the site; same problem regarding navigation components. That said, we could provide this option when creating/editing a Resource, but you’d have to be aware that any navigation component would have to be uncached.
Wait - that’s good news! in my case, the "other pages" don’t need to be aware of this change, because the navigation component that expose the user’s post is ONLY in the user’s profile page.
A visitor can get to the member’s blog post only from the member’s profile page (well, besides this data aggregated through the activity stream components - but that’s gets it’s resource listing from a custom activity table - so it’s out of this loop).
So i repeat my earlier question, is it ok with modx if i only clear the cache by deleting the page + context.cache? in terms of performance, it seems way better.
* can you clarify the term "navigation component"? which methods work with context cache, anything that looks at structure?
cache_db
Looks interesting, I want to test this, but i got this error, once I enabled this setting, I lost manager + all front-end pages:
Fatal error: Cannot access protected property xPDOQuery_mysql::$sql in C:\xampp\htdocs_81\core\xpdo\xpdo.class.php on line 1460
(related with fromCache function)
I’m running svn 6192.
for other as reference - you can recover from this kind of event by:
a. changing the setting in the db:
UPDATE modx_system_settings SET `value`='0' WHERE `key`='cache_db'
b. delete this file: core/cache/config.cache.php
Thanks again for the very helpful support!