Tag Archives: MCslp Coalface

Bad database design at Oracle

I was clearing out my email this morning and closing down some of the mailing lists and other elements that I don’t use, and removing others.

I’ve been an Oracle OTN member for years, but no longer get as much out of it as I used to. I almost thought about cancelling, but instead decided to try and change the email address on the account so that it would go into my ‘mailing lists’ account rather than an even older account that I will one day shut down for good.

But I can’t.

Why not? Because Oracle’s software doesn’t let me. It says so quite clearly in the FAQ.

Does the inability for Oracle to manage my data in an effective way worry you? It worries me. Changing an email address is surely something that many people must have to do as they change companies or ISPs, but apparently Oracle didn’t think about this when designing the system.

The solution? Unsubscribe from the newsletters for your existing account and create a new one. I did the first half of that, but I really can’t be bothered to do the second half.

Extra bash improvements

If you’ve read my Getting the most out of bash article at IBM developerWorks then you be interested in some further bash goodness and improvements.

Juliet Kemp covers some additional tricks on Improving bash to make working with bash easier. Some of the stuff there I have already covered, but the completion extensions might be useful if you like to optimize your typing.

Even better, one of the comments provides the hooks to change your prompt to include your current CVS branch, another to include your current platform, and a really cool way of simplifying your history searching.

XBOX360 and XBOX games

You know, I am consistently (and pleasantly) surprised at the compatibility of old XBOX games on the on the XBOX360. When you consider that the games are running and emulation (the platforms are completely different), the speed difference between the two is difficult to discern.

It is also interesting to see which games look as good when viewed at the higher res. Black, for example, looks just as good on my 20″ LCD panel and the XBOX360 at more than twice the resolution than it did on the XBOX. Far Cry, however, looks particularly pixellated at times.

The only time I use the original XBOX now is when playing Dancing Stage Unleashed where the screen and mat are easier to use together.

Geekbench results for iMac 24

I’ve just completed running Geekbench results for my 24″ iMac (3GB, Intel T7600, 2.33GHz) and the Sun Ultra 20M2 I have on test (4GB, AMD Opteron 1200 2.8GHz).

The overall rates are interesting:

iMac: 246*
U20M2: 273.5*

The U20M2 is slightly faster, although in use I think it’s much faster.

I’m still completing some tests on the U20 under different operating systems on the U20 to see whether there is some advantage to different OS on the U20M2.

*: The iMac is updated to the latest BIOS and latest updates, with other applications not running
*: The U20M2 is updated to the BIOS and drivers (from the 1.4 driver update CD), with other applications not running

Controlling OS X volume through Cron

One of the biggest annoyances of working from home is that with the computers in the room next door, the volume of your computers can cause a problem if someone suddenly calls you on Skype, or your backup software suddenly kicks in and starts beeping.

I never remember to mute the volume, so I started looking for a way to this automatically through cron at specific times. I also wanted to be sure that rather than setting a specific volume (and having to remember it), that I could just use the OS X mute function.

The solution is to combine Applescript, which you can run from the command line using the osascript command, with the command line limitations of cron.

There are three components, the two Applescripts that mute and unmute the volume, and the lines in a crontab to run the scripts.

To mute the volume with Applescript:

set volume with output muted

To unmute:

set volume without output muted

Save both these into Applescripts (use the Applescript editor so they are compiled).

Then we can just set the scripts to execute when required:

0 9 * * * osascript /usr/local/mcslp/volume-unmute.scpt
0 19 * * * osascript /usr/local/mcslp/volume-mute.scpt

I’ve set this on the three machines and now we get a silent night!

Busy New Year

Wow - if you hadn’t noticed, it’s been pretty quiet round here recently, and the reason is that things have simply been very busy. I’ve been churning out the IBM stuff (including some that hasn’t made it yet) - the main highlight is the big three-part tutorial series on using Application Virtualization as a grid-enabling solution (start with Application virtualization, Part 1: Level 1 - Abstracting your grid infrastructure). Part 3 should be coming out soon.

Also, things at MySQL are hectic - probably as best evidenced by posts like Slashdot | MySQL Falcon Storage Engine Open Sourced. One of the links embedded in there is the documentation on Falcon - written by yours truly - and accessible directly in the documentation The Falcon Storage Engine.

At the moment, I’m mostly working on Replication, some improvements to the APIs section (and some further updates for Connectors, now that C/ODBC 5 is on the way).

Hopefully things wont be as busy though; there’s a bunch of stuff to follow up on here.

Planet MCslp RSS feed links

I noticed today that the feed links on Planet MCslp were linked incorrectly to Coalface.

This only affects the links that were provided in the panel - if you’ve subscribed by clicking on the Subscribe button in your browser, or just supplied the main Planet MCslp URL (http://planet.mcslp.com), you should be subscribed just fine.

If you think you’ve got the wrong links, the way to check is examine what posts have appeared in your Planet MCslp feed - you should be getting a range of posts, including in the last week, four from Laptop Solaris, five from Computerworld, and three yesterday from the new Mobile blog generated by the camera on my mobile phone.

Cool tools for hot laptops

Belkin have announced two cool tools for using your hot laptop - and I’m talking about the temperature here.

You can see them at Gizmodo: Belkin Releases Lap-Friendly CushTop, PocketTop Laptop Accessories.

The CushTop is the one I’m most interested in. I have a wooden unit that I’ve been using for the last seven or eight years that Sharon bought for Christmas. It’s great, particularly on the sofabed here in the office, or the bed proper, but it doesn’t work so great with the new squishy leather sofa. There’s a better description of the CushTop on the Belkin website (Belkin: CushTop). The price is good too, but I guess I’ll have to wait a bit for it to hit the UK.

The PocketTop looks good too, and I like the ability to keep all the cables with the laptop, but it’s not going to work with the 17″ MBP…

Using static disks in Parallels for performance

Using a static disk, or even just multiple disks, within Parallels can make a big difference to performance. This is particularly true with Windows virtual machines within OS X; I’ve managed to change the boot time from about 30 seconds to under 20 just by changing to a static disk for VM.

The default disk in Parallels is an expanding type - this saves disk space, because Parallels automatically adds to the size of the disk as you need it, but it also means that Parallels has to manage the allocated disk space, adding to the file used. Not only does the management imply a small overhead, there is a much larger chance of the file being fragmented.

A more annoying effect is that the constant use of the expanding disk with virtual memory under Windows, means that size of the disk may increase just because you opened a large application once.

You can get round this by creating a statically-sized disk, and then setting the virtual memory within your virtual host, to use this statically sized disk.

To do this:

  1. Shutdown your virtual machine - you cannot do this with a machine in the paused stated, because you are effectively adding new hardware to the machine.
  2. Click Edit to edit the configuration for the virtual machine.
  3. Click Add, and select a new hard disk
  4. Unclick the Expanding checkbox and set the size; probably 1-2GB is fine, but keep in mind you will lose this amount of disk space permanently, even if your VM doesn’t use it all.
  5. Save your configuration.
  6. Start up your VM and configure the new drive.

For Windows:

  1. Log in as a user with Administrator privileges.
  2. Right click on My Computerand choose Manage.
  3. Choose Local Disk Management.
  4. Create a new partition/volume.
  5. Once the new disk is ready to use, right click on My Computer again, and choose Properties.
  6. Click the Advanced tab.
  7. Click Settings under Performance.
  8. Click the Advanced tab.
  9. Click Change under Virtual Memory.
  10. Reconfigure the VM settings, creating the new settings for the new drive (I recommend a lower value of 50MB and an upper value 2-10MB below the maximum size of the disk. Windows will use the minimum and dynamically increase it’s usage up until the maximum.
  11. Remove the VM configuration for the original system/expanding disk.

You should be all set.

It’s probably a good idea to run the Parallels Compressor and reduce the size of your disk now that you are no longer using the disk for virtual memory.

For Linux, Solaris and other Unix variants you might want to run, the process is of course slightly different. For some environments, there are other benefits, but I’ll cover that in a separate post.

Parallels Update

Parallels for Mac has been updated, but its the stuff beyond the highlight elements that I find most interesting.

The headline elements are:

  • Support for the new Mac Pro (and up to 3.5GB RAM
  • Support for Mac OS X 10.5 (Leopard)
  • Experimental support for Vista

That’s all great, and I’m just installing Vista beta 2 on the iMac as I type this on the MBP.

However, for me the key elements are:

  • Solaris guest OS no longer hangs after suspend/resume - this was a really annoying issue that begged me no end. Although my iMac 17″ stays on full time, my MBP is set to sleep after an hour, but leaving it alone while I’m updating Solaris 10 or running tests would mean that I’d have to force a reboot and sometimes start again.
  • Solaris doesn’t work with more than one virtual disk fix - this was particularly annoying, as I’ve been playing with ZFS, and having multiple, virtual hard disks to toy with would have been much better than playing with partitions.

So far, the new version seems great. Being able to play with ZFS (even with expanding disks) is fantastic. I’ve been too busy to let the machine sleep and trigger the freezing problem.