Forgot your password?

typodupeerror
User Journal

Journal: Undercover operations 2

Journal by Degrees

I migrated yet another GroupWise post office from NetWare to SuSE Linux this evening. However, I had undercover help.

The data on the NetWare volume was 65 GB. So we made the ext3 volume 100 GB. Did the initial copy, and had 1% free disk space left. Dang NetWare compressed volumes....

Time to expand the LUN for the new server. The destination box is a Xen VM guest. I'm shady on the details, but after the LUN was altered on the host VM, the entire blade has to be rebooted to see the new space. The admin who was going to take care of it, was going to do it early in this morning, as he normally shows up at 6:00 AM. About midnight, he wakes up: "Oh heck! I'm scheduled to come in late tomorrow!"

Still in bed, he grabs his BlackBerry and establishes a SSH connection to the host VM. Resizes the LUN from the command line and then reboots everything. All is well for me to get the job done tonight (which I did, and it went well).

I did say "undercover" did I not? ;-)

User Journal

Journal: Backing up OMG number of files - Parallel::Forkmanager did well 3

Journal by Degrees

In my last JE, I asked how to back up a directory structure with way too many subdirectories and files in it. One of the ideas was to do one tar job per top-level directory. Since this one didn't take any more disk space, the SAN guys wanted me to try it first. I had to learn how to use Perl's Parallel::Forkmanager. It worked well.

I have 256 top level directories, so I forked one tar job per directory. We took the VM that runs the server and configured it for four CPUs. I configured Parallel::Forkmanager to only allow four concurrent forked tar jobs. What was a 70+ hour single tar job became a 30 hour batch of 256+ tar jobs. The new scheme runs in 43% of the time of the old job. That's great.

Thank you for the advice. I'm using it well. :-)

User Journal

Journal: Recommendations for archiving a ton of files? 12

Journal by Degrees

I have a system that makes a metric buttload of small files, with a 1:1.2 ratio of files to folders. So 850 GB of files in one million subdirectories. The tape backup system chokes on this, and I have the disk space to copy everything into one big file - the tape system loves backing up that. As my storage grew, my initial .tar.gz job got to taking three days to complete. I thought that converting it to just a .tar file would speed it up, but the opposite happened. That may be due to the fact that I changed the destination file system at the same time.

Any suggestions for an optimal setup to copy a large number of small files into a single file for tape backup? The tape backup exists for disaster recovery, in case the SAN burps (again). I have a lot of flexibility on how to get the job done - suggestions welcome. If there are any system tuning parameters I ought to be looking at, please say so.

Thanks!

The Gimp

Journal: Whoops - don't upgrade The GIMP on Windows 3

Journal by Degrees

I had installed The GIMP on my wife's machine way back when. Version 2.2 on Windows. She wanted to scan and crop photos, and it seemed a good way to introduce the idea of free software to her. Free, as in hobbyists are writing it and giving their work away for free. The GIMP can do an awful lot, and my wife could see that we didn't have to pay a lot of money for an app that duplicates that The GIMP does. And, you can see that the world is just a little bit nicer, that people do good works and share it.

Alas, I had to work on her machine a week or two ago. While I was there, I upgraded to The GIMP 2.6.

The GIMP 2.6 does not do "Acquire from TWAIN'. Heck, that was the whole reason she used The GIMP.

Nicely enough, the downgrade was blindingly simple. But she will have to remember to never ever upgrade.

User Journal

Journal: Slashdot message center - it's back 4

Journal by Degrees

A few weeks ago I (and it seemed a number of other people) were dismayed that the link on the front page to the message center disappeared. I found it's been put back, though in a slightly different location. Now, underneath the list of new messages is a link "NN more" which takes one to the message center. It's on the right instead of the top center.

I know that I complain a lot about the way Slashdot is run. In this case, I want to specifically say: THANK YOU. Thank you very much. Taco and friends do deserve thanks for listening to their content-creation-base and acting on it.

User Journal

Journal: A thought on where organizations go wrong 11

Journal by Degrees

For a while now, I've been looking at the behavior of organizations to see if I can identify where it all went wrong. The vendor I have the most to do with is a huge glaring example. Slashdot itself repeatedly gets it wrong. The thievery at hospitals, ripoffs in the mortgage industry, the slow self destruction of the USA automobile industry - it all seems to point to the abandonment of the company motto:

"It's good to be a (insert name) customer".

If that were the standard by which organizational decisions were made, we wouldn't have all this trouble.

The Novell company motto seems to be "It sucks to be a Novell customer (and we're OK with that)". They do some very good technology, but insist on overpricing it (because it is NOT GOOD to be a Novell customer) and then wonder how they are going to pay the support bill for a product with 1% market penetration.

The Slashdot company motto seems to be "We'll write the code the way we want to, and you all can piss off". Yes, as a matter of fact, I liked the front page to have the one line messages status text and link to all my pending messages. Posting this JE took far more work to get to the 'create a journal' link than in the past. But I don't expect it to change, because "It sucks to be a Slashdot content provider (and we're OK with that)".

Golden West started it's wholesale ripoff of people by handing out first ARM mortgages, then NINJA mortgages. By that time, their company motto had become "It's stupid to be a Golden West customer (but we're OK with that)". It's worth noting that the banking crises did NOT affect most of the small town local banks who don't view their customers as prey.

When was the last time someone bought a new Chevrolet and said to themselves "Well, at least I didn't get stuck with a Toyota!" (because "It's sad to be a bailout car customer (but we're OK with that)").

There are countless organizations where the company motto is "It's good to be a (insert name) shareholder (but we play our customers for fools, and we're OK with that)".

It's few and far between, but:

"It's good to be a Costco customer".
"It's good to be an Amazon.com customer".
"It's good to be a Netflix customer".
"It's good to be an Apple customer".

Why is it so hard for organizations to fight the decisions that transform themselves into a "It sucks to be a (our name) customer"?

User Journal

Journal: How to add RAM to a server so nobody notices: virtualize 6

Journal by Degrees

Yesterday I noticed that my GroupWise mailbox was snappier. Didn't know why, and thought that maybe the email archiving software had trimmed my mailbox (which would be a good thing). I've got 19 GB in my mailbox, and 18 GB of it ought to relegated to the archive. Nope - turns out my co-worker had added RAM to the server while nobody was watching.

GroupWise has a mode called Client/Server where your desktop fat client talks to the server via TCP/IP packets. Back around GroupWise 5, if the post office agent (on the server) went down at all, everyone knew it because every machine immediately got an error on the screen: lost contact with server! Somewhere around GroupWise 6 or 6.5, Novell reprogrammed the fat client to wait instead of immediately throwing up an error. The timeout is about 30 seconds.

Last year we started a whole push to virtualize as much as we can. We use Xen virtualization, as that is what Novell supports and includes in SuSE. Paravirtualization has a few advantages, one of which is that you are essentially running a guest OS that is the same as the host OS. So when it comes time to reboot, the OS is already loaded in RAM - the Xen host just has to create the guest, and do a bit of linking. We typically see an init 6 take ten seconds from time we lose continuous ping packets to the time we get them back.

My co-worker was looking at the server stats, and the mail server showed pretty much 100% utilization 24 x 7. Certainly the post office seemed slow. He thought it might be a process gone bad, but no - the mail server was just that busy. It looked like it could use a little more RAM though.

(Prepare by opening the Virtual Machine Manager)

Init 0
Edit the VM definition to have another 1 GB RAM
Init 3

It is up, and before the 30 second timeout from 120 fat clients. Nobody notices, nobody calls. It just works (and faster, too).

Sweet. :-)

User Journal

Journal: Yes, Perl sucks 14

Journal by Degrees

I'm an old guy (my first program was in FORTRAN on punched cards in 1979) and I learned programming the old-fashioned way. Which means that I like my source code to be obvious as hell.

Here's what makes sense to me*:

$source = "abcdef";
$pattern = '/^def/';
preg_match($pattern, $source, $destination);
print($destination);

Really, what I want is:

$source = "abcdef";
$pattern = "/^def/";
$destination = regex_match($source, $pattern);
print($destination);

How it's done in Perl:

$source = "abcdef";
$pattern = '/^def/';
$source =~ /($pattern)/;
$destination = $1;
print($destination);

Why do I hate thee? Instead of letting me assign something to $destination, I have to encapsulate my regex pattern within parenthesis (because OF COURSE that's the assignment operator), and now the result will magically be assigned to variable $1 - wherever the hell $1 came from. THEN I'm allowed to assign $1 to $destination. Wonderful. And by the way, the single quotes around the regex pattern matter - you cannot put it between double quotes.

Obvious as hell, it ain't.

*Note that first snippet is working PHP code. Yes, I would have answered my own rant, except that my postfix and GroupWise boxes do have Perl on them, and do not have PHP on them.

User Journal

Journal: I like KDE4, but....

Journal by Degrees

So no-one wants to maintain KRegExpEditor which was a part of KDE 3 utils. So it was dropped out of KDE 4. Turns out the least hassle way for me to run a local regex tester is to:

1) install Wine
2) install Microsoft Visual C++ 2005 Redistributable Package (x86)
3) install The Regex Coach from http://weitz.de/regex-coach/#install

gnome doesn't seem to have a regex buddy either. Yes, there are a ton of web sites that will do the work - but I don't really want to work like that.

Well, it is better than cranking up the xen virtual machine I have of Windows XP Home.... Cut and paste is far easier.

If you push the "extra ice" button on the soft drink vending machine, you won't get any ice. If you push the "no ice" button, you'll get ice, but no cup.

Working...