About 2 months ago. Its all fixed now and a couple of days ago the bug was closed as the updated hotplug package had made it into sarge.
WHen something is plugged in hotplug loads all the kernel modules hanging around to try and find something that can use the device. Some modules have watchdog code in them, if these modules are loaded and the appropriate hardware is not present then they reboot the box. The hotplug package maintains a blacklist of modules not to be loaded in this speculative manner.
To debug this if it is happening to you, as soon as the box comes live do:
lsmod > modules.list && sync and then in your 1 minute you start rename suspected kernel modules so they can't load and then do this till it stops rebooting. Once you find the module, add it to the blacklist and report to the maintainers.
I'm running some live production servers on sarge.
One of them updated and went into reboot hell - every minute it rebooted.
Luckily I'd already had this on another box and reported it and got a solution, so when it happened I knew I had 60 seconds to ssh in and rename a kernel module and sync the disks so on the next reboot hotplug wouldn't load it.
The lesson is that if stable is to stale for your live service, use testing by all means, but you'd better be able to deal with it.
If Borland are being stinky, and poeople are starting to suffer from being "locked in" (even thought it was nice while it lasted) then its time to look at:
wxPython and Boa Constructor, a python IDE and RAD style designer. Its a bit harder than Delphi (or am I getting mentally stale) but at least its fully cross platform GUI and open source, so you get to increase your target market and never get locked in again.
No point in continuing with Delphi.net, it may only happen again in a few years when the fashions change.
I learned this lessen a few years ago when a nameless search engine salesman witheld some updates and we (Ananova/Orange) switched to the open source Xapian search engine and paid one of the original developers to do some more work on it for us. Xapian is now being trialed as the search engine behind gmane
Its the same lesson Richard Stallman learned years ago. Don't get locked in.
There's no need to learn that lesson twice. And, you may as well join the FSF while you are at it. You know it makes more sense than most political donations, and for less than the price of a night out each month! I got a copy of Lessigs "Free Culture" in the post today as part of my FSF membership.
Borland Pascal for Windows may have been a bit freakish but I don't see how you can say Delphi is or ever was.
I used Turbo Pascal for DOS to write real-mode device drivers that loaded before windows did that communicated and made callbacks to windows applications written in Delphi (using the DPMI 0.9 API)
There really was nothing that could not be done or hacked with Turbo Pascal (and assembly) and Delphi (and more assembly as needed).
Borland DID get windows, more than MS did.
None of MS widget wrappers around the raw windows API compare in any degree to Borlands excellent VCL (Visual Class Library) that encapsulated and extended windows in a most wonderful way.
I've seen people program in Delphi who only know how to program in C and it looked like it. Ugly, nasty code.
I've seen Delphi code written by people who understand object Pascal and it is a dream to behold. (I've done some good stuff too).
The reason Delphi didn't catch on enormously is partly to do with it not being a cross platorm language (object pascal I mean) butmostly for the same reasons smalltalk, scheme, EISA and so on didn't catch on. I wish I knew what that reason was.
Sam
to you maybe Re:It Sounds Pretty Basic
on
High Performance MySQL
·
· Score: 3, Informative
By the tone of your post you seem angry about this book, and scared to read it in case you learn something new and doubt what you have done in the past.
1. How to setup replication with different architectures including master/slave, master/slave/slave (another level), replication rings, dual master replication with slaves and more.
Simple, just read a few pages on the MySQL documentation. [mysql.com]
Some people prefer printed book form, as some publishers are aware.
2. RAID (software vs. hardware), RAID types, IDE vs. SCSI. I know. I'm sure you've thought of these things already but most people will find something new here because there is a lot on it. It is quite dense.
What on earth does this have to do with MySQL specifically?
You might benefit from learning about it if you are trying to optimise an SQL server?
And furthermore, if you dont know about _RAID_, and need to be told the benefits of SCSI/Raid, do you really think you need MySQL clustering ?
Well, once the reader has read these chapters they can make this judgement. You've manage to make this judgement for EVERYONE without reading the chapter for which I congratulate you.
Any PC/Server with enough ram will push queries like a maniac. Also, check #4...
queries... I think this book isn't just a book about getting fast queries.
3. Selection of an OS. Seriously. It actually compares threading models on OSes compared to performance with MySQL. This is great stuff.
Great, now that i've bought this book, i'm supposed to _CHANGE_ OS in my server farm, just to gain a few more queries/sec ?
Steady there! Whoa! This isn't advertised as a book for people who are happy with what they have and know they did it right by instinct. This could just be a book for people who want to learn something before they decide what to do NEXT.
4. Selection of a filesystem on an OS. Yes, nitty gritty. Includes talk about journaling vs non-journaling benefits and warnings.
Filesystems? Oboy, anyone who knows about SQL performance knows that if you access _DISK_ during execution, you are screwed anyway.
And whats going to happen to your data when you power down? I suppose you've been committing all your data to files on the disk? It might just be useful to know about the benefits and dangers of the various filesystems.
Anyone who knows anything about indexing knows that btrees and rtrees are optimised for pulling data off random access media. There's better index forms if you are going to be ram based. I forget what they are because all my data is disk based.
5. Load balancing mySQL. How to do this through a load balancer. Why and how it's different than load balancing web servers.
This seems like a decent chapter.
6. How to backup live using replication.
DOH! We are talking backup here, right? Backup means archiving a copy of the database. MySQL allows you to use the magic command "cp" (or scp, or rsync, or..) Best # so far...
Totally wrong. If you want to back up a database that is being modified, you need to lock it and that would stop updates. This certainly needs a chapter.
You could read a few pages on mysql.com about this instead if this book offends you. It sounds like you might need to. Some people prefer web sites to books.
7. I love this: Detailed information on how the replication system actually works. I love understanding the inner workings because then I know how/why things went wrong.
The updated node sends commands to the other machines to update as well. If something goes wrong, you could rollback the transaction.
If there are transactions? I can use mysqlbinlog and convert to ascii logs, edit the logs, and replay the edited logs. If you didn't know about this, maybe you acknowledge the need for a chap
NOT good enough for business. Unless it's marked stable, it doesn't go into a production environment.
Thats a very broad statement,and not true of many business.
Also, in my experience mysql gamma releases are more stable than the "stable" releases of some very expensive (unless you can get an 85% discount) commercial databases. But then its a simpler product.
Table scans are generally ONLY quick if ONE PROCESS is trying to process queries at once.
I had this beef with postgres a while back when I was doing the Ananova TV listings; once 2 queries are going at once table scans are deadly as well as trashing OS bufferred blocks from disk.
I had to increase the artificial "cost" of table scans to force postgres to prefer indexes and stop the system falling over.
My lesson is this: Where table scans are quicker than indexes, the extra speed isn't important because the only running query has the box to itself anyway; so always use indexes, because it gives the speed when you really do need it.
I may come across a case where it isn't true, but this was working with 5GB tables and 20 simultaneous queries. Indexes were a darn site faster than the table scans which postgres tried to do.
I spent hours trying to understand the twins paradox until it was explained to me that special relativity does not explain the twins paradox, only general relativity; and that the school book that went on about the twins paradox taught only special relativity.
Thats my excuse, its till on my list of things to learn.
When your post gets +modded it becomes more visible and more people moderate it.
Slack moderators don't concentrate on modding up more than down. Slack moderators also don't browse at -1, but +2, so by the time your posting becomes visible the good moderators start to leave off and the bad ones knock it back down again.
And of course, in a crowd the size of the slashdot crowd there is room for any number of moderator conspiracies to co-exist, no doubt there is more than one of the type you mentioned.
its the same sort of behaviour that swings online polls widely as the two extreme opposing camps canvas their friends and set up vote spoofers whenthey start to loose.
The answer is to meta-moderate.
It doesn't neccessarily mean that the bad moderators lose mod points in future but it does help make sure that the sort of moderators slashdot has are the sort of moderators it's readers appreciate.
No, its like saying the State shouldn't provide you with free college education when most roads in your country aren't paved!
What is your fixation with paved roads? (Don't answer that)
We are NOT talking about the freedom to perform research, ie to sit down and study whatever you want. We are talking about institutional research
Good, they might invent a cheaper way to pave roads since McAdam all those years ago in 18th Century Britain.
Keeping intellectuals in the country is GOOD. The more smart brains you have in the country, the more likely they are to come up with a quicker solution. Lets face it, policiticians are good at getting elected as thats the only pre-requisite, but they are not creative inventors on the whole.
Why is this so complicated for the slashdot idiots to understand?
Cos we get distracted by insults so easily.
Freedom to you is such a simplistic notion you can scarcely understand the vast majority of Indians have barely the freedom to exist,
You guessed that wrong, see if you can guess what I'm thinking now.
let alone live. Freedom is an irrelevant word when dealing with a country like India.
And you want to say "oi, mr reseacher, STOP THAT. Don't you be doing no research till everyone ELSE is in school and has the same freedom you have. had. will have but not yet." So he goes to USA and does research there instead, for american companies to earn american dollars for america, that get spent in america.
Why stop at India? Lets take the entire world, why should USA or Russia be heading off to space when there is so much disease they could be spending money on?
The fact is there is always something else to spend money on and someone else who wants it spent on that.
If the Indian government had consulted you, you would no doubt be defending the status-quo against someone else.
In the meantime the Indian government seems to think pure government funded research to be a good idea and I agree with them. When enough of the currently under-educated indians agree with you it may change, you might cheer but I will be sad.
Some standard is being set in India which prioritizes how work is expended. Right now, that standard is NOT the well being of the people of India. Who cares if 100,000 people get to research all they want when 300,000,000 can't even read? Who is advocating ignorance here?
Which is like saying I shouldn't buy an ipod while there are people starving anywhere. Or wait, I should't buy a cell phone. Or a CD. Or even another pair of shoes if my first pair has any wear left - as long as someone somewhere is hungry.
If one of the 100,000 was going to do research in USA or India, let them choose to do it in India. Don't make them be a primary school teacher, they make hate it and put people off learning altogether.
Its a tempatation when dealing with figures to step too far and make decisions regarding peoples lives and freedoms - remove an arm here, make someone work in a coal mine there - as if its OK because the over-all picture is neater.
You areright, I should report these as bugs and will do so.
The message does get marked as readif I read it before it gets downloaded to the other PC. Ifit has already been downloaded but not read, then when it is read elsewhere it does not get marked as read on PCs that already have it.
It is ironic that for an applicationthat insists on checking theoriginal folderforso much, it fails to notice this change,
OE lets you access fully and in every way the cached imap items.
Thunderbird only lets you do this if you first elected to work offline; if not then the cached items are unavilable.
OE uses the cached item when you move messages, thunferbird wants to download them again.
If I have 2 IMAP PCs. noth OE, both having downloaded all messages, and I read a message on one of them it gets marked on the server as read, and then the other OE detects this and also marks them as read when it syncs.
Basically, thunderbird IMAP support is not transparent.
Its still very good, though, and the junkmail support overcomes this slight annoyances.
Since Borlands happy diversion with Kylix (happy for me) they have started taking the development process seriously and I think you should take a look at their product lifecyle tools.
http://www.borland.com/
They are taking very seriously the need for managing projects in all aspects.
Get an account manager to come and visit you and see what they suggest.
I had the speil a while back (2 years ago) but at the time it wasn't quite mature enough for the mobile patforms I was developing for, but I was impressed with the direction they were taking
Here we learn that in democratic dictatorships you need to dis-enfranchise only a few people and not an entire nation.
Something the east could have done well to learn - and with Putin wanting to make direct appointments - maybe they have now?
Sam
"sequel" is standard english query language, a pre-cursor to sql which is standard query language.
Perhaps people who pronounce "sequel" are pretending to more years of experience than they have?
In any case, people who say "sequel" always sound like idiots to me. I admit this is my bias but there it is. I can't help it yet. Sorry.
Sam
About 2 months ago. Its all fixed now and a couple of days ago the bug was closed as the updated hotplug package had made it into sarge.
WHen something is plugged in hotplug loads all the kernel modules hanging around to try and find something that can use the device. Some modules have watchdog code in them, if these modules are loaded and the appropriate hardware is not present then they reboot the box. The hotplug package maintains a blacklist of modules not to be loaded in this speculative manner.
To debug this if it is happening to you, as soon as the box comes live do:
lsmod > modules.list && sync
and then in your 1 minute you start rename suspected kernel modules so they can't load and then do this till it stops rebooting. Once you find the module, add it to the blacklist and report to the maintainers.
Sam
I'm running some live production servers on sarge.
One of them updated and went into reboot hell - every minute it rebooted.
Luckily I'd already had this on another box and reported it and got a solution, so when it happened I knew I had 60 seconds to ssh in and rename a kernel module and sync the disks so on the next reboot hotplug wouldn't load it.
The lesson is that if stable is to stale for your live service, use testing by all means, but you'd better be able to deal with it.
Sam
You are right, and sadly Boa Constructor is the sticks - very good and finely honed firesticks - but sticks all the same.
Boa Constructor is too much like the class wrappers MS write for their own API, but still a great thing.
Maybe I should take another look and see what lazarus has done in the last 4 years or so. It seems to use GTK or Qt, I wish it used wxWidgets.
Sam
Good tip. Its a shame its gnome-specific, though.
I like wxWidgets because it wraps the native widget set of each target platform, somewhat after the style of Borland, so yourapps "look" native.
Sam
If Borland are being stinky, and poeople are starting to suffer from being "locked in" (even thought it was nice while it lasted) then its time to look at:
wxPython
and
Boa Constructor, a python IDE and RAD style designer. Its a bit harder than Delphi (or am I getting mentally stale) but at least its fully cross platform GUI and open source, so you get to increase your target market and never get locked in again.
No point in continuing with Delphi.net, it may only happen again in a few years when the fashions change.
I learned this lessen a few years ago when a nameless search engine salesman witheld some updates and we (Ananova/Orange) switched to the open source Xapian search engine and paid one of the original developers to do some more work on it for us. Xapian is now being trialed as the search engine behind gmane
Its the same lesson Richard Stallman learned years ago. Don't get locked in.
There's no need to learn that lesson twice. And, you may as well join the FSF while you are at it. You know it makes more sense than most political donations, and for less than the price of a night out each month! I got a copy of Lessigs "Free Culture" in the post today as part of my FSF membership.
Sam
Borland Pascal for Windows may have been a bit freakish but I don't see how you can say Delphi is or ever was.
I used Turbo Pascal for DOS to write real-mode device drivers that loaded before windows did that communicated and made callbacks to windows applications written in Delphi (using the DPMI 0.9 API)
There really was nothing that could not be done or hacked with Turbo Pascal (and assembly) and Delphi (and more assembly as needed).
Borland DID get windows, more than MS did.
None of MS widget wrappers around the raw windows API compare in any degree to Borlands excellent VCL (Visual Class Library) that encapsulated and extended windows in a most wonderful way.
I've seen people program in Delphi who only know how to program in C and it looked like it. Ugly, nasty code.
I've seen Delphi code written by people who understand object Pascal and it is a dream to behold. (I've done some good stuff too).
The reason Delphi didn't catch on enormously is partly to do with it not being a cross platorm language (object pascal I mean) butmostly for the same reasons smalltalk, scheme, EISA and so on didn't catch on. I wish I knew what that reason was.
Sam
By the tone of your post you seem angry about this book, and scared to read it in case you learn something new and doubt what you have done in the past.
...
1. How to setup replication with different architectures including master/slave, master/slave/slave (another level), replication rings, dual master replication with slaves and more.
Simple, just read a few pages on the MySQL documentation. [mysql.com]
Some people prefer printed book form, as some publishers are aware.
2. RAID (software vs. hardware), RAID types, IDE vs. SCSI. I know. I'm sure you've thought of these things already but most people will find something new here because there is a lot on it. It is quite dense.
What on earth does this have to do with MySQL specifically?
You might benefit from learning about it if you are trying to optimise an SQL server?
And furthermore, if you dont know about _RAID_, and need to be told the benefits of SCSI/Raid, do you really think you need MySQL clustering ?
Well, once the reader has read these chapters they can make this judgement. You've manage to make this judgement for EVERYONE without reading the chapter for which I congratulate you.
Any PC/Server with enough ram will push queries like a maniac. Also, check #4...
queries... I think this book isn't just a book about getting fast queries.
3. Selection of an OS. Seriously. It actually compares threading models on OSes compared to performance with MySQL. This is great stuff.
Great, now that i've bought this book, i'm supposed to _CHANGE_ OS in my server farm, just to gain a few more queries/sec ?
Steady there! Whoa! This isn't advertised as a book for people who are happy with what they have and know they did it right by instinct. This could just be a book for people who want to learn something before they decide what to do NEXT.
4. Selection of a filesystem on an OS. Yes, nitty gritty. Includes talk about journaling vs non-journaling benefits and warnings.
Filesystems? Oboy, anyone who knows about SQL performance knows that if you access _DISK_ during execution, you are screwed anyway.
And whats going to happen to your data when you power down? I suppose you've been committing all your data to files on the disk? It might just be useful to know about the benefits and dangers of the various filesystems.
Anyone who knows anything about indexing knows that btrees and rtrees are optimised for pulling data off random access media. There's better index forms if you are going to be ram based. I forget what they are because all my data is disk based.
5. Load balancing mySQL. How to do this through a load balancer. Why and how it's different than load balancing web servers.
This seems like a decent chapter.
6. How to backup live using replication.
DOH! We are talking backup here, right? Backup means archiving a copy of the database. MySQL allows you to use the magic command "cp" (or scp, or rsync, or..) Best # so far
Totally wrong. If you want to back up a database that is being modified, you need to lock it and that would stop updates. This certainly needs a chapter.
You could read a few pages on mysql.com about this instead if this book offends you. It sounds like you might need to. Some people prefer web sites to books.
7. I love this: Detailed information on how the replication system actually works. I love understanding the inner workings because then I know how/why things went wrong.
The updated node sends commands to the other machines to update as well. If something goes wrong, you could rollback the transaction.
If there are transactions? I can use mysqlbinlog and convert to ascii logs, edit the logs, and replay the edited logs. If you didn't know about this, maybe you acknowledge the need for a chap
4.1 is in "gamma". Good enough if you ask me.
NOT good enough for business. Unless it's marked stable, it doesn't go into a production environment.
Thats a very broad statement,and not true of many business.
Also, in my experience mysql gamma releases are more stable than the "stable" releases of some very expensive (unless you can get an 85% discount) commercial databases. But then its a simpler product.
Sam
Table scans are generally ONLY quick if ONE PROCESS is trying to process queries at once.
I had this beef with postgres a while back when I was doing the Ananova TV listings; once 2 queries are going at once table scans are deadly as well as trashing OS bufferred blocks from disk.
I had to increase the artificial "cost" of table scans to force postgres to prefer indexes and stop the system falling over.
My lesson is this:
Where table scans are quicker than indexes, the extra speed isn't important because the only running query has the box to itself anyway; so always use indexes, because it gives the speed when you really do need it.
I may come across a case where it isn't true, but this was working with 5GB tables and 20 simultaneous queries. Indexes were a darn site faster than the table scans which postgres tried to do.
Sam
I don't think I want to uncheck realtime filesystem protection.
I just don't need it to check the same old files that have been unchanged for years. My PC is so slow now.
Sam
matrix screensaver kicked in while the photographer was fiddling with his camera?
Sam
I spent hours trying to understand the twins paradox until it was explained to me that special relativity does not explain the twins paradox, only general relativity; and that the school book that went on about the twins paradox taught only special relativity.
Thats my excuse, its till on my list of things to learn.
Sam
When your post gets +modded it becomes more visible and more people moderate it.
Slack moderators don't concentrate on modding up more than down. Slack moderators also don't browse at -1, but +2, so by the time your posting becomes visible the good moderators start to leave off and the bad ones knock it back down again.
And of course, in a crowd the size of the slashdot crowd there is room for any number of moderator conspiracies to co-exist, no doubt there is more than one of the type you mentioned.
its the same sort of behaviour that swings online polls widely as the two extreme opposing camps canvas their friends and set up vote spoofers whenthey start to loose.
The answer is to meta-moderate.
It doesn't neccessarily mean that the bad moderators lose mod points in future but it does help make sure that the sort of moderators slashdot has are the sort of moderators it's readers appreciate.
Sam
No doubt moderators do mod up trash that merely seems informative. (Slackers!)
A nice side effect is that it draws attention to it and those who know the real story can put us right.
Sam
switch from "scan on access" to "scan on create"
I wish I could find this setting, I have NAV 2004
Sam
so instead the "enemy" sells the "infringed" patents to a shell company (*cough: IP company) that itself makes no use of any patents Novell has.
Sam
I made a mistake.
in tests before I submit a bug report I found that latest TB DOES correctly update the read-message status from the remote IMAP folder.
Sam
No, its like saying the State shouldn't provide you with free college education when most roads in your country aren't paved!
What is your fixation with paved roads? (Don't answer that)
We are NOT talking about the freedom to perform research, ie to sit down and study whatever you want. We are talking about institutional research
Good, they might invent a cheaper way to pave roads since McAdam all those years ago in 18th Century Britain.
Keeping intellectuals in the country is GOOD. The more smart brains you have in the country, the more likely they are to come up with a quicker solution. Lets face it, policiticians are good at getting elected as thats the only pre-requisite, but they are not creative inventors on the whole.
Why is this so complicated for the slashdot idiots to understand?
Cos we get distracted by insults so easily.
Freedom to you is such a simplistic notion you can scarcely understand the vast majority of Indians have barely the freedom to exist,
You guessed that wrong, see if you can guess what I'm thinking now.
let alone live. Freedom is an irrelevant word when dealing with a country like India.
And you want to say "oi, mr reseacher, STOP THAT. Don't you be doing no research till everyone ELSE is in school and has the same freedom you have. had. will have but not yet." So he goes to USA and does research there instead, for american companies to earn american dollars for america, that get spent in america.
Why stop at India? Lets take the entire world, why should USA or Russia be heading off to space when there is so much disease they could be spending money on?
The fact is there is always something else to spend money on and someone else who wants it spent on that.
If the Indian government had consulted you, you would no doubt be defending the status-quo against someone else.
In the meantime the Indian government seems to think pure government funded research to be a good idea and I agree with them. When enough of the currently under-educated indians agree with you it may change, you might cheer but I will be sad.
Sam
Some standard is being set in India which prioritizes how work is expended. Right now, that standard is NOT the well being of the people of India. Who cares if 100,000 people get to research all they want when 300,000,000 can't even read? Who is advocating ignorance here?
Which is like saying I shouldn't buy an ipod while there are people starving anywhere. Or wait, I should't buy a cell phone. Or a CD. Or even another pair of shoes if my first pair has any wear left - as long as someone somewhere is hungry.
If one of the 100,000 was going to do research in USA or India, let them choose to do it in India. Don't make them be a primary school teacher, they make hate it and put people off learning altogether.
Its a tempatation when dealing with figures to step too far and make decisions regarding peoples lives and freedoms - remove an arm here, make someone work in a coal mine there - as if its OK because the over-all picture is neater.
I think the other guy had it right.
Sam
I doubt you are living under a rock, and I've not been having "trouble" as such, I'm just saying OE behaves differently to TB
SAm
You areright, I should report these as bugs and will do so.
The message does get marked as readif I read it before it gets downloaded to the other PC. Ifit has already been downloaded but not read, then when it is read elsewhere it does not get marked as read on PCs that already have it.
It is ironic that for an applicationthat insists on checking theoriginal folderforso much, it fails to notice this change,
Sam
OE lets you access fully and in every way the cached imap items.
Thunderbird only lets you do this if you first elected to work offline; if not then the cached items are unavilable.
OE uses the cached item when you move messages, thunferbird wants to download them again.
If I have 2 IMAP PCs. noth OE, both having downloaded all messages, and I read a message on one of them it gets marked on the server as read, and then the other OE detects this and also marks them as read when it syncs.
Basically, thunderbird IMAP support is not transparent.
Its still very good, though, and the junkmail support overcomes this slight annoyances.
Sam
Since Borlands happy diversion with Kylix (happy for me) they have started taking the development process seriously and I think you should take a look at their product lifecyle tools.
http://www.borland.com/
They are taking very seriously the need for managing projects in all aspects.
Get an account manager to come and visit you and see what they suggest.
I had the speil a while back (2 years ago) but at the time it wasn't quite mature enough for the mobile patforms I was developing for, but I was impressed with the direction they were taking
Sam