Search

OakieTags

Who's online

There are currently 0 users and 26 guests online.

Recent comments

Oakies Blog Aggregator

Mike Carey: The Naming of the Beasts…

“The Naming of the Beasts” is book 5 in the Felix Castor series by Mike Carey. Juliet, the succubus, has gone all wild, beaten up her human wife and is on the verge of feasting on aroused men’s souls again. Felix’s friend Rafi, still possessed by the demon Asmodeus, has gone AWOL and started a killing spree. Life’s never easy when you’re a freelance exorcist… :)

This is the last in the series so far and it maintains the pace of the other books, while tying up a lot of loose ends. According to Wikipedia the next book is out late 2001 (imminently). It will be interesting to see what Felix does next, since the main thrust of the story of the first 5 books is now concluded.

Cheers

Tim…




And so the evenings start drawing out (honest!)

I know I’ve blogged about this before, but it was early on when very few people read my ramblings, so I am mentioning it again…

For those of us in the Northern Hemisphere, today is the day when the evenings start drawing out, which personally I find a relief as going home in the dark depresses me. Sunset tomorrow will be later than today – by all of a few seconds but, heck, later is later. {If I am out by a day, please don’t tell me – don’t shatter my good mood!}

However, as many of you are probably thinking, shortest day in the Northern hemisphere is not until the 22nd December (it’s the 21st or 22nd, depending on how long ago the last leap year was). Mornings continue to get later until around the 3rd January. It is because the earth is not “standing totally upright” in it’s orbit. If you think of the plane in which the earth circles around the sun as a flat surface, the north pole is at the top of the planet and that there is a pole sticking though the earth that it spins around every day, that pole is leaning back away from the sun today and slightly to one side, like a staggering drunk.

For the timing of sunrise and sunset for the city nearest you, check out this nice website here. This link will show London but you can change that.

The original post is here. It does not say any more but there are a couple of pretty sunset pictures on it.

Of course, if you are in the Southern Hemisphere {say Perth, Australia} then your sunrises have just started getting later by today. But time for the Barby in the evening is still drawing out for a week or two. We can all be happy :-)

WordPress 3.3 Released…

WordPress 3.3 is now live and ready for download.

The automatic upgrade was as smooth as ever. A couple of themes needed to be upgraded too. The menus are a little different and there is now a new persistent dashboard header, but it all seems like business as usual for the casual blogger like me.

Cheers

Tim…




UKOUG 2011 - OAK Talks and Unconference

There were a couple of new and related features at this years conference - the Unconference and OAK Talks.

The idea of an Unconference will be familiar to those who have attended Openworld - an unscheduled part of the conference that anyone can sign up for to present during a one hour slot. First come, first served. I was a little concerned about how this might take off because it needs a lot of advertising or to be in a prominent location, otherwise it just passes people by. Even at OOW, where they do a reasonable job of pushing it, it's not uncommon for sessions to be attended by a handful of people, although that in itself can lead to an interesting experience as I had several major OEM luminaries in my OEM session one year and it turned into a discussion of the finer points of the Performance Pages and potential improvements!

I feel the UKOUG could have done better here and I suspect they know that. The Unconference area was far from clearly marked and stuck out of the way on the balcony of the exhibition hall and my heart sank when I checked out how many people had signed up to present :-( Really, people should take this kind of opportunity to speak when perhaps their presentation abstracts weren't accepted or they want to talk on a subject that would have no chance of making it on to the main agenda. They could even try and be funny or entertaining! Then again, if you don't think you'll have attendees, you're hardly likely to sign up and so it becomes a vicious circle. I hope the UKOUG don't give up on it, though, and try to improve the promotion of it next year because I like even more opportunities for new speakers and more off-beat presentations where possible. I know that Greg Rahn had a 2-hour session there that people raved about and I was sorry I missed it.

It was at least partly to promote the conference that a few of us came up with the idea of getting Oak Table Network members to give some presentations and James Morle suggested OAK Talks. 5 x 10 minute presentations which would hopefully be short, entertaining and make an interesting point or two. By holding them in the Unconference area over lunchtime, we hoped to promote it. I discussed the background to this more here.

I'd agreed to be one of the speakers in the first lunchtime slot and when we all finally worked out where the Unconference area was, my heart sank again. It looked like the OAK Talks might become too literal as a bunch of Oakies talked to other Oakies.  Might as well have been in the pub, in that case! But, true to form, James took the thing by the scruff of the neck and an announcement was made in the Exhibition Hall so that the occasional person wondered in, if only for a place to sit down and eat their lunch ;-)

The main problem on the first day was that the noise-levels from the Exhibition Hall made it very difficult to hear people and the level of concentration killed the atmosphere a bit but, as new speakers took their turns, we started to realise that the only option was to shout a bit which wasn't too difficult in my case. Yet again, problems were identified and resolved and a small PA appeared for the next two days which made things better. It was still a pretty noisy location, though!

With 15 different talks of such varying messages and styles, I won't bore you with them all, but just pick out a few personal memories. Apologies to those who didn't make it - it's because you weren't very good. << Scottish humour.

- Tuomas Pystynen kicked off proceedings talking about RMAN and levels of backup compression and performance. Tuomas deserves a medal for being the first speaker because, as well as the noise and gradually growing audience, others would later discover that doing one of these talks was petrifying compared to giving a standard 45-60 minute presentation with the crutch of presentation slides and space to veer off track. Between the intimacy of the audience, the tight timescale and the lack of easy props, several of us discussed what a challenge it had been! Of course, it probably doesn't help that I suspect a lot of these talks had been developed entirely in a few minutes in a bar or airport somewhere ;-) Well done, Tuomas, for having the guts to get the show on the road!

- Me (of course) talking about You Probably Don't Need Exadata. This was inspired by Moans Longballs Nogood's much earlier paper You Probably Don't Need RAC and, whilst I planned it to be much more withering and sarcastic than I think I was (because I forgot most of my mini-speech as soon as I started), I was essentially making the point that Exadata is not the only solution out there and that the right solution for you depends on your workload and, erm, maybe some optimisation of your application might be a better first step? Just a thought. A personal highlight was Greg Rahn walking in 2/3 of the way through and the only available seat being right under my nose as I ranted and raved about Exadata, but it all added to the fun ;-) By this time, the area was pretty full and, when it was, it was actually a cool and unusual atmosphere to present in.

Here's a tiny version of the wide-screen shot, courtesy of Neil Chandler.

- The only thing missing from Neil's picture of Jonathan Lewis presenting on how to build test data rapidly for experiments is that he missed the moment when, after some discussion about whether Jonathan had made a mistake or not, Jonathan solved the problem by screwing up the bit of paper and deciding to eat it! A perfect informal presentation moment and exactly what the Oak Table Network is about. Are you sure you've written that properly? Cracking talk, too.

- Alex Gorbachev talking about the Oracle Database Appliance. I and others have questioned the value of the ODA and whether it hasn't perhaps been over-played a little by partner consulting companies? ;-) Alex, never one to avoid a challenge, decided he would pick this moment to say why he thought it was a worthwhile proposition. It keeps coming back to ease of deployment and he contrasted it with the somewhat more tricky work that had been going on at RAC Attack. At the end of the presentation he looked over and wondered whether he might have persuaded certain grumpy old people and got a begrudging and limited nod of approval! LOL

- Ever since I sat in a presentation audience with John Beresniewicz (JB) several years ago and he had murmured - "that's because DB Time is fungible", I'd become mildly obsessed with this property of DB Time and was hoping to hear him talk about it at UKOUG last year, but his abstract didn't make the cut. So an OAK Talk was the perfect opportunity for him to at least let a few more people know! As he'd thought about the subject longer, though, it turned out that maybe DB Time is more liquid than fungible but the practicalities are that maybe DB Time is a good metric to use when implementing charge-back for system resource usage because most metrics don't give a great idea of how much a system is actually being used by specific business exercises? He also higlighted how it can be sliced and diced across different application components, users, SQL statements and all the other nice dimensions that ASH gives you so it's easy to apportion time-based usage to the proper charging pot!

Updated Later: Oh, I almost forgot to mention the hilarious moment when JB, picking on a couple of people he knew in the room to make a simple point about costs, seemed to imply that my consulting rate might be higher than Cary Millsap's. In ... my ... dreams ... ;-)

There were lots of other talks I could mention and this became an immutable slot on my agenda. The opportunity to sit and chill out and not be bored senseless. It could have used a better venue, it definitely needed the PA and, as with anything so informal, it was at times sprawling and variable, but I wouldn't have missed it for the world, although most of us who presented wouldn't have minded missing out on the stress levels leading up to our individual moment!

I was discussing this later in the conference with a few of my many friends who are not Oak Table Network members. (Yes, it's true, I really have some.) They would have been keen to participate too and so the quesiton arises, should someone try to organise more slots in a similar vein next year? I'm interested in hearing further comments on that ....

Oh, and well done to James for herdiing cats and doing the most to pull the whole thing together.

Usual disclosure: My travel and accommodation expenses were covered
by the Oracle ACE Director
program.

UKOUG 2011 Conference OakTable Sunday by Alex Gorbachev

This blog post covers day 0 of UKOUG 2011 — Sunday, 4th of December, 2011. Since there were so many of us from Pythian at the conference, I’m adding my name in the blog post title. I think I will be doing it for all conference posts as I think I’ve been doing for some [...]

Getting started with FusionIO

I have been lucky enough to do some work with Fusion IO cards in a blade server, soon to be followed by another set of tests on a full rack mounted server. I didn’t know exactly where model I was given, but powered my server down in eager anticipation of the events to come.

After the engineer plugged the card in, and powered the server up I logged in as root to find out what about the pre-christmas present. I knew it was a PCI card, so surely lspci would tell me more. Here’s the output:

lspci -vvvv

41:00.0 Mass storage controller: Fusion-io ioDimm3 (v1.2) (rev 01)
Subsystem: Hewlett-Packard Company Unknown device 324d
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- 

So it’s indeed a FusionIO card (an ioDrive to be precise), and it’s plugged into a x4 slot, the mimimum required.

What to do next? Always good to read the docs. The fusionio.com website allows you to download documentation and drivers after a free registration. Luckily the website didn’t have kernel modules for Oracle Linux I’m using (RHEL 5 only), which gives me the opportunity to build the software from source. I don’t like surprises, therefore I created my ~/.rpmmacros with the following content:

[root@computer1 rpm]# cat ~/.rpmmacros
%_topdir /home/martin/rpm
%_tmppath /home/martin/rpm/tmp

This obviously requires the full tree underneath the topdir, namely

  • BUILD
  • BUILDROOT
  • RPMS
  • SOURCES
  • SPECS
  • SRPMS
  • tmp

With these directories in place it’s as simple as running rpmbuild –rebuild iomemory-vsl-2.3.1.123-1.0.src.rpm as a non-root user (martin in my case) and wait for the RPMs to be created in the RPMs/x86-64 directory. Following the documentation again I installed the needed software:

[root@computer1 x86_64]# rpm -ihv iomemory-vsl-2.6.18-194.26.1.0.1.el5-2.3.1.123-1.0.x86_64.rpm
Preparing...                ########################################### [100%]
1:iomemory-vsl-2.6.18-194########################################### [100%]
[root@computer1 fusionio]# rpm -Uvh lib*.rpm
Preparing...                ########################################### [100%]
1:libfio                 ########################################### [ 50%]
2:libfusionjni           ########################################### [100%]
[root@computer1 fusionio]# rpm -Uvh fio*.rpm
Preparing...                ########################################### [100%]
1:fio-common             ########################################### [ 14%]
2:fio-util               ########################################### [ 29%]
3:fio-remote-util        ########################################### [ 43%]
4:fio-smis               ########################################### [ 57%]
5:fio-snmp-agentx        ########################################### [ 71%]
6:fio-snmp-mib           ########################################### [ 86%]
7:fio-sysvinit           ########################################### [100%]
[root@computer1 fusionio]#

Note that you don’t actually need the fio-sysvinit package if your distribution is reasonably modern. UDEV will load any drivers automatically.

With that completed as well it’s time to load the kernel module and watch Linux do the rest. The fio-status tool queries the card’s helth:

[root@computer1 x86_64]# fio-status

Found 1 ioDrive in this system
Fusion-io driver version: 2.3.1 build 123

fct0    Attached as 'fioa' (block device)
HP StorageWorks 320GB IO Accelerator, Product Number:AJ878A SN:07902
Alt PN:507152-001
PCI:41:00.0
Firmware v5.0.5, rev 43674
322.55 GBytes block device size, 396 GBytes physical device size
Sufficient power available: Unknown
Internal temperature: 40.4 degC, max 40.9 degC
Media status: Healthy; Reserves: 100.00%, warn at 10.00%

That’s it! so simple-another blog post will detail how I ran a first orion benchmark on it and show some impressive numbers.

More Hosting Provider Fallout…

I posted a rant about my hosting provider about 10 days ago. As I mentioned in the post, I quickly got the site up and running again. Pretty soon after that I was at the UKOUG conference and Cary Millsap‘s training course, so I never really got time to look at things again…

On Thursday evening I took a proper look at the site and OMG, what a mess. Here are some of the issues I’ve been firefighting since Thursday…

  • Some images had been lost during the move. I managed to recovery them from a filesystem backup.
  • The version of PHP had changed and the error_log was full of warnings. If seems some of my PHP was not ideal, but it had never presented a problem before. Most of the things were little and fixed quickly once I had found them. In my defense, some of the code was many years old. :)
  • Some of the PHP configuration settings had changed, making my back-end code react differently.

The last issue was the big one. Many moons ago I wrote my own custom CMS using PHP and mySQL to manage the site. Most of the site is flat files, but the content of the database is the single point of truth for me. Once I make a change, the flat page(s) are regenerated to reflect the change. The problem was my CMS was screwed. It’s fixed now, but a significant number of pages in the database contain some logical corruption. This doesn’t affect what people see on the site, it just means the database is no longer the single point of truth.

I’ve written some tools to help me fix the data in the database, but I’m not willing to let them roam free. I’m using them to work through the pages one at a time. It’s very labor intensive, but it’s the safest option.

Two bonuses of this whole fiasco are:

  • I’ve got to revamp some of the terrible HTML I used back in the day.
  • I noticed how many of my images are being hot-linked by people. All their requests for the missing images showed up as errors in my error log. This is what alerted me to the missing images in the first place. So not only are these people stealing my content, but they are too lazy to actually copy the images and are using my bandwidth to serve their articles. I’ve put a stop to that. See preventing hot-linking. I’ve allowed Google and Orana.info to continue hot-linking for obvious reasons.

I was speaking to someone in Bulgaria about the site and mentioned that every year it gets bigger and the time I spend maintaining it, rather than writing new content, increases. This just goes to prove it.

So it looks like the next few days are going to be very busy and very boring. :(

Cheers

Tim…




UKOUG 2011

The UKOUG Technology conference in Birmingham was yet another great showcase of Oracle knowledge sharing and networking. The weather was surprisingly good for that time of year in Birmingham, though, the conference kept me so busy that I rarely had a chance to walk the streets. I had the opportunity to hear a presentation by and then speak with Bryn Llewellyn from Oracle; I’ve subsequently improved (I hope) my paper on Edition Based Redefinition; I’ll be presenting a new and improved version at Collaborate in Las Vegas this spring. Another highlight was watching a team of Oracle Middleware experts from Holland work to create a replacement conference registration system in a four-hour session using Oracle SOA, BPEL, ADF, and other middleware tools. What a demonstration of flexibility and capability!

UKOUG 2011: Drag, Drop and other Stuff. Using your Database as a File Server

Last Thuesday, Mark Drake, Senior Product Manager and I, delivered a good presentation during UKOUG in Birmingham about how to use your database, via XMLDB functionality, as a file server. The presentation demonstrated as well how you could extent the “standaard” file server (aka your database) functionality with features like, WebDAV driven ACL Security and

Read More…

Challenges and Chances of the 11g Query Optimizer

Challenges and Chances of the 11g Query Optimizer is the name of a presentation I gave at several events (e.g. Trivadis Performance Days, Oracle OpenWorld, DOAG Konferenz, UKOUG Conference) throughout 2011. Its abstract is the following:

With every new release, the query optimizer is enhanced. Oracle Database 11g Release 1 and Release 2 are no exception to the rule. Specifically, they introduce key improvements in the following areas: indexing, optimization techniques, object statistics and plan stability. The aim of this presentation is to review the new features from a practical point of view as well as to point out challenges related to them. In other words, to let you know what you can expect from the query optimizer when you upgrade to Oracle Database 11g.

The aim of this short post is to point out that I made available the current version of the slides and all the scripts that go with them here.

The structure of the presentation (incl. a reference to the available scripts) is the following:

  • Observations
    • Number of Query Optimizer Parameters by Release
    • Number of Query Optimizer Bugs Fixed by Patchset
  • Indexing
    • Invisible Indexes (ex_invisible_index.sql)
    • Index Support for Linguistic LIKE (ex_linguistic_like.sql)
    • INDEX REBUILD and Statistics History (ex_index_rebuild.sql)
  • Optimization Techniques
    • Full Outer Join (ex_full_outer_join.sql)
    • Join-Filter Pruning (ex_join_filter_pruning.sql)
    • Table Expansion (ex_table_expansion.sql)
    • Join Factorization (ex_join_factorization.sql)
    • OR Expansion (ex_or_expansion.sql)
    • Join Elimination (ex_join_elimination.sql)
    • Subquery Unnesting (ex_subquery_unnesting.sql)
  • System and Object Statistics (DBMS_STATS)
    • Workload System Statistics
    • Object Statistics – Default Preferences
    • Object Statistics – Auto Sample Size
    • Object Statistics – Pending Statistics (ex_pending_object_statistics.sql)
    • Object Statistics – Incremental Statistics (ex_incremental_stats.sql)
    • Object Statistics – Extended Statistics on Expressions (ex_extended_statistics1.sql)
    • Object Statistics – Extended Statistics on Column Groups (ex_extended_statistics2.sql)
    • Object Statistics – Seeding Column Groups
    • Object Statistics – Comparing Statistics (ex_comparing_statistics.sql)
    • Object Statistics – Locks not Exported
    • JOB_QUEUE_PROCESSES
  • Plan Stability
    • CURSOR_SHARING
    • SQL Plan Baselines (ex_execution_plan_stability.sql, ex_execution_plan_stability_10g.sql, ex_execution_plan_stability_11g.sql)
    • Stored Outlines
    • Adaptive Cursor Sharing (ex_bind_peeking.sql, ex_bind_peeking_bind_aware.sql)
    • Cardinality Feedback (ex_cardinality_feedback.sql)