I'm tired of working with broken tools and half-implemented software. Namely PHP and MySQL.

PHP isn't my language of choice. It's a language that has been forced down my throat by my previous work and the market. Perl also was imposed on me by my other previous job, although I appreciate Perl much more than I appreciate PHP.

Allowed memory size of 12582912 bytes exhausted (tried to allocate 0 bytes)

Just today, I hit another bug (or what I consider a bug) in PHP: the memory limit. I have a still simple program here named phptimetracker. I'm running a test case here, with a simple page with only a few includes. There is a function which iterates over a table using an SQL-to-object system I named Storable. There seems to be a memory leak in it. Impossible? It sure looks like it. I've seen cases in PHP where simple loops over arrays would cause such memory leaks.

Update: after more testing, it seems that Storable doesn't behave well wrt memory with long (372??) result listings. Maybe it's not storable itself but the display code that is bloated or triggers a bug. In any case, it seems to me that garbage collecting should take care of this...

PHP: Half-assed design, flaky, buggy and memory-hungry application. Imagine a cross between Perl and VB: what you get is a procedural language that half-implements OO principles, has a simple but not too powerful syntax. static, for example, doesn't mean what you think it means. (more on this later, and wrt problems with object references returned by functions).

As for MySQL, the more I discover about PostgreSQL and the ACID principle, the more I understand MySQL isn't in the right ballpark. We are using quotas on Koumbit, right? As soon as a user hits his quota, mysql starts to happily destroy its tables and its contents. Yay. No subqueries in the 3.X series, which was considered the most stable until recently... I think we will start supporting postgres soon.

TheAnarcatBlog/2005-03-26 (last edited 2022-01-27 20:15:19 by kienan)