can someone point me to docs on how to upgrade Ora...
# lucee
h
can someone point me to docs on how to upgrade Oracle 12c (Release 1) datasource connection to release 2?
b
@hemi345 If you're asking about the JDBC drivers, the available ones are here https://download.lucee.org/#D4EDFDBD-A9A3-E9AF-597322D767E0C949
If there's a newer JDBC driver which you need, please put in a ticket, and in the mean time, you can drop the jar in yourself and create an "other" datasource manually.
h
I've updated to the latest using the Lucess admin and still see Oracle 12c (Release 1)
b
Yeah, I don't know what any of that means. Like I said, your options are what's on the download site. If that isn't what you need, then install it manually
FWIW, Lucee always versions its JDBC drivers with version numbers matching those of the upstream JBDC library
So, if you look up the actual version of the Oracle driver that you need, that will help you
h
where would i drop the updated jar?
b
In the classpath
Which is where jars normally go šŸ™‚
If you're unsure of what folder on your hard drive that is, you'd need to start sharing information with us about how you've installed Lucee
h
and where would that be in linux
b
Because we don't know either, lol
Linux does not manage Lucee's classpath
h
I have lucee installed in centos. by default, where would the classpath be located?
b
There are many ways to install Lucee. Until you tell us more, there's little value in guessing
h
lucee was installed the default way, as the Lucee website explains it. It wasn't installed with commandbox.,
b
Ok, that helps
The Lucee Bitrock installers I think put Lucee in
/opt/lucee
I don't have an installation in front of me to confirm, but you're looking for something like
/opt/lucee/tomcat/lib
or similiar
There are several places it can go-- that will be in Tomcat's top class loader, available to all servlet deployments
h
okay, i see that now
opt/lucee/tomcat/lib
b
Seems like a good place to start. Drop the jar there and restart the Tomcat services
Then see if you can manually create the datasource
And please put in a ticket to add this driver version (if one doesn't exist already)
h
I think i'll try manually creating the datasource first pointing to the existing driver bundle but specifying the newer format for the connection string. Let me give that a shot and see.
b
It will probably be something along the lines of • class =
oracle.jdbc.driver.OracleDriver
• url =
jdbc:oracle:thin:@{host}:{port}:{database}
h
12.2 requires jdbcoraclethin:@{host}:{port}/{database}
šŸ‘ 1
b
Out of curiosity, what JDBC driver did you download
It appears Lucee currently ships with
21.8.0.0
and there's only one newer version from Feb of this year,
21.9.0.0
available
h
i haven't yet. was comparing setups to Adobe CF. Saw that I was using the same driver family as Lucee, but with ACF, I was specifying the connection string. Lucee, was using the built in Oracle datasource configurator.
b
Just curious since nowhere do I see any references to "release 1" or "release 2" for the JDBC drivers so I'm not really even sure what that means, lol
h
Lucee forces the :{database}
the newer connection string format is /{database}
b
Right, you said that
Does Oracle introduce breaking changes in minor releases of their JDBC driver?
Like I said, Lucee seems only be one minor release behind, which came out in late 2022
That's odd if Oracle changed the format of their JDBC URL in a minor update to the library šŸ¤”
h
no idea on oracle drivers.
our database folks did the upgrade and told us we'd need to use 12.2 or newer client and drivers. Since we used to use the :{database} connection string, I figured Lucee needed a newer driver to format the connection string correctly. After updating to Lucee from 12.1.0.2 to 21.8.0.0, Lucee still reports the datasource connection type is Oracle 12c (Release 1). No idea if that's correct or not but that led me down the path that I needed to update the driver to something to see the newer connection string format.
b
Hmm, so it seems maybe any of the driver versions work, but the JDBC URL just has to be formatted differently and Lucee is hard-code for the old style?
Seems plausible. You're one of like, maybe 3 people, I've ever run into using Lucee with Oracle šŸ™‚
h
Maybe the connection string format is hardcoded into Lucee and not driver dependent. I don't know. But using "Other - JDBC Driver (deprecated)" was the ticket to getting this working again. I pointed the class to oracle.jdbc.OracleDriver with our connection string and it's working fine again.
b
It's not a common combo
Yeah, it's basically hard code from what I know
h
yeah, i bet.
b
I can confirm the old standard is defo hard-code into CFConfig
I'm honestly not even sure how I'd support that outside of creating a second Oracle "type" or something for the user to select
h
as long as the Other option doesn't get dropped from future builds, then manually setting up the datasource works fine. It's what we've had to do with Adobe CF for years.
b
There's not even a way I know of that a client could "test" the version of the server prior to connecting without the user/developer just knowing
h
bbl, gotta play Uber for my kids.
b
Good luck, and enter a ticket šŸ‘