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
>lookup.
>

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

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