Subject Re: [IB-Architect] How to extend core engine
Author Jim Starkey
At 10:40 PM 5/14/01 +0200, Pavel Cisar wrote:
>I'd like know what parts of FB engine would be potentially
>interesting from this point of view, and how to adapt them to "plug-
>in" awareness in best way. Well, I'm really brain-dead about this. I
>can barely read C code and I didn't study the FB code in deep, so
>forgive me if the answer could be easily get from simple FB code

Stuff that I've put in Netfrastructure that would be nice Firebird

1. Full text search and index
2. Java triggers
3. Multi-role based security
4. Non-enforced referential integrity
5. Server to server communication
6. Cached compiled requests (huge performance win)
7. Multi-level, manipulable name space
8. Native JDBC semantics

Things that currently suck in the code base are:

1. Threading model
2. Exception handling
3. Dual architecture (classic at war w/ superserver)
4. Authentication and security
5. BLR (it lost; get over it)
6. Closed architecture

The gating factor to progress is re-establishing maintainability
of the code base. This requires two things. First, a switch
from C to C++ (fixing the threading requires first fixing
exception handling, which requires C++). Second, a decision
to drop either classic or super-server. Borland has adequately
demonstrated that complex interactions of the heavily conditionalized
code renders the code base unmaintainable.

Jim Starkey