I have a quick question. If the puropse of converting Compiere to PostgreSQL is because it is a free database, why don't you use SAP DB? It's fully LGPL'ed, so it's free. Plus it supports subtransactions, which seems to be a major stumbling block in the conversions. Also, it's JDBC driver looks to be completely compliant. It also supports some other things that are pretty nice which I haven't seen in PostgreSQL yet, like online backups and an Oracle 7 compatibility mode.
Here's a list of links:
http://www.sapdb.org/ (the home page)
http://www.sapdb.org/sap_db_FAQ.htm (their FAQ)
http://www.sapdb.org/sap_db_features.htm (a list of features)
http://www.sapdb.org/htmhelp/ac/be98c8a56511d2a97100a0c9449261/frameset.htm (the subtransaction page)
http://www.sapdb.org/sap_db_links.htm (their links page, with some helpful links to installing the system)
That's just my $.02.
SAP may have put "SAP DB" unter LGPL, but the style of their business behaviour is more like MS - so I would not trust SAP DB to remain its status.
Anyhow, more facts about feature/technology differences between SAP-DB and PgSQL would be appreciated.
BTW, how large is the source code for SAP-DB...?
The knock out for Compiere is that they do not support PL/SQL but teir own implementation of a procedural SQL in C style.
That's true, but correct me if I'm wrong, my skills aren't very good, rudimentary at best (I'm better at setting up software than writing it), but shouldn't any procedures that operate on the database be contained in the middle tier, and not on the database itself? Also, if all the systems support a virtually complete implementation of SQL 92, then shouldn't the same commands work virtually the same across all systems (that's assuming that all of the procedures are in the middle tier)?
About the LGPL, even if they did decide to close up their next version of the database, they can't change the license that version 7.3 (the current version) is under, so at least that version of the database should be free forever (at least until every copy of the LGPL'ed source dissappears). I don't want to get into any arguements about SAP's business practices, I won't defend them. Quite frankly I don't care about how they carry themselves, what I do care about is that they have released their database under an open-source license, and that the database works and works well.
About the source code, all together with the server code (13mb compressed) and build environments (12mb compressed) and GUIs (6mb compressed), that makes for about 31mb of code compressed. Granted that it's quite a bit, and the code itself is pretty messy, but this database can handle some pretty heavy loads. It was created to run their enterprise - level SAP products, and can be used as a direct replacement for Oracle, at a much larger scale than PgSQL.
Don't get me wrong, I love PgSQL, I'd use it over MySQL almost any time. But for the time being, it seems as if PgSQLdoesn't support some things that are necessary for Compiere (such as nested transactions, pretty much full JDBC 2.0 support, etc.)
Some of the technology differences that I have really noticed between SAP DB and PgSQL are things like hot backup. If you want to actually backup the files and not just create an SQL dump, you'd have to stop the database and copy the files over and then start the database server back up. From what I've seen with SAP DB, it includes some pretty handy utils that can preform hot backups and back up your data straight to a tape drive or to files on a different server/location. This is really important if you eventually wanted to tie Compiere into a web-front store. You wouldn't be able to take the database server down at just any time, or you might loose sales.
For some good discussions of PgSQL vs. SAP DB go to http://ask.slashdot.org/askslashdot/02/07/16/1820219.shtml?tid=99
Thanks for the information and link about SAP-DB -vs.-PG. I understand that SAP-DB (was it not derived from some formerly strong commercial DB that left the market?) has better features than Postgres.
Even so I believe it should be mentioned that a decision for one or another path has not only functional but also political aspects.
Postgres is being developed in a community with a completely different rule set than a commercial company. There are many aspects to this I will not follow here. Only a short statement:
There is no such thing as a "purely objective" or "functional" decision - everything amongst human beings is connected to culture.
SAP-DB is GPL'ed or so, and is more or less what
Adabas 10 (by Software AG from Darmstadt) is,
to the best of my knowledge. In other words, it is
very good from the technical viewpoint, but not
yet widely accepted by the community. Once I
ran Adabas, and that requires a lot more human
and machine resources to get going than eg
MySQL or PostgreSQL. This is not for the casual
"I just found a Linux CD in my computer rag"
user, but for real trained computer professionals,
with mainframe experience being a plus last time
A while back I talked to SAP staff on a trade fair,
and they said that SAPDB was "forked" from
Adabas: SAP bought full rights in the code from
Software AG, and now they have independent
rights to do with the code what they please,
but the code was essentially at the time of the
release. The claim was that, with DBs being a
commodity that yields little gain anyway, they
wanted to lower the investment barrier for potential
SAP customers where they want to sell their R/3
or mySAP.com stuff. And with Oracle's hefty
license charges that's a significant factor when
competing against other systems.
Different parts of SAPDB are licensed differently:
The GPL and the LGPL are both used.
Start here: http://www.sapdb.org/
Disclaimer: I didn't try to run SAPDB and stopped
using Adabase a long time ago.