Friday, May 16, 2014

JDBC and CMAN and a new location for the database

I had an interesting issue this week.

The setup is as follows:

WLS with Webcenter. The Datasource point to a database for the metadata. This database sits in the database zone. As we are not allowed to connect directly to the database there is a CMAN in between.
After the setup of the CMAN and the database we had a connection using JDBC where the CMAN was our endpoint.

So far so good.

Now the IT department decided (a long time ago) to move a number of databases from one platform to another. As this meant a change in the IP and name of the database we expected that the only configuration that was needed to change was the CMAN.

Database moved, CMAN config adapted and voila: nothing works!

First test was to use the console and test the JDBC connection. Error was a

ORA-12514 TNS:listener does not currently know of service requested in connect descriptor.

This in itself was strange as from the WLS/Webcenter perspective nothing did change. Endpoint was still the CMAN, SID did not change after the move.

Second test was to see if the connection from the WLS machine to the CMAN was still OK. As there was no Oracle client on the system I just used a telnet connection to the assigned CMAN port. Perfect result: the connection was open, so something was listening on the machine on the given port. As I am positive that this machine only harbors a CMAN I was happy.

Third check - going to the CMAN folks and see if the connection from the CMAN to the DB was OK.
Worked like a charm. Config looked perfect to. 

Now this became a kind of a puzzle.

I went back to the WLS Admin console and restarted the JDBC connection. Still the same error.

I tried to change some settings in the JDBC settings but no avail.

Just for the fun of it I created a new JDBC connection pointing to the same CMAN endpoint with absolutely the same settings as before. Assigned the new JDBC datasource to a managed server (actually the cluster) and hit the test button. Now everything was the same as before but the name. It worked. Hooray!!!

As we had a number of datasources with some of them having names that are used inside the applications it seemed like a tedious idea to drop the datasources and recreate them. I did this for one cluster and it worked but I was a little bit too lazy to do this for all of them.

Then I tried something else. I went to a managed server of another domain and restarted it.
When it came back - which surprised me with a "broken" datasource - I went to the datasource and tested it again. Immediately the test can back without an error.

Trying another one - same result.
So obviously I restarted all MS (and the AS as they need db access as well). 

I wanted to let you know this as such a setting can impact your MAA environment when you change the endpoint of a database behind a CMAN.


Friday, December 07, 2012

Cloud Control agent does not deal well with redeployments

Cloud Control Agent shows SCA as down after redeployment

In a lot of environments the development process calls for a daily rebuild of the system. This is typically followed by a (re)deployment of the SCA’s to the Fusion Middleware environment.

In one of my customers environments I had to deal with the issue that each morning the SOA SCA’s were depicted in the Cloud Control as down. A quick check on the server showed them up and running. The same happened in the Enterprise Manager of the server. So the redeployment worked as it should.

So why were the SCA’s noted as down in the Cloud Control when the EM showed them as up? This has to do with the way the agent of the Cloud Control works. The interactive way is described in the following manual:

Now when an agent has found an SCA it does not automatically update the lifecycle status of this deployment. So a redeployment does add a new label to a SCA in a partition. The agent seems to be unaware of such a change in the partition and clings to its formerly known label.

Obviously it is disturbing when you look into your Cloud Control dashboard and you find that a (large) number of targets are down.

The Admin Guide shows how to manually update the collection.

In the process to look for new or modified targets is described. That certainly works if you have only a small environment (say one or two SOA Suite installations) with a low-frequency of redeployments. If you redeploy each night you will need a better approach.

The problem with the automation of this approach is that it is very well hidden (and to my knowledge) not documented.

What you need to do is to go to the domain that contains your deployments. In that summary screen you will see the status (below a screenshot after a manual refresh).

Look at the Date/Timestamp on the page (red circle). If you click on it the following pop-up box will show:

When you check the box next to “Enable Automatic Refresh” you will end with a job that will be editable in the job list. You cannot create such a job in the job section, but you can edit its frequency. The best frequency is to do this right after the nightly deployment run.

Tuesday, August 07, 2012

SOA Suite partitioning

For a customer I am busy to develop a SOA Suite purging strategy. As we expect the system to have a high number of instances we will have to keep the dehydration store and the MDS clean. The last is also essential as the end customer is under some budget constraints, which leads to the fact that the database (and especially the size of the disks) is nothing that will be allowed to grow limitless.

Now - one of the important features of the database when it comes to space management is partitioning. Partitioning a table gives you more management capabilities and tools to keep your DB size manageble.

There are a number of pointers in the documentation that describe how the database partinioning can be used for the SOA Suite - with one essential part missing: how to set it up.
There is a remark that the creation of partitions is a task for a skilled DBA (true) and a second remark that states that the admin guide will not describe it.

So when you want to use partitioning for your SOA Suite MDS you are on your own.
The RCU won't help you, the admin guide is vague and Google seems to point to SOA Suite partinioning in a different sense (the old BPEL domains).

There is only one thing that can help: an Oracle ACE willing to make it work, document it and spread the word.
So stay tuned as I will post my findings here in the next couple of days/weeks.

Monday, February 06, 2012

How Oracle SOA saved my life

OK - I exaggerated a little bit in the title - but as you may have noticed - it is VERY cold in central Europe. Now this guy here loves the sun. I admit I love the SUN products as well, but normally I refer to the big yellow thing in the sky.

Leaving the Netherlands for a long weekend with my wife to travel to Malaga is nice. But to feel the Spanish winter sun with 16 C (+ that is) instead of the Dutch version of it (-10) gave me the feeling that coming to Malaga for the SOA Community Forum is a kind of a life saver. So yes - I combined business with pleasure, but sometimes you just have to.

In addition to that - staying abreast of things that go on in the community, in the SOA Suite arena in general and meeting a couple of old friends (and hopefully making some new ones along the line) is a thing that can be compared to a life saver. Although in a project an error does not automatically mean that blood flows through the streets, having a good knowledge of the products you work with is very helpful.

So I hope that you will envy me to type this in the afternoon sun, enjoying tapas and meet some folks tonight in Malaga, instead of freezing, eating snert (look it up on Wikipedia).
Come to an Oracle Fusion Middleware Community as well - it might save your life ;-)

Sunday, January 22, 2012

Use RDA or Enterprise Manager for Governance

Within my current project I ended up in an interesting discussion. As part of the governance or more specifically some government regulations for the systems security we needed a description of the system components.

Obviously there are several layers for this topic, but in order to have a complete view of the system a list of installed system components and also of the systems configuration was desired.

Well, as you can guess, there was no tangible description of the current configuration, and there was also only a sketchy overview of the Oracle components which were used to build the system.

So, the first idea was to ask the various departments which were involved in the setup and configuration of the system to use a variety of tools and approaches to deliver the information.
I offered the idea to use "the one ring to rule them all" approach. Oracle offers two tools that provide an overview of the used components, their configuration and even of platform settings.

One tool would be either the local Enterprise Manager or the central Grid Control (Cloud Control if you are up to date). The problem is that from the Enterprise Manager perspective, each of the layers (host, OS, storage, Oracle components, configuration) would need its own report. So a number of reports would need to be executed.

So my thought turned to the Remote Diagnostic Assistant. The RDA is a tool that is used by Oracle Support to gather information of the system setup, OS settings, and the like.

So I downloaded RDA for one of the machines, unpacked it, configured it and executed it.
Within minutes you'll have the output of a large number of Perl scripts.

The good thing is that the presentation is provided in a human readable format (HTML) so that a support analyst or the DBA can have a glance at the data.
But even more interesting is the fact that each HTML page is also available as a text file, with a nice structure.

So with the intention of building a prototype, I used some AWK scripts to get the data out of the text files, and used it as input for the data pump.
Create some tables in a new tablespace, get the data into it and you have a description of your technical components for your governance.

Next step would be to add the date of the execution, and you could easily figure out if changes had happened in the last period and add them to your governance.

So again a nice use of things you already have in your environment which can be put to good use for slightly different purposes as they were intended in the first place.

Wednesday, December 21, 2011

Learn it from the horses mouth

Early February you should convince your boss (and yourself) to come to Malaga in Spain from 07-FEB-2012 to 08-FEB-2012 or even until 10-FEB-2012 to attend the first combined Fusion Middleware Partner Community Forum for the SOA Suite, WebCenter, BPM and WebLogic Partner Communities.

Let me give you a number of reasons why you should be there:
  • A number of senior Oracle PM's will be there to share the newest developments in these different themes
  • Meet the creme-de-la-creme of the Oracle Communities
  • See me presenting
  • See presentations of others who are even more exiting then I am ;-)
  • Give your network to the Oracle communities a boost
  • Enjoy the city and social event
  • Participate in excellent trainings
More info and how to register can be found here:

Let me know if you are coming so we can plan ahead for some time to grab a beer - cu in Malaga

Sunday, November 20, 2011

Celebration party for an award

When you win you need to celebrate. This was the line of thinking when I found out that I was part of a group that won the Oracle SOA Community Country Award.

Well - thinking about a party is one thing, preparing it and finally having the small party is something completely different. It starts with finding a date that would be suitable for the majority of invited people. As you can imagine the SOA ACE's and ACE Directors have a busy life, that takes them places. Alongside that they are engaged with customers who want to squeeze every bit of knowledge out of them. So everybody is pretty busy (that's what makes you an ACE).

After some deliberation (and checks of international Oracle events, Trip-it, blogs and tweets) a date was chosen.

Meeting on a Friday evening for some drinks is probably not a Dutch-only activity. But as some of the ACE's are self-employed they miss the companies around them to organize such events. Come the day a turn-out of almost 50% was great - although I expected some more folks :-( . This was mainly due to some illness and work overload.

Luckily the mini-party got going, (alcoholic) beverages were consumed, food was appreciated, a decent picture was made (see below) and all had a good chat and hopefully a good time.

(Above from left to right: Eric Elzinga, Andreas Chatziantoniou, Mike van Aalst, Edwin Biemond)

The only minor disappointment of the day was that the organizer of the SOA Community was not capable of joining. Neither directly nor via a Skype video feed. Apparently there were some adverse weather conditions near his home office that required his attention - and the use of a kite ;-)
J├╝rgen - with you we would have had even more fun. 

All in all a nice evening and certainly a "meeting" which can be repeated.