Subject | Re: [IB-Architect] How to extend core engine |
---|---|
Author | Jim Starkey |
Post date | 2001-05-14T21:19:46Z |
At 10:40 PM 5/14/01 +0200, Pavel Cisar wrote:
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
>Stuff that I've put in Netfrastructure that would be nice Firebird
>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.
>
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