dimitr
c4530625d9
Undo log shouldn't depend on the outer transaction.
2008-10-16 05:36:36 +00:00
dimitr
e0db5f3ecd
Splitted the undo log into two parts: in-memory one for initial undo items (but they're much more dense now) and on-disk (cached up to TempSpaceLimit) one for full record versions (used in update-in-place).
...
This dramatically reduces the memory usage for bulk updates, thus solving CORE-1575 (serious memory bug on multiple update a table in a single transaction) and CORE-1477 (Avoiding excessive memory consumption by undo-log after series of updates) and predicting out-of-memory conditions that could often lead to record-level corruptions.
2008-10-14 10:32:54 +00:00
asfernandes
1442725a4a
Fixed CORE-1986 - Altering domains name drops dependencies using the domain
2008-07-15 15:41:43 +00:00
hvlad
5d9c430674
Implemented improvement CORE-1928 : Allow EXECUTE STATEMENT to inherit access privileges of caller stored procedure or trigger.
...
Allow to specify EXECUTE STATEMENToptional clauses in any (not fixed) order.
Use INTERNAL_PROVIDER for access to the current database by another user too.
2008-06-08 20:42:27 +00:00
alexpeshkoff
e0109ab067
1. Use DFW to store data for user management.
...
2. Minor cleanup in DFW, fixed memory leaks.
2008-05-21 08:13:20 +00:00
alexpeshkoff
0552035ce5
Added transaction support in user management commands
2008-05-15 15:15:02 +00:00
alexpeshkoff
58693ad198
fixed gcc warning
2008-05-07 11:43:13 +00:00
dimitr
0a9e8c8382
Implemented CORE-1751. The changes include:
...
1) Make memory counters aggregated.
2) Add attachment pool and allocate appropriate resources out of this pool.
3) Always release attachments explicitly (via destructor).
4) Always delete user requests prior to attachment deletion.
5) Introduce memory usage counters per every monitoring object.
6) Misc refactoring.
Some pieces are still incomplete (although everything basically works), but I'd like to get feedback and testing sooner rather than later.
2008-05-06 08:46:39 +00:00
robocop
61662f5b5b
Constness and style.
2008-04-19 09:42:01 +00:00
robocop
05d225ed56
Misc.
2008-04-10 09:50:17 +00:00
hvlad
fe3f8c184b
New EXECUTE STATEMENT with support of external data source implementation
2008-04-09 20:18:47 +00:00
asfernandes
29fbfbb8ff
Misc
2008-04-06 14:45:51 +00:00
robocop
5e282b9f7e
Misc.
2008-04-06 10:31:58 +00:00
asfernandes
21da64cca7
Link blobs of autonomous transaction with the outer transaction - to fix invalid BLOB ID errors.
2008-04-05 19:28:52 +00:00
robocop
8177de47ec
const.
2008-03-28 13:32:36 +00:00
alexpeshkoff
cbe0217664
fixed gcc warning
2008-03-27 09:14:24 +00:00
dimitr
b87b5032ef
Changes in the TimeStamp class by Dmitry Kovalenko.
2008-03-26 10:21:04 +00:00
dimitr
f5659c0b70
1) Major cleanup of the old-style blk and allocator-based blk_type.
...
2) Added synchronization for the JRD locks.
2008-03-19 16:19:56 +00:00
alexpeshkoff
00c63c1f8d
1. Make signals handling in yValve MT safe.
...
2. Introduce new private API calls, fb__shutdown() and fb__shutdown_callback().
3. Introduce fb_smp_server - binary to run superclassic on posix.
4. Various cleanups.
2008-02-28 18:42:30 +00:00
dimitr
99caa91b85
DSQL integration into the engine.
2008-02-28 13:48:16 +00:00
dimitr
a38b327886
Cleanup. Get rid of the JrdMemoryPool.
2008-01-29 10:11:52 +00:00
alexpeshkoff
4927831df4
Fixing merge
2008-01-16 12:08:00 +00:00
dimitr
186d25aeb1
The merge continued.
2008-01-16 10:25:04 +00:00
dimitr
65bde054e9
A few trivial optimizations.
2007-11-29 10:26:23 +00:00
hvlad
2b47bbe55b
Revert files back after wrong commit
2007-11-19 00:21:18 +00:00
hvlad
86f1141328
Execute statement with support of external data source
2007-11-18 22:59:20 +00:00
asfernandes
a568843ccd
Fixed CORE-1395 - Few problems with domains's check constraints
2007-08-04 02:11:07 +00:00
asfernandes
9582ea243c
1) Upgrade INTL interface to undestand misc. configuration informations
...
2) Make our ICU collations work with different ICU versions (tested with ICU 3.6)
2007-04-15 15:57:12 +00:00
dimitr
99c2df56b6
Changed cancellation implementation to work at the transaction level as being more efficient.
2007-01-07 15:15:06 +00:00
dimitr
95ff778078
Restored the old code that reused savepoints and verbs instead of re-allocating them. In practice it shows about 7-8 percents of time economy during restore. My hopes that our memory manager can handle it efficiently failed.
2007-01-06 10:18:20 +00:00
asfernandes
570b6cd4b4
1) CORE-645 and CORE-745: Database triggers
...
2) CORE-711: Make syntax for "CREATE TRIGGER" compliant with SQL2003
2006-11-05 18:30:36 +00:00
asfernandes
5fb711a5d2
Remove GCC warnings
2006-10-31 02:31:17 +00:00
dimitr
1ce4eb2a2b
Fixed CORE-980.
2006-10-30 19:04:27 +00:00
dimitr
988782a96a
1) A new class to handle aggregated multi-level performance counters.
...
2) Cleanup and minor fixing.
3) A few monitoring changes.
2006-10-07 10:53:01 +00:00
asfernandes
b7af27215e
Allow usage of domains in PSQL (with TYPE OF syntax)
2006-08-19 02:52:39 +00:00
asfernandes
e538061c38
Implementation of CREATE/DROP COLLATION and ISQL show/extraction of collations
2006-08-07 16:39:21 +00:00
dimitr
c68587fe66
1. Virtual tables
...
2. ODS 11.1, procedure type and relation type
2006-07-17 17:44:18 +00:00
asfernandes
50cae9632b
Misc
2006-07-12 01:38:41 +00:00
robocop
4c0b816568
CORE-847
...
Deleting dependencies for fields that WERE computed.
2006-07-11 04:57:28 +00:00
robocop
1f84bac700
Mark unused data members, discover more code associated to conditional compilation, clean some places, replace custom loops by memcpy and memset when possible, etc.
2006-02-23 05:08:26 +00:00
robocop
2b99e764e3
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Sixth step: remove the places protected by the macro PC_ENGINE. More to come. (I guess all of you who have pending functional changes to post will love this commit. <g>)
2006-02-02 07:32:07 +00:00
robocop
f00fc0ff56
1.- Make "vec" type safe and get rid of several code contortions. Fix some small bugs meanwhile.
...
2.- Put inside PC_ENGINE several data members that belong to that feature.
3.- Put inside PC_ENGINE the code that does cleanup on those unused data members.
2005-12-02 07:35:34 +00:00
robocop
0142cdfb01
Backport Ann's fix for the system txn.
2005-11-06 03:20:18 +00:00
hvlad
c104f1b23d
Fixed two DFW bugs
...
1. Unregistered FB2 bug - expression index dependencies was tracked not correctly.
2. SF #1250150
2005-08-02 11:41:37 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
skidder
f44f06d085
Fix the memory leak from transaction pool when selectable stored procedures are called from PSQL or in subqueries
2004-12-07 01:19:55 +00:00
dimitr
0c2ca0314a
An attempt to tune the number after some testing. Allows to reduce number of fetches (1.5-2x) in subsequent updates.
...
Perhaps could be increased to 64KB, but IMO more than 100K rows cannot be undone effectively in the current implementation.
2004-11-25 20:07:20 +00:00
skidder
35ddab28fb
Implement Claudio suggestion regarding clean generic map class
2004-11-24 20:48:59 +00:00
skidder
9507cf9714
Context variables support
2004-11-22 20:22:03 +00:00
dimitr
421f259a4e
1) Locks related cleanup
...
2) Got rid of TRA_nowait + transaction waits related cleanup
3) Return isc_lock_timeout when it's necessary
TODO: Enhance SET TRANSACTION
2004-10-07 09:15:32 +00:00
skidder
3e6b170862
Roll back implementation of Claudio suggestion for consturctor of BID structure. It forced addition of constructors for message structures generated by GPRE which is not correct
2004-10-03 20:18:13 +00:00
robocop
31ba754981
After talking to Ann, decided to disable several items:
...
- obsolete items like WAL and JOURNAL (cleaned in the past)
- crud from attempts never finished like the shared cache manager for Classic
- DSQL nodes that aren't used. This allowed freeing some keywords.
The functionality was disabled by commenting the code. No code has been deleted.
2004-10-03 04:49:04 +00:00
skidder
36c4d7b832
Implement BID constructor as Claudio suggested
2004-10-01 21:12:46 +00:00
robocop
2816af8e97
Misc
2004-10-01 06:21:37 +00:00
skidder
85297ac45a
Fix MSVC7 builds
2004-09-28 21:50:10 +00:00
dimitr
a4cb9ebc26
Added transaction lock timeouts and new TPB value.
2004-09-28 20:25:52 +00:00
skidder
02a0915156
Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally
2004-09-28 06:28:38 +00:00
robocop
a19dadb269
1.- Try to fix the mess caused by different data types used to represent bifields of SCL_ constants defined in scl.h, second round.
...
2.- Prevent users from deleting system generators and modifying any entry in rdb$generators. VIO passes the task to DFW, the only problem being that the user gets the error when a commit is done, not before.
2004-07-06 05:59:40 +00:00
skidder
f4e7ebdd3b
Implement rudimentary framework to track lifetimes of active BLOBs.
...
This solves the following issues:
1) Outrageous memory consumption when blobs are converted from strings during request processing
2) Materialization doesn't cause invalidation of BLOB IDs too early.
Original behaviour caused errors with updatable views or procedures receiving BLOB arguments.
2004-06-22 20:13:10 +00:00
brodsom
b64670c9a4
Comment unused macros
2004-05-18 22:00:21 +00:00
brodsom
1ffe279896
-Avoid shadow warning
2004-05-12 19:39:17 +00:00
brodsom
a549091c94
- Split sqlda.h to avoid duplicated definitions between ibase.h and sqlda.h
...
- Replace define for constants
- Remove contants.h where not used.
2004-04-30 22:47:16 +00:00
skidder
abdbec6f84
Switch to Firebird container templates for request resource tracking. This significantly reduces CPU time any memory consumption for databases with complex metadata
2004-04-18 02:50:38 +00:00
robocop
1824343930
Cleanup.
...
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
alexpeshkoff
7007d6f2a4
1. introduced Jrd and Ods namespaces
...
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 14:57:40 +00:00
robocop
958f9e31aa
Cleanup
...
A few new[] - delete[] pairs fixed.
2004-03-19 06:14:53 +00:00
robocop
f58c769c37
Cleanup. In geeky words:
...
PandoraBox* pbox = reinterpret_cast<PandoraBox*>(&can_of_worms);
pbox->open();
pbox->flush();
Nickolay may want to undo my ods.h changes if gcc insists
in its crusade against non-PODs and poodles.
2004-03-18 05:56:06 +00:00
robocop
2ab1f94dd2
Cleanup
...
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +00:00
robocop
5c3c8abd9a
Big cleanup.
...
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
skidder
07c34616c6
Engine fully builds on Linux AMD64 now
2004-01-22 06:51:37 +00:00
skidder
08eee5ebaa
Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static.
2004-01-21 07:18:30 +00:00
robocop
06a4df3708
A requiem for JOURNAL and WAL.
...
Instructions in the list.
2004-01-06 10:33:18 +00:00
robocop
fd93837ec3
Cleanup:
...
const correctness
BOOLEAN -> bool
Vars in scope
Formatting
JRD_REQ -> jrd_req*
JRD_TRA -> jrd_tra*
JRD_REL -> jrd_rel*
JRD_FLD -> jrd_fld*
event -> event_t, EVENT_T dropped, EVENT should go in the future
Frank's corrections
alice's STR -> alice_str*
remote's STR -> rem_str*
etc.
It creates entities and backups and restores for me. :-)
2004-01-03 10:59:52 +00:00
dimitr
9a24b23947
Get rid of the free block lists. Our memory manager handles it better.
2003-12-13 10:42:10 +00:00
skidder
e0ecc4583c
Finish fixing class/struct inconsistencies. Firebird now builds using MSVC2003
2003-11-30 19:13:42 +00:00
aafemt
8798a33d84
ENUM removal
2003-08-22 10:56:55 +00:00
skidder
143f8d2443
Implementation of fast physical incremental backup
2003-08-06 16:30:49 +00:00
alexpeshkoff
85ee535ebd
Comment added
2003-05-05 10:46:54 +00:00
alexpeshkoff
2d59c9cd0f
Fixed bug with wrong rpb contents after pre-triggers execution
2003-04-25 14:51:04 +00:00
skidder
b8532b940f
Removed little piece of my debugging code (it was commented out already)
2003-03-02 20:23:20 +00:00
skidder
221a6a5bbb
VIO undo log now uses B+ tree to store savepoint record data.
...
This improves performance when doing multiple updates of record in
a single transaction just a little (usually 2-3 orders of magnitude for 100000 records)
2003-03-02 20:07:32 +00:00
dimitr
26bd8fbc52
Internal support for deferred work arguments.
2002-12-23 15:49:14 +00:00
hippoman
7387e6fb70
changed nod,tra,req,trg,rel,ctx,prc struct names to local module names
2002-11-20 23:18:16 +00:00
hippoman
4a76e9e4fe
change TRA,REQ,TRG,REL,CTX or PRC, to module local names.
2002-11-17 00:13:59 +00:00
skidder
d6ae24865d
Reworked savepoint stuff a little
2002-11-03 17:29:51 +00:00
skidder
8e6622a20e
Merging changes from skidder branch - explicit locks, savepoints, build system changes
2002-10-29 20:20:44 +00:00
skywalker
af3c8b2b30
porting changes from fb1.
2002-07-01 15:07:18 +00:00
dimitr
8463265fc1
Implemented 'EXECUTE VARCHAR' command.
2002-04-04 13:53:20 +00:00
tamlin
80f7fb6dd4
New C++ memory pool
2001-12-24 02:51:06 +00:00
tamlin
9a776a604e
First steps towards a C++ conversion.
2001-05-23 13:26:42 +00:00