1 Apr 2003 sjanes71   » (Journeyer)

Gentoo Linux Switching To RPM Format     Fuck, shit, cunt, sonovabitch, damn... what a fucking great April Fool's headline. Now I'm going to be shell-shocked for everything else that'll happen tomorrow.

BT & Redhat 9     I'm not seeing as large a speedup for this download as I saw for Mandrake, could be a function of the mix of users attempting to download RH9.

Work     Again, I'm taking on risk to be happy.

For the Advogato Commons: Draft/Code in Progress     Working on a small database benchmarking harness for the purposes of comparing recent versions of MySQL and PostgreSQL. People too often say that "This or the other is better/faster" but it is still quite useful to be able to run some kind of benchmark to get some numbers. Many other database benchmarks out there have good concerns with "end-to-end" testing (browser-webserver-app-db as in TPC-W) but end-to-end testing takes too long to set up and administer and I think that there are some legal issues with "publishing" TPC-W numbers.

The Open Source Database Benchmark seems to be dead, it was written in C which I don't think is absolutely needed to get a general idea of how a database will operate. MySQL's sql-bench is written in perl but doesn't work with newer versions of PostgreSQL. I'm not sure that I want to use a benchmark written by a database vendor themselves when they may have intimate knowledge of the inner workings of their own system-- but also sql-bench does not seem to have a "concurrent" method of testing where multiple sessions are hammering on the database simultaneously.

I really do love Python, so I'm going to go at it with Python. Perhaps the work will create some more pressure to help bring Python's database support to the levels of Perl DBI.

What? No, this isn't an April Fools thing.

The Straw that is ATA/IDE     Waiting on an updatedb to complete so I can use the locate command without a warning. This is driving me nuts-- I wish there were a way to make these drives faster.

pydbbench     I hope I didn't accidentally use someone elses name, I didn't do a search. I haven't finished the code to summarize the total "measurement" for all sessions, but each session knows how to count the number of iterations, rate of execution, and min,max,avg times of execution. This is connect/disconnect for PostgreSQL 7.3.2. Eventually I'll figure out how to chuck this into SVG for more oohs-and-aahs. I'm pretty happy with Python's treading so far.

1 session
ssn 0 name do_dbconnectdisconnect timelimit 10 iterations 385 rate 38.000/s min 0.018036 max 0.136911 avg 0.025974
5 sessions
ssn 3 name do_dbconnectdisconnect timelimit 10 iterations 66 rate 6.000/s min 0.019086 max 0.429477 avg 0.151648
ssn 1 name do_dbconnectdisconnect timelimit 10 iterations 67 rate 6.000/s min 0.022207 max 0.451928 avg 0.151311
ssn 2 name do_dbconnectdisconnect timelimit 10 iterations 83 rate 8.000/s min 0.021862 max 0.324185 avg 0.123009
ssn 0 name do_dbconnectdisconnect timelimit 10 iterations 86 rate 8.000/s min 0.019195 max 0.412027 avg 0.119611
ssn 4 name do_dbconnectdisconnect timelimit 10 iterations 97 rate 9.000/s min 0.018624 max 0.382124 avg 0.105128
25 sessions
ssn 4 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.188134 max 0.778501 avg 0.588586
ssn 3 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.182435 max 0.774702 avg 0.591407
ssn 0 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.194805 max 0.826876 avg 0.595367
ssn 5 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.221709 max 0.859946 avg 0.599044
ssn 22 name do_dbconnectdisconnect timelimit 10 iterations 16 rate 1.000/s min 0.539721 max 0.879632 avg 0.628659
ssn 21 name do_dbconnectdisconnect timelimit 10 iterations 16 rate 1.000/s min 0.482847 max 0.946763 avg 0.632173
ssn 24 name do_dbconnectdisconnect timelimit 10 iterations 16 rate 1.000/s min 0.554055 max 0.947282 avg 0.631847
ssn 6 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.204366 max 1.102799 avg 0.608936
ssn 2 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.189930 max 0.938403 avg 0.609606
ssn 11 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.190076 max 0.919035 avg 0.602645
ssn 9 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.312997 max 0.918923 avg 0.615667
ssn 7 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.276532 max 0.878170 avg 0.618143
ssn 10 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.243147 max 0.922962 avg 0.619472
ssn 17 name do_dbconnectdisconnect timelimit 10 iterations 16 rate 1.000/s min 0.540462 max 0.894974 avg 0.648541
ssn 8 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.268107 max 0.932455 avg 0.624780
ssn 12 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.229943 max 0.903213 avg 0.618912
ssn 13 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.216434 max 0.949649 avg 0.619694
ssn 1 name do_dbconnectdisconnect timelimit 10 iterations 18 rate 1.000/s min 0.033609 max 0.949737 avg 0.595317
ssn 15 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.317664 max 0.940005 avg 0.622457
ssn 19 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.298987 max 0.946451 avg 0.624361
ssn 23 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.490933 max 0.944254 avg 0.628118
ssn 18 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.285008 max 0.995577 avg 0.630302
ssn 16 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.343448 max 1.094034 avg 0.635534
ssn 14 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.332970 max 1.043219 avg 0.638293
ssn 20 name do_dbconnectdisconnect timelimit 10 iterations 17 rate 1.000/s min 0.380707 max 1.072901 avg 0.638602

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!