Re: Informix
Posted in 2004
Topics: Connectivity: ESQL/C, 4GL & Embedded SQL
Jonathan Leffler <jleffler@earthlink.net> wrote in message news:<hq2hc.1439$eZ5.681@newsread1.news.pas.earthlink.net>... > chavankoya189@hotmail.com (Chavan Koya) wrote: > >>> About Informix --> http://en.wikipedia.org/wiki/Informix > > The Wiki page claims that Informix used Ingres as a code base. I'm > pretty darned sure I've never seen any Ingres code in any of the > Informix products. Would anyone be aware of such code in Informix? I'd never heard that either. Ingres's defining feature was its cost-based optimiser, which Informix wasn't fearless enough to implement until 4.0. And of course they pinched Stonebraker some years later who became a driving force in Smart Blobs. But early code plagiarisation I never heard of. > I also thought that the first product from RDS was likely to be > C-ISAM, and that Marathon (which was, I thought, a code name for the > product that was later named Informix) was built on top of C-ISAM. That was my understanding too. > I see that the Informix Handbook site has a release date of 1984 for > I4GL too - that, I'm 99% sure, is two years early. Yes, I think so. I think wiki is wrong. (Can you see why I'm nervous about editing this thing directly yet?) > Turbo was also released about then. Turbo was about 1987/ 8. I remember the first book you mentioned it in :). It started its life as a Shared Memory Version initially on HP. The early value for SHMBASE decoded to the initials of the guy who wrote it (Ray Harrington??) Andy
Couple thoughts on this subject. Andy is partially correct - Turbo was released in 1987, just before I joined Informix. I know because at my previous position, the Informix sales folks were pitching their new database engine, Turbo. 4GL was already out at that time as well, though I believe it was still the 1.00 release. I seem to recall 1985 as the beginning of 4gl. Pcode came a few years later, maybe 1989 or so? For what it is worth, a fellow by the name of Chris Moloney was the chief architect of 4GL. He's also in the ballpark on the "earlier version", and spot on with regards to Roy, who was the chief architect of Turbo. As a test to see how using shared memory would impact performance, Roy cobbled together a version of SE (which at the time was just "the engine" - the moniker "SE" came later) that used shared memory, a buffer pool, etc. It was never meant to be a real product. However, these were the days of the benchmark wars, and some customer was doing something where great benchmark results were critical (it could have well been HP - I don't recall that particular detail), so the sales force convinced R&D to cut them a copy of this "experimental" version of SE. The performance improvement over the "standard" SE was significant (and in point of fact, the *performance* improvement that Turbo added to this was pretty marginal) and when AT&T, who were a major Informix user at the time, got wind of it, they pretty much insisted that they get a version to use in production. The dirty little secret was that it never went through QA, and had more than a fair share of problems - remember, it was never meant to be a released product. I can recall major battles over EOL'ing it - support and R&D were adamant about it, while AT&T were insistent that it be supported. What a fiasco. Oh yes, and the base shared memory key was the hex value 0x525648 (with the SERVERNUM value tacked on the end) which are the ascii codes for RVH, Roy V. Harrington, father of Informix-Turbo ;-) Hey, if you need to come up with a key, why NOT use your initials? Haven't played with the newer versions - is that still the base key? As far as ingres code goes, I was surprised when I read that too, but then I got to thinking. The INFORMER query language that was part of Informix 3.3 (and Informix was the product name back then - the company was RDS - Relational Database Systems.) and it was definitely QUEL-based, QUEL being the language used by Ingres back then. Informix SQL, or ISQL, made the switch to SQL along with moving to a client/server model (in Informix 3.3, the application accessed the data files directly.) So it could very well be that the INFORMER piece was built using open source ingres code. It would have been the easy way to go. I also would not say that Informix "pinched" Dr. Stonebraker. He came along with the acquisition of Illustra. That also ultimately cost us the chief architect of the multithreaded version of the engine, Gary (who's last name I can't for the life of me remember now). While I have great respect for Dr. Stonebraker's achievements, his contribution to the Informix engine were utimately of little economic value (how many customers even today are *really* leveraging datablades?) in comparison with the performance and robustness that the rewrite between version 5 and 6 brought to the table. And in fact, server extensions along the line of datablades were already in the planning stage before Informix acquired Illustra. But because the had the object/extensibility stuff in place already, I guess they felt it would be quicker to integrate that. Nobody seemed to notice that the Illustra base engine was a nightmare. It looked like it was cobbled together by grad students. But the Illustra engineers did make important improvements to the Informix engine, like changing SYSINDEXES to SYSINDICES ;-) Ramble on..... Dave On 20 Apr 2004 05:18:14 -0700, andykent.bristol1095@virgin.net (Andy Kent) wrote: >Jonathan Leffler <jleffler@earthlink.net> wrote in message news:<hq2hc.1439$eZ5.681@newsread1.news.pas.earthlink.net>... >> chavankoya189@hotmail.com (Chavan Koya) wrote: >> >>> About Informix --> http://en.wikipedia.org/wiki/Informix >> >> The Wiki page claims that Informix used Ingres as a code base. I'm >> pretty darned sure I've never seen any Ingres code in any of the >> Informix products. Would anyone be aware of such code in Informix? > >I'd never heard that either. Ingres's defining feature was its >cost-based optimiser, which Informix wasn't fearless enough to >implement until 4.0. And of course they pinched Stonebraker some years >later who became a driving force in Smart Blobs. But early code >plagiarisation I never heard of. > >> I also thought that the first product from RDS was likely to be >> C-ISAM, and that Marathon (which was, I thought, a code name for the >> product that was later named Informix) was built on top of C-ISAM. > >That was my understanding too. > >> I see that the Informix Handbook site has a release date of 1984 for >> I4GL too - that, I'm 99% sure, is two years early. > >Yes, I think so. I think wiki is wrong. >(Can you see why I'm nervous about editing this thing directly yet?) > >> Turbo was also released about then. > >Turbo was about 1987/ 8. I remember the first book you mentioned it in >:). It started its life as a Shared Memory Version initially on HP. >The early value for SHMBASE decoded to the initials of the guy who >wrote it (Ray Harrington??) > > >Andy