Highlighted

Scheduled Tasks' cluster database support

New Here ,
Aug 19, 2014

Copy link to clipboard

Copied

OK,

So apparently ColdFusion 11 has some new cluster functionality that uses a database. The supported databases include Oracle. However, as we have Oracle ExaData which uses service_name in connect strings rather than a SID we can't use the "normal" Oracle driver but rather have to use "other" and define the connection using the standard Oracle jdbc driver and connection string. This then means we can't use the Oracle database for the cluster schedule stuff. This is presumably wrong, as any SQL used to create tables or "use" them must be Oracle compatible.

So, does anyone know either:

  1. How to connect to ExaData (or RAC using service_name as apparently that's basically the same) with the "standard" Adobe Oracle driver
  2. How to persuade / tell ColdFusion that the "other" driver is in fact an oracle back end so I can use it

I'd obviously rather not install a single point of failure in the form of either a simple MySQL database or a basic Oracle database just to make scheduling's cluster functionality available. What's the point of clustering CF if one "other" machine going down stops it working as expected ?

I've tried a whole mixture of interesting variations with the Adobe Oracle driver without any luck. My DBA's tell me the SID is actually different on the "fail-over" ExaData (that's probably a bad explanation as I'm not a DBA) so using a "place holder" SID isn't viable if we want fail-over, not that trying any form of SID worked either.

I've also tried setting up a connector with the "other" class (details shown below) and then changing the driver name to Oracle. This sort of works in that I can choose that data source in the scheduled tasks area, but if won't then create the tables (complaining about only supporting Oracle). It is also a bad fudge as at this point the data source edit screen "reverts" to the standard Adobe driver edit screen meaning you can't change settings. I tried it just to see if it worked (I like pushing things till they break if they won't do what I want).

Thanks

Example JDBC URL is (names changed for privacy / paranoia):

jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on) (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=exadata-scan)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=ExaData_LIVE)))

Driver Class: oracle.jdbc.OracleDriver

OK, So I've tried using the "single node" connection with the CF built in Oracle driver and get the lovely message about "The connect attempt failed because the server requires Oracle Advanced Security" Which is all well and good except that there's nothing I can find about how to fix THAT - no we will not being disabling database connection security in the DB. So I can't even try using a non HA connection.

Does anyone from Adobe know how I can make ColdFusion accept the standard Oracle jdbc driver as a way to store clustered scheduler stuff. The standard quartz stuff that appears to underly your implementation doesn't seem to judge and the "create tables" stuff you ship from the quartz stuff work just fine so I'm 90% sure "accepting" the standard oracle jdbc driver would work fine too. On that front, is there a reason you appear to support less databases than the underlying quartz stuff seem to ?

Message was edited by: Dale Roberts Add info on using built in Oracle driver

Views

274

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

Scheduled Tasks' cluster database support

New Here ,
Aug 19, 2014

Copy link to clipboard

Copied

OK,

So apparently ColdFusion 11 has some new cluster functionality that uses a database. The supported databases include Oracle. However, as we have Oracle ExaData which uses service_name in connect strings rather than a SID we can't use the "normal" Oracle driver but rather have to use "other" and define the connection using the standard Oracle jdbc driver and connection string. This then means we can't use the Oracle database for the cluster schedule stuff. This is presumably wrong, as any SQL used to create tables or "use" them must be Oracle compatible.

So, does anyone know either:

  1. How to connect to ExaData (or RAC using service_name as apparently that's basically the same) with the "standard" Adobe Oracle driver
  2. How to persuade / tell ColdFusion that the "other" driver is in fact an oracle back end so I can use it

I'd obviously rather not install a single point of failure in the form of either a simple MySQL database or a basic Oracle database just to make scheduling's cluster functionality available. What's the point of clustering CF if one "other" machine going down stops it working as expected ?

I've tried a whole mixture of interesting variations with the Adobe Oracle driver without any luck. My DBA's tell me the SID is actually different on the "fail-over" ExaData (that's probably a bad explanation as I'm not a DBA) so using a "place holder" SID isn't viable if we want fail-over, not that trying any form of SID worked either.

I've also tried setting up a connector with the "other" class (details shown below) and then changing the driver name to Oracle. This sort of works in that I can choose that data source in the scheduled tasks area, but if won't then create the tables (complaining about only supporting Oracle). It is also a bad fudge as at this point the data source edit screen "reverts" to the standard Adobe driver edit screen meaning you can't change settings. I tried it just to see if it worked (I like pushing things till they break if they won't do what I want).

Thanks

Example JDBC URL is (names changed for privacy / paranoia):

jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on) (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=exadata-scan)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=ExaData_LIVE)))

Driver Class: oracle.jdbc.OracleDriver

OK, So I've tried using the "single node" connection with the CF built in Oracle driver and get the lovely message about "The connect attempt failed because the server requires Oracle Advanced Security" Which is all well and good except that there's nothing I can find about how to fix THAT - no we will not being disabling database connection security in the DB. So I can't even try using a non HA connection.

Does anyone from Adobe know how I can make ColdFusion accept the standard Oracle jdbc driver as a way to store clustered scheduler stuff. The standard quartz stuff that appears to underly your implementation doesn't seem to judge and the "create tables" stuff you ship from the quartz stuff work just fine so I'm 90% sure "accepting" the standard oracle jdbc driver would work fine too. On that front, is there a reason you appear to support less databases than the underlying quartz stuff seem to ?

Message was edited by: Dale Roberts Add info on using built in Oracle driver

Views

275

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Aug 19, 2014 0

Have something to add?

Join the conversation