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

26 Commits

Author SHA1 Message Date
Adriano dos Santos Fernandes
547cb8388b
Improve performance of external (UDR) functions (#7989) 2024-02-28 18:43:16 -03:00
Roman Simakov
b4be5b9ae2
Make DDL object type constants stable and extendable (#7125)
Add shift to DDL object type while restoring backup of prior version.
Rework DDL access checks. Remove unneeded constants, duplicating code.
Rename some functions to suit their purpose.
Provide a way to extent object type constants in future not changing
existing ones.
2022-02-10 12:27:43 +03:00
hvlad
5f336a189e Fixed bug CORE-6351 : Computed field could be wrongly evaluated as NULL 2020-08-05 21:39:05 +03:00
Alexander Peshkov
cb6fee68eb
Small meta name (#271)
Keep metadata name strings in hash table having just a pointer to a hash table member in all places where metadata name is needed in order to save RAM. Hash table of metadata names is almost lock-less: mutex is used only when new segment of memory is needed or hash table should be grown.

Co-authored-by: hvlad <hvlad@users.sourceforge.net>
2020-06-16 19:22:15 +03:00
Artyom Smirnov
1f13a2fa15 Fix external engine memory leaks (#168)
* Release objects of external engine

1. Added explicit destruction of procedures and functions, because it
should execute external routines destructor to avoid leaks inside
external engine
2. Add explicit destruction of trigger and destruction of linked
external trigger
3. Release external engine after use

* Fix external engine procedures leaking, when creating new procedure
2019-02-26 07:54:01 +03:00
asfernandes
2aa3e8dd4d Working in progress on the fix for CORE-4271: unify as possible the handling of procedures and functions. 2013-12-12 14:42:31 +00:00
asfernandes
c627005a89 Feature CORE-3626 - Subfunctions in PSQL and EXECUTE BLOCK.
Tests at http://firebird.cvs.sourceforge.net/viewvc/firebird/fbtcs/GTCS/tests/FB_SQL_SUBFUNC_1.output.

Also did:
- Refactor to share more code/data between procedures and functions.
- Fixed some PSQL functions problems.
2011-10-16 20:36:07 +00:00
asfernandes
cd7c8dee95 Use the BLR message definition of external procedures and functions. 2011-07-10 01:23:53 +00:00
asfernandes
a3064848d6 Make ExprNodes and RecordSourceNodes reference others directly instead of via jrd_nod.
Store ValueExprNodes instead of jrd_nod in the metadata cache.
Make RecordSourceNode child of ExprNode as they share most operations.
Get rid of the JRD visitors in favor of direct calls.
Convert assignments statement lists created inside expressions to separate source and targets ValuesExprNodes.
2010-11-21 03:47:29 +00:00
dimitr
7eded400e8 Let's clearly distinguish between deterministic and invariant functions, they're not the same thing actually. Runtime optimization usage is to be re-considered, if necessary.
Warning: this includes an ODS change, please boot-build.
2010-11-13 15:03:44 +00:00
alexpeshkoff
83d6a2f88c Restored a lot of changes, rolled back by me unintentionally 2010-10-12 11:36:51 +00:00
alexpeshkoff
2dc25a44bb OSRI and new posix build 2010-10-12 08:02:57 +00:00
dimitr
df245ba88e Fixed problems with recursive PSQL functions. Minor refactoring. 2010-10-08 09:40:14 +00:00
asfernandes
8047048dc4 Misc 2010-08-26 15:40:51 +00:00
asfernandes
18a6a6b4f9 More consts 2010-08-13 15:22:00 +00:00
asfernandes
dadc0f560c Const correction for EVL, EXE and they subsystems. Adjustments to CMP and OPT. 2010-08-09 15:48:51 +00:00
dimitr
3269c73d06 Optimization: allocate the messages during prepare time rather than runtime.
Also, fixed one bug in the parameter handling for PSQL functions.
2010-04-15 11:07:05 +00:00
dimitr
307c3be080 Fixed evaluation of default arguments for PSQL (and, supposedly, external) functions.
Improved error handling.
2010-04-14 09:45:27 +00:00
robocop
3b5a0fdae5 The way AccessItem instances were ordered was a hack that sooner or later would fail when adding more object types (that now have ACLs but we still don't enfornce them). Further, comparing numbers is faster than comparing strings. 2010-02-13 08:31:16 +00:00
asfernandes
82ccb81d3b Unify even more procedure and function handling. While at it, fix a wrong access to req_procedure when validating function. 2009-12-30 01:40:39 +00:00
asfernandes
d8c99a9be2 1) Make procedures and functions member of the same hierarchy (Routine class)
2) Some completion for external functions
2009-12-27 22:05:22 +00:00
asfernandes
8f19a2b7e1 Consts 2009-12-27 19:05:38 +00:00
dimitr
e07921cc2f PSQL functions (support for default parameters). 2009-12-25 14:37:44 +00:00
dimitr
6e1f8db753 Metadata cache support for PSQL functions. 2009-12-24 14:15:21 +00:00
asfernandes
bc0cfcd584 1) Make it build in Linux; 2) Fix some warnings 2009-12-21 20:55:07 +00:00
dimitr
6afd92f854 Support for PSQL functions (other JRD changes). Still work in progress. 2009-12-21 17:53:49 +00:00