The PostgreSQL community is getting really serious about
replication. On Thursday May 29th, Tom Lane issued a manifesto concerning database replication on
behalf of the PostgreSQL core team to the pgsql-hackers mailing list. Tom's post basically
said that lack of easy-to-use, built-in replication is a
significant obstacle to wider adoption of PostgreSQL and proposed
a technical solution based on log shipping, which is already a
well-developed and useful feature.
What was the reaction? The post generated close to 140 responses
within the next two days, with a large percentage of the
community weighing in. It's one of the most significant
announcements on the list in recent history. …
|
I have just been informed that in addition to a regular session, I will host two Birds Of a Feather sessions at OSCON 2008. The call for papers is still open. Any suggestions for more entries? |
This weekend our networking guys decided to change ips for all of our servers. They also changed our subversion server’s ip. This caused some issues in the subversion world with developers who had checkouts pointing to ips instead of hostname, using command similar to:
svn co svn+ssh://192.168.1.10/svn/myrepos/
/home/mycheckout/
Now when they do “svn update” inside the their /home/mycheckout/ directory, they get an error:
We needed to point the checkout to the new ip. Easiest way to do
this is to delete your checkout and re-checkout. Unfortunately,
some of the developers had a lot of modified files which wasn’t
checked in yet. I fixed it by issuing:
find /home/mycheckout -name "entries"|xargs /usr/bin/perl -w -i
-p -e "s/192.168.1.10/10.1.1.10/g"
Find command helps us in finding all the files with name “entries” and xargs takes the filename and passes it to …
[Read more]In the next proxy release we introduce plugins, we talked about it already in MySQL Proxy: a chassis and a mysql server. Take a look at http://svn.mysql.com/svnpublic/mysql-proxy/trunk/plugins/ and check out:
- proxy
- admin
- debug
each of them sharing the common code that is provided by the chassis.
The debug plugin is a lua shell with a mysql-protocol ... well, just read on ;)
The purpose of the plugin is to be able to introspect the proxy at runtime. If it is loaded you can connect to port 4043 and execute lua code inside the proxy core:
$ mysql --user=root --password=secret --port=4043 --host=192.168.2.113 root@192.168.2.113:4043 [(none)]> return 1; +------+ | lua …[Read more]
Firefox has been my steady web companion since version 1.0 (and
Mozilla before that). For some time now I wanted to try Firefox 3. I was reluctant to abandon Firefox 2,
because of the unavailability of most add-ons. I was especially
missing the Google Bar, which I have been using on a regular
basis.
However, a few days ago I found a replacement. GoogleBar Lite is almost like the original, minus
some feature that I wasn't using anyway.
So I have been using Firefox 3 for a while, and I noticed better
performance, and no trouble. The additional features are cool,
like the Most Visited pull down menu or the location bar
integrated with history and search.
Firefox enthusiasts want to set a …
De facto standards are the only ones that matter.
That's a bit of a truism in the technology world - well intentioned standards bodies and departments of justice can do their best, but at the end of the day, volume deployment is the only setter of standards. Ubiquity trumps policy, just about every time.
To that point, I was on a panel recently, discussing the impact of technology on the world's more rapidly developing economies (what's often referred to as "BRICA," or Brazil, Russia, India, China and Africa).
One of the speakers referenced an interesting shift in the traditional media industry: western companies were turning their attention toward the developing world. GDP growth wasn't drawing their attention - as much as demographics. Teenagers and those in their early twenties represent the biggest media buyers in …
[Read more]|
"The database support in NetBeans allows users to connect to a database and view and modify the database structure and data. These graphs show which database servers users connect to most often."
Of particular note, besides the large usage of MySQL and
Oracle,
is the large usage of Java
DB (Derby), and the significant PostgreSQL
usage. |
Yesterday I took a more serious look at Google App Engine, I got a developer account some weeks ago.
After going though the getting started demo some time ago, I chose an idea for a FaceBook Application and started in true eXtreme Programming (XP) style (i.e. What’s the bare minimum required for first iteration). I taught myself some Python and within just a few minutes had some working data being randomly generated totally within the development SDK environment On my MacBook. I was not able to deploy initially via the big blue deploy button, the catch is you have to register the application …
[Read more]
I have tables that should be 1:1 relations but occasionally, they
become mismatched, one table having more records than the other.
I have been wondering which is the most optimal way to delete
things like this.
I have a delete using a join (item_id is primary key):
mysql> delete from items_keys using items_keys left join items using (item_id) where items.item_id is NULL;
vs. using a subquery:
mysql> delete from items_keys where item_id not in (select item_id from items);
Sometimes, the 2nd seems faster, but using a join seems more
orthodox to me. I'm curious what people think about this.
If I make these into select queries (instead of delete) and run
explain, I get:
mysql> explain select count(*) from items_keys left join items using (item_id) where items.item_id is …[Read more]