Author |
Message
|
upcominggeek |
Posted: Tue Jun 21, 2011 6:17 am Post subject: Support for Oracle RAC in JCN in WMB v7 |
|
|
 Apprentice
Joined: 21 Aug 2006 Posts: 35 Location: Boston, US
|
Hello,
I could not see any documented support for Oracle Real Application Clusters (RAC) to be configured using JDBCProviders Configurable Service in WMB v7. There is support for it in ODBC (http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/index.jsp?topic=/com.ibm.etools.mft.doc/ah14440_.htm), but I am unaware how I can extend the ODBC config to Java Compute Node. Any tips?
Unfortunately for us, we figured out this issue only when we are near to a Prod deploy
Thanks,
UpcomingGeek |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 21, 2011 6:25 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
The support for Oracle RAC for JDBC in Broker is exactly equal to the support provided by the Oracle JDBC drivers.
You are overthinking this. Configure the JDBC configurable service the same as you would any JDBC connection to talk to Oracle RAC.
BUT DO NOT CHANGE THE connectionURLFormat. That is a *PATTERN*, not a *fully qualified string*. |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Jun 21, 2011 6:42 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
mqjeff wrote: |
BUT DO NOT CHANGE THE connectionURLFormat. That is a *PATTERN*, not a *fully qualified string*. |
Here endeth the Rev mqjeff's most popular sermon on JDBC connectivity. This is oft repeated (and otf ignored) advice. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Jun 21, 2011 6:45 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
smdavies99 wrote: |
mqjeff wrote: |
BUT DO NOT CHANGE THE connectionURLFormat. That is a *PATTERN*, not a *fully qualified string*. |
Here endeth the Rev mqjeff's most popular sermon on JDBC connectivity. This is oft repeated (and otf ignored) advice. |
It's one of those things that makes me really understand the value of naming conventions.
I don't know quite how it would read in the UK, but if it was called 'connectionURLPattern' rather than 'connectionURLFormat', then at least in the US it would go a long way towards preventing the instincts of any users who sees '[hostname]' to actually replace it with the real value of the hostname, instead of specifying the hostname property on the service. |
|
Back to top |
|
 |
upcominggeek |
Posted: Tue Jun 21, 2011 8:12 am Post subject: |
|
|
 Apprentice
Joined: 21 Aug 2006 Posts: 35 Location: Boston, US
|
Hey Jeff,
Well, I didn't change the connectionURLFormat (kept it is a format / pattern). But the challenge is in providing the value for connectionUrlFormatAttr1. This is supposed to contain the Service Identifier value. But in our RAC, each RAC node has a different Service identifier. But the RAC has a single Service Name. Giving the Service Name for connectionUrlFormatAttr1 doesn't help. Changing it to a SID makes the configuration work, but now it is pointing to a specific node.
In ODBC, IBM documentation provides the below stanza for connecting to RAC
;# Oracle Real Application Clusters stanza
[ORACLERACDB]
Driver=<Your Broker install directory>/ODBC/V6.0/lib/UKora24.so
Description=DataDirect 6.0 Oracle Wire Protocol
HostName=<Your Oracle Server Machine Name>
PortNumber=<Port on which Oracle is listening on HostName>
ServiceName=<Your Oracle Real Application Cluster Service Name>
AlternateServers=(HostName=<Your alternative host name>:PortNumber=<Port on
which Oracle is listening on the alternative host>:ServiceName=<Your
Oracle Real Application Cluster Service Name>)
CatalogOptions=0
EnableStaticCursorsForLongData=0
ApplicationUsingThreads=1
EnableDescribeParam=1
OptimizePrepare=1
WorkArounds=536870912
ProcedureRetResults=1
ColumnSizeAsCharacter=1
LoginTimeout=0
But I could not see anything similar for the configurable service.
http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/index.jsp?topic=/com.ibm.etools.mft.samples.simplifieddbrouting.doc/doc/create_oracle_jdbcprovider.htm
Here is an example for JDBC URL for connecting to a RAC.
http://www.jugpadova.it/articles/2007/04/11/jdbc-url-for-oracle-rac
But I am at a loss as to how to apply this URL in WMB.
Thanks,
UpcomingGeek |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Jun 21, 2011 10:48 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Looking at your example http://www.jugpadova.it/articles/2007/04/11/jdbc-url-for-oracle-rac
did you check in the infocenter, and by default by a PMR if you could use host1, port1 , host2, port2 etc... as variables and define their values in the service setup? This is one occasion where I might try and change the pattern some, but to still keep it as a pattern...
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
upcominggeek |
Posted: Tue Jun 21, 2011 12:03 pm Post subject: |
|
|
 Apprentice
Joined: 21 Aug 2006 Posts: 35 Location: Boston, US
|
You guys are awesome.
I have always stayed away from connectionURLFormat because of the comments about it. Didn't even think that broker was always reading it to understand the other property values. Changing it to the below one helped me to access the Oracle RAC DB without any issues.
mqsichangeproperties MB7BROKER -c JDBCProviders -o MyOracleRACDB -n connectionUrlFormat -v "jdbc:oracle:thin:[user]/[password]@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=[connectionUrlFormatAttr2]) (PORT=[portNumber]))(ADDRESS=(PROTOCOL=TCP)(HOST=[connectionUrlFormatAttr3]) (PORT=[portNumber]))(CONNECT_DATA=(SERVICE_NAME=[connectionUrlFormatAttr1])))" |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Jun 21, 2011 12:52 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
 _________________ MQ & Broker admin |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Jun 21, 2011 10:27 pm Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
mqjeff wrote: |
I don't know quite how it would read in the UK, but if it was called 'connectionURLPattern' rather than 'connectionURLFormat', then at least in the US it would go a long way towards preventing the instincts of any users who sees '[hostname]' to actually replace it with the real value of the hostname, instead of specifying the hostname property on the service. |
Back in the dark distant past of ancient computer history (i.e. Pre Microsoft, pre Unix) there was a language called Fortran. It used the
FORMAT verb to tell the output statement how the data was to be presented.
FORMAT(F8.2, I6)
Perhaps the guy who came up with the name was one of us grey haired oldies. (or a CICS guy who came over from the dark site) te-he. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Jun 22, 2011 1:10 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
I've written Fortran.
I'm not saying that 'Format' is entirely inscrutable in the U.S. I'm just saying 'Pattern' is the better choice.
And allowing for the UKist tendancy to decide that words mean the wrong things... Chips are clearly crisps, not fries. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jun 22, 2011 4:48 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
mqjeff wrote: |
I've written Fortran. |
So have I. Almost as well as I write Java.
mqjeff wrote: |
And allowing for the UKist tendancy to decide that words mean the wrong things... Chips are clearly crisps, not fries. |
Rule Britannia wretched colonial. It's not our fault you didn't understand the meanings we came up with first (the language is officially known as English, not American. That gives us dibs).
It's also not our fault you think everyone is to be bland and sneaky. Because Americans don't think "you" should be in colour or honour.
(Channelling my old English master there). _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
lancelotlinc |
Posted: Wed Jun 22, 2011 4:49 am Post subject: |
|
|
 Jedi Knight
Joined: 22 Mar 2010 Posts: 4941 Location: Bloomington, IL USA
|
mqjeff wrote: |
Chips are clearly crisps, not fries. |
When I queued up for the lift, I'm blazing my fagg and the bobby tells me my flat is on fire, so I shouldn't use the lift. What to do? _________________ http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER |
|
Back to top |
|
 |
Vitor |
Posted: Wed Jun 22, 2011 4:59 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
lancelotlinc wrote: |
What to do? |
Be glad the bobby didn't arrest you. In most of the UK it's illegal to smoke a fag (not fagg) in public.
You might also want to worry what the insurance people will say when they find one of your butts in the seat of the fire. At which point your butt will be in a sling. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
rekarm01 |
Posted: Wed Jun 22, 2011 7:10 pm Post subject: Re: Support for Oracle RAC in JCN in WMB v7 |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 1415
|
mqjeff wrote: |
I've written Fortran. |
No need to go back as far as Fortran, or whatever platforms it may have originally run on. 'Format' has the same meaning in many languages, such as COBOL, C (printf/scanf), Lisp, Perl, PHP, Python, Java, and even ESQL.
mqjeff wrote: |
I'm not saying that 'Format' is entirely inscrutable in the U.S. I'm just saying 'Pattern' is the better choice. |
This is probably not a US/UK issue. For computer programming languages, 'Format' and 'Pattern' have well-established, but different meanings. The terms are similar, but not interchangeable:- 'Format' describes how to interpret/represent/substitute character or non-character data in text strings. (See, for example, the ESQL CAST function FORMAT parameter, or the Java class java.text.Format.)
- 'Pattern' describes a matching (sub)string of text, typically using wildcards or regular expressions. (See, for example, the ESQL LIKE operator, or the Java class java.util.regex.Pattern.)
Formats may use patterns, but they don't have to. Despite the unfortunate wording in the documentation, the connectionURLFormat doesn't technically use patterns.
mqjeff wrote: |
And allowing for the UK-ist tendancy to decide that words mean the wrong things ... |
Is that the archaic 'tendancy'? Or is that supposed to be 'tendency'?
Vitor wrote: |
Because Americans don't think "you" should be in colour or honour. |
One example of a pattern is: 'humou?r' -- it matches both the correct and the incorrect spelling of the word ...
On an unrelated note, the WMB 7 Information C-e-n-t-e-r has 425 hits for "Information Center", but still has 8 hits for "Information Centre".
Vitor wrote: |
In most of the UK it's illegal to smoke a fag in public. |
In most of the US it's illegal too; it also has a somewhat different meaning.  |
|
Back to top |
|
 |
smdavies99 |
Posted: Wed Jun 22, 2011 9:29 pm Post subject: Re: Support for Oracle RAC in JCN in WMB v7 |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
rekarm01 wrote: |
On an unrelated note, the WMB 7 Information C-e-n-t-e-r has 425 hits for "Information Center", but still has 8 hits for "Information Centre".
|
So?
Back in the not so distant past I wrote a whole load of technical docs for a long defunct Computer Manufacturer (three letters not IBM but US based). Naturally I spelt them according to British English.
When we submitted them to the publishing dept for eventual printing they were quickly thrown back in our face.
'Can you guys even spell?' was the polite form of some of their comments.
They didn't take it very well when I pointed out that their US Standard dictionary contained BOTH spellings of Centre.
As the product concerned was not aimed at the US market we went and published it here in Europe. None of the customers complained about the spelling EXCEPT those who employed expat Americans. Strange that.
btw there are similar difference between classical Spanish and S.American. Likewise for the various French dialects around the world. I can remember being in a meeting in Quebec with a couple of people from France and some locals. After half an hour of arguments in French everyone agreed that we had to speak English as the French speakers were having problems understanding each other. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
|