Forum OpenACS Q&A: OpenACS and Oracle

Collapse
Posted by Daryl Biberdorf on

I looked around OpenACS.org, but I couldn't find anything related to this question. Basically, is OpenACS intended to support only PostgreSQL, or will it, at a minimum, support both Oracle and PostgreSQL? I saw an oblique reference to becoming database-agnostic, with Oracle and PG being the first, but nothing more.

I ask because I have my own reasons for wanting to use an Oracle backend. With ArsDigita's ACS/Tcl having a very finite future, I wanted to know if OpenACS is planning on continuing to work with Oracle.

Thanks.

Collapse
Posted by Ben Adida on
Wow, we need to make this clearer then!

OpenACS 3.x does *not* support Oracle, but then why would it
given that it's pretty much a port of ACS 3.x.

OpenACS 4.x supports both Oracle and PostgreSQL from within
the same codebase, and provides ways to add support for other
RDBMSs with very little Tcl hacking (only a few boostrap scripts
necessary). The fact that ACS/Tcl Classic has a finite future is
one of the many reasons we chose to support Oracle in 4.x.
Another important point is that we are working hard to patch
some of the issues people reported about ACS Classic 4.x, so
in fact OpenACS 4.x is meant to be an improvement over ACS 4.x
Classic. I won't say yet that it *is* an improvement, only that we
want it to be: only time and real-world usage will tell. We have
every intention of continuing to support Oracle for the
foreseeable future.

Collapse
Posted by Don Baccus on
In fact, you can download a
<a href="/sdm/nightly-tarballs.tcl?package_id=9">
nightly tarball </a>of OpenACS 4.x and give it a whirl with Oracle 8.1.6 (or later) if you want.
<p>
I'm actively seeking people who are willing to help with testing, especially those who would be willing to test under Oracle.  If you're interested in a stable and reliable Oracle-based OpenACS 4.x and have the time, testing would be a great help.  We have some people already willing to help out, but the toolkit's large and the more the merrier!
Collapse
4: Why! (response to 1)
Posted by Klyde Beattie on
If you are using Oracle as a RDBMS, why would you use OpenACS? I don't mean to flame OpenACS, I'm just ignorant to the reasons of using OpenACS other than to save money. (well i guess there is the simplicity)
Collapse
Posted by Simon Buckle on
I'm just ignorant to the reasons of using OpenACS other than to save money. (well i guess there is the simplicity)
You have just partly answered your own question. Saving money and simplicity sound like two good reasons to me :)

Are you suggesting that just because a company can afford Oracle, they should pay for some licensed product instead? If you wanted to use something like Vignette or ATG for example the license fees for these products can easily run into hundreds of thousands of dollars.

And as for simplicity, that's a good thing. Why makes things harder than they need to be. If it's easier to use your development cycles tend to be a lot shorter which means that your software project make actually hit that deadline :)

Then there's the fact that OpenACS is open source as opposed to closed source. I am not going to go into the details surrounding this issue. It's a well trodden path. Start by having a look at www.opensource.org.

Collapse
Posted by Daryl Biberdorf on

The fact that ACS/Tcl (the original from Ars Digita) is effectively dead has bearing on this too. Just because aD has chosen to move ACS to Java doesn't mean I necessarily want to.

There's also the matter of breadth. I'm unaware of any proprietary solutions that provide the sheer range of functionality that ACS/OpenACS does.

Database-wise, Oracle still offers more functionality than PostgreSQL. (This is not a dig against PostgreSQL. In time, I expect that PG will become a serious competitor to Oracle. PG already is a serious competitor on the low end.) At list prices (who pays retail?), Oracle Standard Edition is $15,000 per CPU. That's not much money for a company that really needs Oracle's features. For a company that already has an Oracle infrastructure, it's really not much money, compared to incorporating an "alien" database into the administration/backup/recovery scheme.

Collapse
Posted by Ben Adida on
The main reason we kept Oracle support in OpenACS is because it became clear that ArsDigita's version of the ACS (Classic) Tcl was not long for this world. Instead of maintaining *two* projects (ACS/Oracle, and OpenACS/PostgreSQL) which never made any sense, we chose to maintain one (OpenACS/Oracle-or-PostgreSQL).

Other reasons why OpenACS is a good choice: there's a real community of developers working away at any little bug, building new features, and optimizing OpenACS far beyond what ACS Classic Tcl did. That's not so much because we're all that smart: we started with ACS Classic Tcl, and we improved from there.

Behold the power of open-source....

Collapse
Posted by Alan Pater on
I have been away and am now re-familiarizing myself with OpenACS. I've been looking through the 4.x threads and docs and keep coming across references to Oracle. And I keep thinking, what's up with that?

As far as I remember, the Prime Reason that OpenACS was started in the first place was because Oracle is not Open.

I assume the point has changed. I get the impression that the point is now to develop ACS (changing the A to something else, because ArsDigita is no longer involved). If the point is no longer to develop a CS system on an Open DBMS, then drop the Open as well. There is poll on the front page about a name change, can I change my vote? I initialy voted for no name change, in order to keep historical references, but I now think that it should be changed, to something without the word "Open".

Cheers

Collapse
Posted by Talli Somekh on
Alan, it works with BOTH Oracle AND PG. You must have seen that in the threads too?

talli

Collapse
Posted by Ben Adida on
Alan, you should re-read this thread you just responded to.

We have continued Oracle support because it seemed like the
obvious thing to do (why take out support that already exists?).
We also had some feeling that ACS Classic Tcl wasn't long for
this world, and wanted to give ACS/Oracle fans a means to
transition to OpenACS smoothly (this week's events confirmed
our suspiscions). Finally, we know that some people might
eventually want to make OpenACS work on other Open
RDBMSs, like Interbase, or SAPdb. By making sure our code can
be multi-DB compatible (by keeping Oracle), we are paving the
way for OpenACS to be a truly cross-platform system.

That said, our support for PG continues as strongly as ever. And
by including other players, I think we're actually *more* Open,
rather than less.

Collapse
Posted by Daryl Biberdorf on

Alan, what definition of "Open" says that an open source product can't work with closed source products?

Without arguing Oracle versus PostgreSQL, I point out that some people like and trust the Oracle product. (Myself included. Disclaimer: I'm an Oracle-certified DBA.) As it is, OpenACS is pushing toward being "database neutral". I've never really believed in the attainability of database neutrality, but OpenACS is doing as good a job as I've seen yet.

A product like OpenACS that is restricted to a single database simply because the alternatives aren't "open" doesn't sound very open to me. (And, boy, would I be upset if Vim didn't run under Windows.)