June 3rd, 2001

  • jnala

Speeding up BML

I wrote a patch to speed up the BML processor, which handles almost all the pages on the site that aren't actual journals. It was re-eval'ing a lot of code per hit that it didn't need to. Here are some example timings from my random-Linux-box test server using Time::HiRes.

Front page237ms50ms79%
First userinfo hit398ms241ms40%
Later userinfo hits360-380ms100-110ms72%

Basically, this is going to save us 200-250ms on almost every BML page on the site. Which is huge.

The patch and the README are on my website. The README is also included after the cut.

Collapse )

  • Current Music
    Everything But The Girl - Before Today
  • dottey

Weirdness on my friends page

I've currently got a friends page up that displays alanj's last post to lj_dev (Here is the post).

The top of my page (using default LJ friends view) has the standard header. Under where it says "<< Previous 25" it displays alanj's (Current Music: Everything But The Girl - Before Today) follow by the links for the comments on his post. AFTER all that, it displays the day (Sunday June 3rd 2001) and THEN his actual post.

IE). The comment links and mood/music for his post are appearing above the actual post. His post contains a lj cut at the bottom, and I believe that may be what is causing this problem.

Can anyone else please verify that I'm not just going crazy? I'm posting another lj cut here just to check:

Collapse )
  • Current Music
    computers humming

So fast !!!!

Holy shit!! I can't believe how fast the site is now. (the BML parts)

Thanks for the patch, Alan!

If anything's messed up, let me know. A ton of stuff got changed just now... not only did I merge Alan's patch, but I merged in some changes from my local tree.


You know that big secret fun feature I kept talking about and then stopped working on because of finals? Well, it's online now. It's not polished, but it's essentially done.

What is it? A customizable portal system.... hooray.

http://www.livejournal.com/portal/ (temporary address)

Once it's polished it'll be the main front page of LJ. I need to make more portalboxes.... the architecture is wonderful, but I just need to do the easy stuff now.

Play around with it (especially using Mozilla!) and report any bugs, and give any idea for portal boxes. The code will be released Wednesday or Friday, depending on time... then everybody can add more boxes. They're fun (and damn easy) to make.

Update: Upcoming boxes/options include:
-- Friends view (customizable)
-- Recent Entry view (with the [ ] Include text option working)
-- Random User (optionally, with a picture)
-- Filter group filter on Birthday View
  • scsi

Arg, server code problem

Hi everyone!

Ive pounded my head over this little problem for a week, and still cant figure it out. Here is the situation.

I installed the LJ server code on a box of mine, everything works kosher except the image upload feature. I have a virgin perl install with all of the modules installed in the INSTALL doc (I even reinstalled all the modules to see if maybe one got j0rk'd)

When someone tries to upload their userpic, I get this error in the apache logs:

Prototype mismatch: sub BMLCodeBlock::head ($) vs none at /usr/local/lib/perl5/5.6.1/CGI.pm line 231.
Prototype mismatch: sub BMLCodeBlock::url vs ($;$) at /usr/local/lib/perl5/5.6.1/Exporter.pm line 57.
at /usr/local/lib/perl5/site_perl/5.6.1/URI/URL.pm line 267

I'm not sure if I have stumbled on a bug, or maybe something to add in a future FAQ.

I hope its not something totally stupid.. heh

  • jnala

XML for LiveJournal entries, protocol

Client authors need a common format for saving/restoring journal entries, including their metadata. XML is a perfect fit for this. We should probably come up with a standard DTD so we don't have different clients duplicating work to come up with incompatible ways to do the same thing. I can write a draft proposal, or if Evan's doing it already, we can all use that.

I'd like to see the protocol use XML as well. That'd make the client's life really easy, and reduce the need to upgrade clients to track every little extra feature, at least with the text-oriented clients. Just wrap the entry in <lj-request user="username" hpass="s3krit"></lj-request> and send. :-)
  • Current Music
    Modest Mouse - Breakthrough