Dmitry Yemanov
ca6f63261c
Add missing namespace
2023-11-09 09:15:37 +03:00
Vlad Khorsun
f3f231a0a3
Improvement #7814 : Don't update database-level statistics on every page cache operation.
2023-10-23 20:16:01 +03:00
Adriano dos Santos Fernandes
f8ed006057
Ressurect TriState, replace Nullable<bool> by TriState, remove Nullable.
2023-09-18 20:38:33 -03:00
Adriano dos Santos Fernandes
5d47a0ba7c
Replace throw() by noexcept.
2023-09-18 20:27:13 -03:00
Dmitry Yemanov
f239ca161f
Surface internal optimization modes (all rows vs first rows) at the SQL and configuration levels ( #7405 )
...
* Surface internal optimization modes (all rows vs first rows) at the SQL and configuration levels.
* Add session-level control over the optimization strategy
* More informative name as suggested by Adriano
* Cost-based approach for the first-rows optimization mode
2023-09-13 21:21:12 +03:00
Vlad Khorsun
b2eb581b2f
Per-attachment cache of often used BDB's
2023-09-01 11:15:04 +03:00
Adriano dos Santos Fernandes
670d3513ca
Improvement #7688 - Profiler should not miss query's top-level access paths nodes.
continuous-integration/drone/push Build is passing
2023-07-29 23:51:15 -03:00
Adriano dos Santos Fernandes
00bb8e4581
Improvement #7652 - Make the profiler store aggregated requests by default, with option for detailed store.
continuous-integration/drone/push Build is passing
2023-06-26 22:53:23 -03:00
AlexPeshkoff
3018b8127e
Fix for #7556 : FB Classic can hang when attempts to attach DB while it is starting to encrypt/decrypt
continuous-integration/drone/push Build encountered an error
2023-04-26 20:43:25 +03:00
Dmitry Yemanov
89087e0e10
Misc
2022-10-18 20:40:55 +03:00
Dmitry Yemanov
e9fdb67e63
Rework monitoring logic to provide faster response under high CPU-bound load
2022-10-08 11:31:39 +03:00
AlexPeshkoff
711eb3e02b
Fixed #7304 : Events in system attachments (like garbage collector) are not traced
2022-09-15 19:46:32 +03:00
Adriano dos Santos Fernandes
581795ed78
Merge branch 'work/profiler-plugin' into work/profiler-plugin-merge
2022-08-10 22:26:38 -03:00
AlexPeshkoff
dd1593b67d
Fixed issues with shutdown thread, reported by Ilya Eremin privately
2022-07-21 14:47:12 +03:00
Vlad Khorsun
889ff29299
Detach idle worker attachments after 60 seconds of inactivity to free system resources and metadata locks.
...
Also, publish worker attachments for monitoring.
2022-06-15 17:05:18 +03:00
Adriano dos Santos Fernandes
35ba33592f
Add procedure SET_FLUSH_INTERVAL.
...
Add parameter FLUSH_INTERVAL to START_SESSION.
2022-06-06 21:52:00 -03:00
Adriano dos Santos Fernandes
bb139df3c7
Remote attachment profiling.
2022-06-04 15:00:42 -03:00
Vlad Khorsun
fa90269460
Parallel backup, restore and sweep.
2022-05-31 20:29:36 +03:00
Adriano dos Santos Fernandes
98f678d4ee
Rename class jrd_req to Request.
2022-02-13 10:51:30 -03:00
Adriano dos Santos Fernandes
7ff8855317
Avoid prefix Jrd in Statement class and Statement/jrd_req accessors/variables.
...
Change DSQL methods accordingly prefixing things with Dsql to avoid things as
request->getRequest() and statement->getStatement().
2022-02-09 15:47:58 -03:00
Adriano dos Santos Fernandes
1a072f43d8
Add table MON$COMPILED_STATEMENTS and columns ( #7050 )
...
Add table MON$COMPILED_STATEMENTS and columns MON$STATEMENTS.MON$COMPILED_STATEMENT_ID and MON$CALL_STACK.MON$COMPILED_STATEMENT_ID.
2022-02-06 21:41:11 -03:00
Adriano dos Santos Fernandes
2f503f2e2d
Profiler.
2021-12-23 15:08:04 -03:00
Adriano dos Santos Fernandes
3a452630b6
Add table MON$COMPILED_STATEMENTS and columns MON$STATEMENTS.MON$COMPILED_STATEMENT_ID and MON$CALL_STACK.MON$COMPILED_STATEMENT_ID.
2021-11-24 15:18:39 -03:00
AlexPeshkoff
1dfb7bffd7
An attempt to fix Mac build after #6947
2021-10-12 12:22:29 +03:00
AlexPeshkoff
9ed56eff6c
Better fix for #6947 : Query to mon$ tables does not return data when the encryption/decryption thread is running
2021-10-11 20:06:38 +03:00
Dmitry Yemanov
6ae5e1026e
Code simplification (and preparation for the next commits)
2021-09-03 15:53:12 +03:00
Dmitry Yemanov
de1f81390b
This should fix #6935 : SQL SECURITY DEFINER has inconsistent behaviour if the object owner is non-privileged
2021-08-27 20:08:10 +03:00
Adriano dos Santos Fernandes
1fbfeedb69
Add SET DEBUG OPTION DSQL_KEEP_BLR and remove Statement::PREPARE_KEEP_EXEC_PATH flag.
...
Make ISQL' SET EXEC_PATH_DISPLAY persistent between connections.
2021-07-30 16:40:01 -03:00
Dmitry Yemanov
e4b5120de0
Fixed #6848 : Generator values may not replicate after commit
2021-06-08 18:29:45 +03:00
Adriano dos Santos Fernandes
9436f57498
Fix #6787 - MON$ATTACHMENTS.MON$TIMESTAMP should use its session original time zone.
2021-05-04 11:30:37 -03:00
Dmitry Yemanov
5c0d3f82f1
Allow multiple appliers per attachment
2021-05-01 18:10:57 +03:00
hvlad
48c0459276
Fixed bug 6777 : AV when engine shut down and cancels attachment that is waiting in lock manager.
2021-04-26 12:29:19 +03:00
AlexPeshkoff
7a6712660d
Fixed CORE-5197: Segfault when process exits with active sweep thread
2020-12-08 18:08:57 +03:00
hvlad
752424d513
Addition for CORE-5832 : Implement way to reset user session environment to its initial (default) state
...
Database triggers ON DISCONNECT and ON CONNECT is fired during session reset.
New system variable RESETTING is introduced to detect session reset state.
More detailed description see in tracker.
2020-11-30 13:15:48 +02:00
AlexPeshkoff
c1179d7a24
Removed dispose() and release() from most of implementations as was suggested by Adriano long time ago.
...
Cleanup old unused debugging feature (RefDeb).
Fixed CORE-6433: Several firebird servers crash
2020-11-13 14:49:35 +03:00
hvlad
1ab61903af
Attempt to find the reason of crash around setLockAttachment(), cleanup.
...
DEBUG_LCK_LIST should be undefined before release!
2020-10-22 00:00:39 +03:00
Dmitry Yemanov
3f3880710f
Make error handling consistent with the rest of the API + some minor adjustments
2020-10-07 20:52:51 +03:00
1677359553
Replication plug ( #280 )
...
* Support for replication plugins + sample plugin
* Renamed TDBB flag
* Configurable replication errors handling
* Commit in two phases
* Move call to dispose() out of commit/rollback for code simplification
* A comment and manual fix for constant wrongly generated by CLOOP
* Log replication warnings as well
2020-09-18 11:45:51 +03:00
AlexPeshkoff
ca12563ba5
Fixed CORE-6371: Avoid server crash on shutdown in case of wrong reference counting in UDR
2020-07-24 18:45:48 +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
hvlad
e018f7541f
Refactored TimerImpl to use std::function as Adriano suggested.
2020-05-22 11:54:38 +03:00
hvlad
1454fea3ea
Use common template for Attachment::IdleTimer.
...
Don't start session idle timer if there is executing statement.
Show in monitoring tables real expiration time of timeout timers, independent of system time change after timer start.
2020-05-19 17:07:18 +03:00
Dmitry Yemanov
25f5bf7b6a
Allow the replication state to be changed at runtime
2020-04-21 19:36:43 +03:00
Dmitry Yemanov
9f6152a300
One more fix for possible hangs inside the monotoring shmem code
2020-03-20 15:21:27 +03:00
AlexPeshkoff
b9f4c65220
Added various ways to get infomation about wire crypt plugin name: variable in rdb$get_context(), field in mon$attachments and tag in Attachment::getInfo()
2020-01-15 18:02:19 +03:00
AlexPeshkoff
e3cd960d3a
Cleanup
2019-12-06 18:35:43 +03:00
AlexPeshkoff
e8787500d7
First edition of SET BIND statement
2019-12-06 18:35:43 +03:00
hvlad
1f1c82dde2
Fixed wrong datatype used
2019-11-05 19:00:32 +02:00
Adriano dos Santos Fernandes
760d4b13ca
Fixed CORE-6166 - Problems with long object names (> 255 bytes).
2019-10-21 12:53:13 -03:00
Alexander Peshkov
861d536fc2
Int128 - new datatype ( #220 )
...
* Int128 support - work in progress
* Work in progress
* Int128 datatype appears to be mostly OK except sort & index
* Fixed divide scaling, added sorting & network (xdr) support
* Binding control, aggregate nodes, cleanup and documentation
* Fixed VS2017 AppVeyor build
* Next attempt to fix vs2017 build
* Next attempt to fix vs2017 build
* Next attempt to fix vs2017 build
* Update MSVC build.
* Set VS architecture correctly
* Fixed a number of issues noticed by Mark
2019-09-16 20:59:54 +03:00