Recent Comments bug fix

If you’re using MT’s Recently Commented On feature and you notice that some entries don’t appear there that should, I may have a solution for you. Over at the MT support forums we discovered that at least two of the people experiencing this problem were using MySQL 3.23.45 as their database. Users of later versions of MySQL weren’t having the problem, so it appeared to be a MySQL problem.

A little troubleshooting revealed the culprit. MT uses a temporary table to gather the list of recent comments and that table wasn’t being sorted correctly by MySQL. It took some serious trial and error to figure out how to make it work correctly.

The fix requires that the records be inserted into the temporary table in the order you will want to retrieve them. So a simple ORDER BY statement in the table creation SQL was needed.

To fix the problem, you’ll need to make the following changes. This assumes you are running MT 2.21. Other versions might have different line numbers and code.

Go to <mt>/lib/MT/ObjectDriver/DBI and open mysql.pm. (Replace <mt> with wherever your copy of Movable Type can be found.)

Line 116 reads my $dir = $j_args->{direction} eq 'descend' ? 'desc' : 'asc';. Move it to before line 97, which reads my $ct_sql = "create temporary table tempTable\nselect ";.

Now go down to line 106 where it says $ct_sql .= "where " . join ' and ', @$ct_terms if @$ct_terms;. Right after that line, add a line that reads $ct_sql .= "ORDER BY ${j_tbl}_$j_args->{'sort'} $dir";

That’s it. Upload your newly changed script and rebuild your templates. The usual disclaimer applies. It works for me, it might not work for you. Back everything up before you start and don’t blame me if your computer begins speaking in tongues or emits a foul odor.


Your comments:

Text only, no HTML. URLs will automatically be converted to links. Your email address is required, but it will not be displayed on the site.

Name:

Not your company or your SEO link. Comments without a real name will be deleted as spam.

Email: (not displayed)

If you don't feel comfortable giving me your real email address, don't expect me to feel comfortable publishing your comment.

Website (optional):

Follow me on Twitter

Lijit Search

Best Of

  • Embrace the medium The Web is different than print, television, or any other medium. To be successful, designers must embrace those differences.
  • Customer reference questions. Sample questions to ask customer references when choosing a software vendor.
  • Simplified Form Errors One of the most frustrating experiences on the Web is filling out forms. When mistakes are made, the user is often left guessing what they need to correct. We've taken an approach that shows the user in no uncertain terms what needs to be fixed.
  • Debunking predictions Read/Write Web's authors have some goofy predictions.
  • The best of 2006 I wrote a lot of drivel in 2006. Here's the things that are less crappy than the rest.
  • More of the best »

Recently Read

Get More

Subscribe | Archives

Recently

Ideas, Risk, and Investors (Jan 1)
Over at SacStarts, I have piece up discussing a common question I get from entrepreneurs....
VoiceXML for web developers (Dec 17)
Building voice applications isn't hard at all. Any web developer can do it.
De-skunking a dog (Oct 27)
How to clean up your pet after a skunk attack.
Pressure sales via Twitter (Oct 16)
Sticking an ad in my face when we first meet is a good way to lose my interest.
Loma Prieta, 20 years later (Oct 13)
Looking at the earthquake from October 17, 1989
Red light cameras don't work (Oct 13)
Cameras installed to catch people running red lights aren't about traffic safety at all.
Jack-o-lantern pumpkin carving patterns (Oct 12)
It's a tradition, what can I say?
SEO realities (Oct 12)
The real search engine optimization. Works every time.

Subscribe to this site's feed.

Elsewhere

IMified
Build instant messaging applications. (My company)
SacStarts
The Sacramento technology startup community.
Pinewood Freak
Pinewood Derby tips and tricks

Contact

Adam Kalsey

Mobile: 916.600.2497

Email: adam AT kalsey.com

AIM or Skype: akalsey

Resume

PGP Key

©1999-2010 Adam Kalsey.
Content management by Movable Type.