It turned out to be a problem in the socket write buffer handling after all, which I just wasn't seeing because I was always accessing from localhost (which obviously doesn't incur network delays and thus require buffering). Fixed, thanks for the help. --Andrew Church achurch at achurch.org http://achurch.org/