[pLog-svn] Object cache bug -- Jon metioned about 1 or 2 months ago

Oscar Renalias oscar at renalias.net
Fri Sep 22 09:25:39 GMT 2006


I think that's way too much work but it looks like it's the only possibility.

You can start working on the fix if you wish, but please bear in mind
that no more core changes like this will be accepted without unit
tests (on the other hand, coming up with a test case for this
shoudln't be too difficult)

On 9/22/06, Jon Daley <plogworld at jon.limedaley.com> wrote:
>         Yes, that sounds like what I saw.
>
> On Fri, 22 Sep 2006, Mark Wu wrote:
> > Hi Oscar and Jon:
> >
> > I think I found the bug that Jon metioned in 1 or 2 month ago about the
> > order of comments...
> >
> > He sets the comments order from oldest to newset, but sometimes he will get
> > the newset from oldest in front page...
> >
> > I think it is the bug of obect cache  mechanisim...
> >
> > You can reproduce the bug in the followings steps
> >
> > 1. Change your comments order in blog settings  to "from oldest to newest"
> > 2. Clean your /tmp cache (DOT OPEN ANY FRONT PAGE RIGHT NOW)
> > 3. Go to edit posts and choohse one post that has comments (at least 2
> > comments, or you can not see the different), and click CM field in that
> > post. You will see your comments of this post list from newest to oldest (It
> > is the default behavior of this view)
> > 4. Now, you can open your permalink of that post,.... you will see your
> > comments list from "newest to oldest" not from "oldest to newest"
> >
> > Why this happend?
> >
> > Because we do not cache the objects order in array. We just check the cache
> > does exist or not, we never check the "Order" of the objects is right or
> > not.
> >
> > So, how to solve this problem?
> >
> > 1. Seperate the cache constatnt to two, if we have oders in parameters, for
> > example, we can seperate
> >
> > define( "CACHE_ARTICLE_COMMENTS_BYARTICLE", "article_comments_byarticle" );
> >
> > to
> >
> > define( "CACHE_ARTICLE_COMMENTS_BYARTICLE_NEWEST_TO_OLDEST",
> > "article_comments_byarticle_newest_to_oldest" );
> > define( "CACHE_ARTICLE_COMMENTS_BYARTICLE_OLDEST_TO_NEWEST",
> > "article_comments_byarticle_oldest_to_newest" );
> >
> > 2. Or we just apply array sort of the objects cache. But one problem is if
> > the cache only keeps parts of objects becasue the paging .... this way won't
> > works :(
> >
> > So, maybe option 1 is the way to go.
> >
> > Mark
> >
>
> --
> Jon Daley
> http://jon.limedaley.com/
>
> Your mind is like a parachute.  It only works if it is open.
> -- Anthony D'Angelo
> _______________________________________________
> pLog-svn mailing list
> pLog-svn at devel.lifetype.net
> http://devel.lifetype.net/mailman/listinfo/plog-svn
>


More information about the pLog-svn mailing list