IMPORTANT: Some people have commented/emailed that I’m off my rocker by asserting using a GPL database triggers the viral nature of GPL. I should make the VERY CLEAR distinction that the reason it triggers the GPL (I believe) is because the CLIENT ACCESS LIBRARIES are GPL licensed (the client code is embedded into the CLIENT applications). I don’t think it really matters what the server in a different process is licensed as, it’s the JDBC drivers that cause GPL to kick in. Refer to the MySQL interpretation of this (LGPL to GPL)
UPDATE: I’ve been told that the announcements on GPL may have been incomplete. There is possibilty that interface code may be LGPL to allow for use in the ISV/OEM apps without GPL restrictions. I’ll update this if/when there is an actual announcement on LGPL stuff.
I was quite optimistic when Ingres was divested from CA. Here was an opportunity for Ingres, a mature feature rich database, to make a real dent in the world. Instead, Ingres (the codebase) has made the same mistake AGAIN by choosing a license which will ensure it never becomes a “real” open source community, project or sustainable business model.
CA made the mistake of picking a funny license when they open sourced Ingres: CA-TOSL was an off color license that many people passed up even considering Ingres. CA squandered an opportunity to create a real open source project, which is just disheartening. There is SO MUCH in Ingres that with “two cups and two tablespoons of community” Ingres could have been the leading open source database. Instead, they came up with a “pro-CA” but relatively business friendly license that meant Ingres, it’s source repository, etc remained decidely in the fortress of CA.
Ingres was divested to a lean, mean Ingres company with the sole purpose to making Ingres the leading “business open source.” This was truly exciting, and the potential of what Ingres could become was palpable. Parallel query execution, intelligent join operations, replication, distribution, table partitioning. A robust feature rich RDBMS primed for the ISV/OEM and early adopters needing an open source RDBMS worthy of their applications. Forget the GUIs, marketing materials, and blackbox functionality: Ingres was primed to be the tool of choice for companies willing to overcome some of the rough edges to power their platforms. It could have been the “Kleenex” of FOSS DB. The “Hobart” of FOSS DB. The “Phillips Screwdriver” of FOSS DB.
Terry, I’m sorry to say, you must have received some bad advice. Actually, let me clear here: REALLY BAD ADVICE! The GPL is the nail in the coffin that will make the long drawn out history of Ingres final. It will fade to obscurity because NO ONE will touch it with GPL. Let me explain and I hope for your investors and customers that I am wrong!
The days of being an RDBMS for general purpose are done!
You are going to be used as a component in an application or service. If people are purchasing their DB first and they plan to build extensively on a database they are choosing commercial vendors. Quite simply put, if someone wants to build their application and the database is the most important piece of that puzzle (think PL/SQL, triggers, etc) then it’s not an open source database. ISV and OEMs are the ONLY ONES that are going to build sustainable economic conditions for an open source database. Your company identifies this in the “Three Degrees of Seperation” whitepaper posted on your site.
GPL means that companies building applications for BUSINESS won’t use you!
Why do you think that most BUSINESS ORIENTED applications considering an open source database have chosen Postgres? The GPL is quite frankly, really really scary to companies and so NO ONE who is building any sort of “Pro” edition, building applications with significant amounts of their own capital, or using other business friendly open source license (which is one of the valid open source business models) will use it. Quite simply put, the GPL ensures that Ingres will not be used by companies building business applications.
Partners/ISVs/OEMs willing to purchase your license will choose SOMEONE ELSE!
Knowing that your GPL option is entirely unsuitable for embedding into an application why would anyone choose to PAY the licensing for Ingres when embedded proprietary licenses are cheap? ie, Knowing that customers aren’t going to get the benefit of an open source database it may as well be a black box that an application runs on and that’s it. Why choose to pay for a product that is technically behind Oracle when the “embedded” commercial version terms are comparable? If it costs the same amount, both are proprietary licenses, why would someone selling a business application forego the “powered by Oracle” to choose a proprietary Ingres license?
Zero chance at “community”
Ingres (the project, not the company) had failed to build any sort of community in more than a year. By ensuring that the entire Ingres codebase remains copyright Ingres Corporation you pretty much ensure that any features people may build into Ingres won’t see the light of day. This is the secret sauce of open source. Inventors inventing, leveraging the ideas and efforts of people all over the world. Well then, what about the GPL projects of the world that will use Ingres and contribute their time testing, qa’ing, bug fixing, etc? See next bullet.
The GPL “database of choice” is already decided
Every GPL project uses MySQL (not every, but close). Community, applications, knowledge, support, training, brand awareness. Done, finished. GPL projects needing a DB don’t really think about it. It is the de facto standard for GPL projects. Why would anyone writing Joe’s Open Source Scheduling and Management Toolkit choose Ingres that has NO community outside of Ingres corp and will NOT develop one (see previous bullet). Anyone needing your “enterprise features” above and beyond what MySQL provides will fit the category mentioned above (ISV/OEM) and find your license unsuitable.
Quite simply put, the CA-TOSL was bad for Ingres but the GPL is just horrendous (not necessarily because GPL is, just GPL for Ingres). Anyone who needs your features won’t use your commerical license (think integrated health care application X) when they can use other proprietary RDBMS and open source projects that COULD use Ingres won’t because they don’t need the features and MySQL is 10x better from a community/FOSS perspective.
I’m sad actually, I was quite excited about Ingres. RIP, Ingres. I hope the death comes swiftly and customers find little pain in their migration to other sustainable RDBMS projects/products.