8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 00:03:02 +01:00
Commit Graph

143 Commits

Author SHA1 Message Date
alexpeshkoff
2dc25a44bb OSRI and new posix build 2010-10-12 08:02:57 +00:00
asfernandes
c1b5abfdf2 1) Refactor all types of boolean nodes.
2) Remove the scratch from the nodes.
2010-09-17 03:15:32 +00:00
asfernandes
b7b63becf3 Refactor a number of expression nodes: nod_add, nod_divide, nod_multiply, nod_negate, nod_user_name, nod_subtract, nod_current_date, nod_current_time, nod_current_timestamp, nod_add2, nod_subtract2, nod_multiply2, nod_divide2, nod_current_role, nod_internal_info 2010-09-04 21:36:41 +00:00
asfernandes
52a4c39f41 1) Separate DsqlCompilerScratch in its own files.
2) Move BlockNode functionality to it.
3) Move some related CTE functions to it.
2010-08-27 02:18:00 +00:00
asfernandes
48d83b8fef Refactor nod_rse, nod_relation, nod_procedure, nod_union, nod_aggregate and nod_window. 2010-08-24 03:25:01 +00:00
alexpeshkoff
d24cd9cbd7 Implemented self-registering plugins format (same plugin can be easily linked statically
or as dynamic library, depending upon platform requirements). Self-registering plugins
need not export any functions, instead they call fb_register_plugin() on startup.

Reworked all user management to use self-registering plugins.

Removed system table RDB$USERS. PLG$USERS is not created automatically by plugin, but
will be later (work in progress).
2010-07-23 12:04:18 +00:00
dimitr
58f8384cec Reworked the SEC$USERS implementation so that no new physical table type and data access method would be required. More changes are likely to follow soon. 2010-07-13 12:32:36 +00:00
alexpeshkoff
88db8b2fbc ODS change: made RDB$USERS system table, added virtual table SEC$USERS 2010-07-09 12:51:05 +00:00
asfernandes
12079f5ece Created class BlrWriter and reorganization (move BLR generation from statement to scratch) 2010-06-17 01:18:40 +00:00
alexpeshkoff
ea1b1843d8 Cleaned up macro BOOT_BUILD, boot ObjModuleType in posix build and a lot of related steps in posix build 2010-05-18 13:32:30 +00:00
asfernandes
4763533669 Refactor jrd_req into JrdStatement (shared part) and jrd_req (execution of a statement).
Fixed some bugs found in the way.
2010-04-18 22:19:11 +00:00
alexpeshkoff
88b8a40a04 1. Cleaned up most of SUPERSERVER usage.
SUPERSERVER has 4 different meanings in our code:
- this is milticlient server (replaced with Config::getMultiClientServer())
- use shared data cache (replaced with Config::getSharedCache())
- use shared metadata cache (replaced with macro SHARED_METADATA_CACHE)
- database are NOT shared between processes (replaced with getSharedDatabase())

2. Use fb_smp_server as both superclassic and classic binary on posix
(xinetd autodecection is done).

3. Small posix build cleanup.
2010-04-15 14:40:27 +00:00
asfernandes
77a2706b73 Misc 2010-03-01 02:14:36 +00:00
alexpeshkoff
e5017f1a12 Extend format of firebird configuration file with a set of additional parameters for any parameter.
Use traditional firebird configuration files format in all places (intl, trace, etc.).
Add per-database configuration facility to aliases.conf (currently 15 parameters from firebird.conf).
2010-02-28 18:00:51 +00:00
asfernandes
d3c0e1971a 1) Feature CORE-2830 - Window functions: DENSE_RANK, RANK and ROW_NUMBER
2) Fix BLR filter for some procedure verbs
2010-02-14 19:08:22 +00:00
asfernandes
0affd15dc5 Merge OrderedWindowStream into AggregatedStream 2010-02-13 23:55:48 +00:00
asfernandes
c737d6a807 Create ExprNode class hierarchy.
Convert CONCATENATE and aggregate functions to it.

Fix some bugs:
- select sum(n) over (order by n2), sum(n) over (), n, n2 from x1;
- select (select 1 from x1 b where list(1, a.n) = 1) from x1 a;
2010-02-13 20:29:29 +00:00
asfernandes
b68658534f Feature CORE-2823 - Support the ORDER BY subclause for current aggregate functions (except LIST) 2010-01-23 03:02:53 +00:00
alexpeshkoff
55e717f810 Moved authentication code from engine to remote listener.
Get ready for authentication plugins.
2010-01-22 14:55:11 +00:00
asfernandes
bc2fdf4c6a Fix Linux build 2010-01-14 14:36:46 +00:00
robocop
fb161097df Finally use the same logic to detect ODS capabilities in backup and restore. 2010-01-03 03:45:09 +00:00
robocop
1d084192b1 Put class Attachment in its own files by brute force. 2009-12-25 10:25:16 +00:00
asfernandes
bc0cfcd584 1) Make it build in Linux; 2) Fix some warnings 2009-12-21 20:55:07 +00:00
alexpeshkoff
a2b325bf63 It was bad idea to try to make fbsvcmgr more intellectual than it should be - rolled back part of my changes 2009-12-16 12:34:17 +00:00
alexpeshkoff
3b95a6b5b4 Fixed an issue with gsec compatibility with previous versions 2009-12-16 11:25:50 +00:00
asfernandes
e71e4d1e3e Rename file to match class name 2009-12-10 13:46:22 +00:00
asfernandes
933af8f7c2 Make it build in Linux 2009-12-09 20:55:12 +00:00
alexpeshkoff
8bfa0a37a2 Feature CORE-1952: deprecate Implementation IDs, easing new ports; ODS change - BOOT build needed 2009-11-13 18:29:06 +00:00
alexpeshkoff
6914ea456b Fixed posix build 2009-11-05 11:52:43 +00:00
asfernandes
79e9320875 Refactor aggregate handling into AggregateRsb class 2009-10-31 19:03:30 +00:00
asfernandes
ed0e0daeb3 - External Engines implementation.
- Plugins API.

- Feature CORE-2700 - UDR (User Defined Routines) Engine - C++ API supporting functions, triggers and stored procedures.
- Feature CORE-2470 - Support for alternate format of strings literals.
- Feature CORE-2310 - DDL triggers.
- Feature CORE-2312 - PSQL Packages.
- Feature CORE-1209 - CONTINUE statement.
- Feature CORE-1180 - DDL syntax to change (not) nullable state of columns.
- Feature CORE-2090 - Support OVER () clause with current aggregate functions.

- Fixed CORE-2699 - Common table expression context could be used with parameters.

- Introduce ODS 12.0.

- Work in progress in type-safe parser.
- Refactor some DDL commands (procedures and triggers) from DYN to DdlNodes.
- Refactor virtual tables to use a class hierarchy instead of namespaces. This is basic thing, not based on the changes done in Vulcan. Window functions is based on this work.
- Refactor COMMENT ON and DROP FUNCTION from DYN to DdlNodes. COMMENT ON do not use GDML anymore, it uses DSQL with PreparedStatement class.
- Refactor EXECUTE BLOCK to StmtNodes.
- Refactor the IUDF to SysFunctions. That eliminates RDB$GET_CONTEXT and RDB$SET_CONTEXT from RDB$FUNCTIONS.
2009-10-21 00:42:38 +00:00
alexpeshkoff
86f3176307 Fixed CORE-2467: security risk in 2.5 beta1 2009-05-19 14:33:36 +00:00
alexpeshkoff
5bbb9d909c Fixed misc binreloc-related issues 2009-04-22 15:49:28 +00:00
asfernandes
8db711cd42 Feature CORE-2398 - Make Firebird correct detect its installed path in Linux 2009-04-08 02:14:03 +00:00
dimitr
0edba46399 Cleaned up the unused ALL routines, the only remainings from the old allocator code. 2009-04-01 11:44:43 +00:00
aafemt
6ca657cd86 Libtool and Co removal 2009-02-19 21:17:17 +00:00
alexpeshkoff
2da14652dd Avoid use of class PluginManager 2009-02-04 11:39:37 +00:00
alexpeshkoff
e1117d8a3d Make trace plugin build on linux 2009-02-03 12:03:25 +00:00
alexpeshkoff
fabcd31d03 misc 2009-02-02 13:26:14 +00:00
alexpeshkoff
2cf130db1d Added trace to posix build - first draft 2009-02-02 11:48:44 +00:00
alexpeshkoff
b4f7717eb3 Implemented CORE-1758: nBackup support in Services API. 2008-11-20 17:29:38 +00:00
alexpeshkoff
47584a86f0 Avoid unneeded module in fb_smp_server 2008-11-05 09:02:30 +00:00
alexpeshkoff
e79f55708d 1. Cleanup - use Firebird::Semaphore instead of local events, removed code
related with local events from isc_sync.cpp.

2. Cleanup - removed unused parameter 'number of events' from ISC_event_wait()
and two unused parameters from ISC_event_init().

3. Added SYSV-semaphore based implementation of IPC to isc_sync.cpp.
This should fix CORE-2102: Firebird 2.5 does not build on MacOS (Darwin).

4. Fixed use of posic CS without (x)inetd (i.e. fb_inet_server -s).

5. Fixed (to be reviewed by Dmitry) recovery after some process death in lock manager.
2008-10-10 15:58:05 +00:00
alexpeshkoff
370ed679ec Refactored services code 2008-09-11 09:03:08 +00:00
alexpeshkoff
13a15d4bfe 1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
asfernandes
8f9b451ce9 Rework of ib_util changes. Dynamically load it in the engine and inform callback functions to alloc and free memory. Allocate memory from the default pool. 2008-07-12 21:23:42 +00:00
alexpeshkoff
7c8427bc35 Separated CVT functions to common and jrd parts.
This made possible to avoid ugly CVT_move export.

Cleanup of errors handling in CVT functions.
2008-07-10 15:57:33 +00:00
alexpeshkoff
5ac5869661 CORE-1964 - stop vararg mess when reporting errors. Use special class for it. More (ERR_post cleanup) to come. 2008-07-03 12:02:54 +00:00
asfernandes
af1d955da6 Improvement CORE-1937 - Detect (instead of crash) FREE_IT UDFs that return pointer not allocated by ib_util_malloc 2008-06-14 22:16:40 +00:00
alexpeshkoff
2065872514 Use DFW to store data for user management 2008-05-21 08:14:09 +00:00