Endymion is the third book in the Hyperion Cantos series by Dan Simmons.

After finding the last book a little patchy at times, this one returned to the same sort of pacing and thrust that made me love the first book. This story picks up nearly 300 years after the last one ends. The daughter of one of the characters from the previous book entered one of the time tombs and appeared in Hyperion 274 years later. Since then things have changed throughout the former web worlds and the church has a vested interest in keeping things the way they are. The last thing they need is a little girl, with the power to topple their stronghold on the galaxy, messing things up for them.

The timeline does jump around a little and there are always a couple of stories happening at the same time, but it is a lot more direct and easier to follow than the last book. I think this was helped by the fact I was able to read is in relatively few sittings. OK, they were spread over the best part of a month, but at least each time I picked it up I got through quite a few pages.

I’m really looking forward to the last book in the series. Fingers crossed it ends strongly…



Oracle Cloud Control EMCLI : First Thoughts

Whilst waiting for a new version of Cloud Control, which will hopefully include my job scheduler enhancement requests, I decided to see if I could solve my problem using the command line interface (EMCLI). That spawned this very basic article.

I was initially really excited by the EMCLI, planning to pretty much replace my job creation with EMCLI scripts, but there seem to be a bunch of discrepancies with the EMCLI compared to the regular Cloud Control interface. Now I admit I’m a newbie at this, but here’s what I’ve seen so far.

The built in help is fine, sometimes prompting you with other commands to get more information, but sometimes it leaves quite important stuff out. For example, when you do a “describe_job_type” for the job type “RMANScript”, it does not include the possible schedule information, so it appears you can only schedule one-off jobs. A little digging and you find the scheduling is possible, and seems to work OK. It’s a little annoying this isn’t included in the property file template though.

It would seem like the easiest way to figure out how to schedule a job using EMCLI would be to create a DB backup job manually, the use the “describe_job” verb to figure out what the job properties are. The problem is, you can’t describe a job with the job type of “Backup”.

C:\emcli>emcli describe_job -name=test_db_backup
job type [Backup] not supported in EMCLI.


But wait a minute. When you create a DB backup from EMCLI it is created with the job type of “RMANScript”, which works with “describe_job” just fine. So why do the two methods for creating a job to do the same thing use a different job type? Even if that were sensible for some reason, why does the job type of “Backup” not work with the “describe_job” verb?

My next issue was I can create and delete a one-off job using “create_job” and “delete_job” respectively, but as soon as I create a scheduled job with a repeating schedule, the “delete_job” verb seems to be useless, because as long as there is a scheduled run in the future, you get the following message.

C:\emcli>emcli delete_job -name=test_db_backup
Error: Cannot delete a job with active executions. Before deletion, the job status must be one of STOPPED,COMPLETED,ABORTED, or FAILED.


Remember, this is not a running job, just a job that is scheduled to run in the future. If you try to delete the job from the Cloud Control interface it works fine…

As I said before, I’m a total newbie at this EMCLI stuff, so it may be my (lack of) understanding that is wrong, but there seems to be a number of inconsistencies that make it really annoying. I’m raising enhancement requests as I find these issues, so hopefully things will be resolved in future releases, or the responses will explain why my issues are due to be being a dumb-ass. 🙂

Moaning aside, I think the EMCLI stuff has got a lot of potential. Personally, I would like to script a lot of the configuration, giving the option of clean installs of new versions as well as upgrades.