robocop
eed418a89e
Make blb resemble more a class: private data members, convert some functions into methods, add methods with code that was in other files, etc.
2012-02-15 03:34:21 +00:00
asfernandes
add3d8ddef
Misc.
2011-06-08 01:55:13 +00:00
hvlad
945a1bdbf4
Fixed bug CORE-3515 : Index corruption. Validation put "missing entries" message into firebird.log
2011-06-05 08:15:33 +00:00
asfernandes
f14ec26183
Misc.
2011-06-04 02:18:55 +00:00
dimitr
f75b00b62d
Misc.
2011-06-01 17:03:14 +00:00
dimitr
df893a708d
Better (I hope) solution for CORE-3058: New generators are created with wrong value when more than 32K generators was previously created. It also resolves the [temporary] inability to restore generator values.
2011-06-01 16:58:55 +00:00
hvlad
99c9c8e2db
Enabled background threads (garbage collector and cache writer).
...
Introduced special kind of system attachments used in this threads and show its activity in monitoring.
2011-05-27 07:57:16 +00:00
hvlad
fef1f49c94
Shared page cache implementation
2011-05-09 10:15:19 +00:00
hvlad
542d70ac61
Fixed bug CORE-3468 : Attempt to read after the end of file when nbackup state is stalled
2011-05-05 22:05:59 +00:00
asfernandes
03ce334e2b
Misc
2011-04-04 13:37:47 +00:00
robocop
43606cad9b
Misc, style, etc.
2011-04-02 04:27:07 +00:00
alexpeshkoff
f89ac854ef
Getting ready to use 32 (not 31) page and transaction numbers
2011-01-21 17:55:04 +00:00
alexpeshkoff
e05c1a825f
Moved some more .h-files to common from jrd as Vlad suggested
2010-10-13 10:39:52 +00:00
alexpeshkoff
2dc25a44bb
OSRI and new posix build
2010-10-12 08:02:57 +00:00
robocop
9eaa31856a
Cleanup.
2010-04-29 05:15:57 +00:00
asfernandes
0c47a04538
1) Use RAII with the non-cached requests.
...
2) Change GPRE generated code to something that fits the future SMP-aware engine, replacing calls of "request = CMP_compile2(...)" by "request.compile(...)". Boot build required.
2010-04-19 22:49:18 +00:00
asfernandes
39498cb65b
Use AutoCacheRequest in all cacheable system requests. Fixes some request leakages.
2010-04-18 15:04:52 +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
robocop
ac551e2b71
Cleanup.
2010-04-04 08:52:10 +00:00
asfernandes
e1ba33a2ae
Fix problem of the system transaction storing pointer to random or already deallocated attachment. Full build (or kind of) required.
2010-04-02 21:48:15 +00:00
robocop
e235d70e12
Misc.
2010-02-13 08:34:08 +00:00
dimitr
4c4a77a4fe
Refactored SQZ into a class. Fixed all the SCHAR* pointers to be UCHAR* + appropriate cleanup.
...
Make the interface and internals friendly to any byte sequence, even the one longer than 32K.
2010-02-12 12:53:06 +00:00
asfernandes
0057047932
Misc
2009-12-30 00:50:39 +00:00
robocop
fc62cfe6e7
Misc.
2009-12-28 11:46:55 +00:00
hvlad
ce9fd62c3c
Swept flag implementation.
...
A little optimisation of mark_full() - don't call it if not necessary, don't mark PP if its flags already matched to DP flags.
2009-12-28 09:11:20 +00:00
robocop
0564019d2f
Misc and cleanup.
2009-12-24 11:48:17 +00:00
asfernandes
e386c68e8e
Misc
2009-12-17 23:59:07 +00:00
hvlad
8c757b0f30
ODS change : implement dpg_secondary flag.
...
Other : make table scan skip secondary data pages, propagate record type to the store_big_record to allow record head be stored at the primary record page.
2009-12-17 09:50:28 +00:00
robocop
b2798cbd87
Misc.
2009-12-16 08:07:36 +00:00
asfernandes
b137cdfd80
Misc
2009-12-14 23:55:56 +00:00
hvlad
559494bfd3
A couple of ODS changes :
...
- abandon page checksums and use page number for validation
- PIP have now pip_used field to track number of allocated pages
- two more flag bits per data page is now reserved on pointer page. One is for the swept flag and second is still not used but makes calculations easy
- misc changes
Don't forget to rebuild your DBs !
2009-12-14 09:46:16 +00:00
robocop
f955568fc9
The architect created ODS12 and saw it was good, then he said "thy shall be the only one among your race", dropped the older ones and sent the developers to the four corners of the cyberspace to convert the masses to ODS12.
2009-11-27 02:33:40 +00:00
robocop
579a456329
Style.
2009-11-25 08:38:52 +00:00
robocop
804ad6048a
Restrict us to ODS11 and ODS12 until the dust settles down.
2009-11-24 11:42:56 +00:00
asfernandes
13e1546a70
Misc
2009-11-21 00:10:16 +00:00
robocop
9ce4040042
Replace the now obsolete dbb_minor_original by dbb_minor_version.
2009-11-18 12:02:00 +00:00
robocop
afc138e9bc
Generators page cleanup, as requested by Ann Harrison.
2009-11-18 11:54:21 +00:00
dimitr
e6909de7f7
Wipe out the SCROLLABLE_CURSORS code + minor cleanup.
...
Also, surfaced scrollability for PSQL cursors (without internal support yet).
2009-10-31 06:25:01 +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
asfernandes
9c1918d39b
Misc
2009-10-15 02:15:31 +00:00
dimitr
78fcc3a1b5
Let's better use a context pool, if required.
2009-10-12 06:39:34 +00:00
hvlad
789b069820
Improvement CORE-2672 : Reduce precedence writes
2009-10-11 22:15:51 +00:00
robocop
3e66cd45f5
Comments.
2009-08-20 11:18:57 +00:00
robocop
de4be11750
Misc.
2009-07-13 10:00:43 +00:00
asfernandes
5dda9c1677
Misc
2009-06-27 03:03:56 +00:00
robocop
48377f4e35
Convert goto into a for() loop.
2009-06-25 10:59:10 +00:00
asfernandes
097b0ca2c2
Misc
2009-06-25 02:29:13 +00:00
robocop
bb2544fb47
Style.
2009-06-23 04:12:59 +00:00
robocop
bb83e70cfe
Isolate even more the scrollable cursors-related code.
2009-06-22 08:45:38 +00:00
asfernandes
928d2616fd
Misc
2009-06-19 02:29:08 +00:00
hvlad
c63ae53d19
Patch by DS and VKh to speed up SQZ in some cases
2009-06-10 12:41:13 +00:00
hvlad
643a6f933b
Undo huge and not friendly fix for Sun compiler
2009-06-10 12:11:53 +00:00
alexpeshkoff
cf14a23b6f
Fixed Sun compiler build
2009-06-10 10:09:01 +00:00
robocop
2e3ce0d23d
Misc.
2009-06-07 09:49:58 +00:00
asfernandes
f6f364da49
Trim trailling spaces
2009-04-04 16:39:31 +00:00
asfernandes
283509ad8d
Misc
2009-03-01 15:42:23 +00:00
robocop
fab6a3a6cf
Get rid of superflous parentheses.
2009-02-28 11:57:40 +00:00
robocop
14733c1985
Align braces in relatively large or complex blocks.
2009-02-25 06:08:43 +00:00
hvlad
ff50ab26a2
Fixed bug CORE-2340 : Bugcheck 258 (page slot not empty) could occurs under high concurrent load
2009-02-24 08:19:11 +00:00
robocop
3689f15321
Style.
2009-01-20 08:33:59 +00:00
asfernandes
5311dd5a5e
Misc
2008-12-20 19:57:43 +00:00
robocop
ff99dc3d46
Style.
2008-12-18 10:47:25 +00:00
robocop
511c7eb7d8
Promote thread_data* as function argument.
2008-12-14 10:19:27 +00:00
dimitr
1a943d1990
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:07:37 +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
alexpeshkoff
a2e416210b
Fixed CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid.
...
Also cleaned up use of gds__log() in a few places.
2008-06-26 09:47:59 +00:00
robocop
e9e1ead67a
Mostly style, constness, native memcpy and explicit constructors.
2008-02-02 17:04:06 +00:00
alexpeshkoff
39896cb955
Fixed CORE-1671: atexit() calls in client libraries cause segfaults
...
and CORE-1079: Every attach of fbclient/fbembed library leaks 64KB of memory
To do it:
- created new template GlobalPtr, controlling access to destructors of global objects.
- applied it to global objects.
Also some related cleanup.
2008-01-23 15:52:40 +00:00
dimitr
2c78462820
The merge continued.
2008-01-16 08:46:02 +00:00
alexpeshkoff
eea9070f48
Optimized RuntimeStaticstics (and related part of ThreadDb) for performance - some tests run 25faster
2007-12-03 15:46:39 +00:00
asfernandes
c67afcb4ee
Improvement CORE-1277 - Automatic transliteration of text blobs
2007-05-22 02:14:20 +00:00
robocop
64f6eb42a1
Misc.
2006-07-21 01:35:17 +00:00
dimitr
0b9db43702
Misc.
2006-05-31 08:29:29 +00:00
robocop
7040d668fd
Misc.
2006-05-25 08:40:23 +00:00
dimitr
211645e3dc
Getting rid of the old allocator routines.
2006-05-23 10:17:00 +00:00
asfernandes
1a9279d068
Fix of VIO_DEBUG code
2006-05-22 17:41:10 +00:00
asfernandes
d2652c6252
Misc
2006-05-22 02:36:53 +00:00
hvlad
701f2cbda4
Global temporary tables implementation
2006-05-21 22:07:35 +00:00
alexpeshkoff
b056a118b5
1. Avoid use of STL
...
2. Reworked exceptions to make status_exception always hold correct status vector
3. Avoid use of RTTI
2006-05-19 15:17:02 +00:00
robocop
d74438baed
Fix the discordant data types between flags and the vars used to work with them (really dangerous if the flag is USHORT and you hold it in a UCHAR). Also, get rid of some debris of the uppercased typedefs.
2006-04-19 07:10:53 +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
alexpeshkoff
e85ee26ade
fixed gcc warning(s)
2006-01-18 10:43:13 +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
dimitr
ccc9cfefe6
Restored the fragmentation logic I removed one year ago.
...
I cannot reproduce the old bug anymore and this code allows smaller version stubs.
2005-10-05 08:54:03 +00:00
dimitr
fde48e9530
Moved page-level code to DPM.
2005-03-29 09:43:31 +00:00
robocop
d6535351a2
Misc: style.
2004-11-24 09:22:07 +00:00
robocop
1062dbc1e2
Restore check for negative rec number just in case.
2004-10-02 09:28:19 +00:00
skidder
85297ac45a
Fix MSVC7 builds
2004-09-28 21:50:10 +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
1741432859
Got rid of redundant cast to jrd_req*
2004-08-26 11:07:57 +00:00
skidder
6b4dea743e
Do not write rubbish from uninitialized stack variable into pad space of data pages
2004-08-12 21:18:11 +00:00
robocop
1bbb740b98
Undo inheritance in ODS page types as requested by Nickolay. Either some macros are too silly or the compiler is limited by the standard here.
...
Notice I may have missed some file that's not compiled in Win32.
2004-07-10 03:20:33 +00:00
robocop
682b582764
USHORT -> bool
2004-07-07 03:47:12 +00:00
alexpeshkoff
1591a54e5e
Thread cleanup:
...
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
alexpeshkoff
9a34ce553c
make bool (isEmpty/hasData) checks for string and stack safe
2004-05-27 16:26:52 +00:00
brodsom
9dbe1e64fe
-Remove casts unneeded after macro cleaning
2004-05-14 18:43:34 +00:00
robocop
802f244ec1
Misc changes
2004-05-09 05:48:33 +00:00
skidder
43cb0d1ce4
Y-Valve handle translation layer
2004-05-02 23:06:37 +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
brodsom
5cf9fdfc90
Removing ib_stdio.h
2004-04-28 22:43:34 +00:00