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

1059 Commits

Author SHA1 Message Date
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
Dmitry Yemanov
ffdb0bc40f Frontported protection against orphan dbb, fixed return-else style, misc code simplifications 2020-07-13 16:45:14 +03:00
hvlad
e4b54dc570 Calls of ITransaction::validate() is moved out of attachment context to avoid potential deadlocks.
Ensure check_database() is called after validateHandle().
Removed unneeded find_transaction().
2020-07-10 12:59:25 +03:00
AlexPeshkoff
99ea876e23 Fixed regression caused by previous commit - segfault when unwinding half-done attachment 2020-07-09 19:16:58 +03:00
AlexPeshkoff
ebddc8f8e5 Fixed CORE-6360: Engine may hang due to races when starting crypt thread and simultaneous shutdown 2020-07-09 18:08:05 +03:00
hvlad
e23273d615 This should fix bug CORE-6346 : New connection to the server hangs 2020-07-08 18:24:31 +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
Dmitry Yemanov
34cb7c8c25 Refactoring: simplify the rescheduling usage 2020-06-03 09:44:01 +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
c31517b4c7 Refactored the global objects to be managed from a single place, this also removes code duplication 2020-04-16 17:34:33 +03:00
Adriano dos Santos Fernandes
471cc13ddc Fixed CORE-6281 and CORE-6282:
- CORE-6281: Invalid timestamp errors with RDB$TIME_ZONE_UTIL.TRANSITIONS
- CORE-6282: Change type of MON$ATTACHMENTS.MON$IDLE_TIMER and MON$STATEMENTS.MON$STATEMENT_TIMER to TIMESTAMP WITH TIME ZONE
2020-04-13 15:36:09 +00:00
AlexPeshkoff
c94e45bd6f Fixed CORE-5364: gfix -online normal <db> (being issued in window #1) does not produce error when there is sysdba attachment in window #2 2020-04-09 15:21:59 +03:00
Alex Peshkoff
2db2dc94c1 Fixed CORE-6272: Failed attach to database not traced 2020-03-30 18:57:12 +03:00
hvlad
9ac2238c3d Merge branch 'query_restarts_2' 2020-03-28 12:20:04 +02:00
Adriano dos Santos Fernandes
3ee737cb20 Fixed CORE-6246 - Problem with too many number of columns in resultset. 2020-03-21 22:49:46 -03:00
Alexander Peshkov
199b0a6306
Postfix for CORE-6110: always store strings in local StatusVector's memory (#261)
* Postfix for CORE-6110: always store strings in local StatusVector's memory, i.e. no lost string args
2020-03-10 20:39:04 +03:00
hvlad
7e5b0ce6ac Fixed bug CORE-6254 : AV in engine when using SET TRANSACTION and ON TRANSACTION START trigger uses EXECUTE STATEMENT against current transaction 2020-02-20 18:32:11 +02:00
hvlad
24e4944b05 Merge branch 'master' into query_restarts_2 2020-02-13 02:04:02 +02: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
66bdb2c9c6 Fixed errors displayed in case of error in DPB bindings 2019-12-06 18:35:43 +03:00
AlexPeshkoff
0dce25ffc1 Change style of setting database compatibility in config files (docs to come later) 2019-12-06 18:35:43 +03:00
AlexPeshkoff
e8787500d7 First edition of SET BIND statement 2019-12-06 18:35:43 +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
nikolay.samofatov
059694b0b4 Improve query restarts logic so that it handles SELECT ... WITH LOCK (with single record), inserts and updates correctly 2019-08-01 10:49:45 +03:00
Dmitry Yemanov
9ab1c1ab27 Fixed a mistake 2019-05-23 18:55:36 +03:00
Adriano dos Santos Fernandes
89c09d1320 Improve some error names/constants. 2019-04-15 12:22:10 -03:00
Adriano dos Santos Fernandes
2a9f8fa60b Improvement CORE-6032 - Add DPB properties for time zone bind and decfloat configuration. 2019-04-07 11:56:02 -03:00
AlexPeshkoff
84a682bf17 Fixed some gcc8 warnings - WiP 2019-03-18 20:10:48 +03:00
Roman Simakov
bb3c2e94ec Fixed CORE-5892: SQL SECURITY DEFINER context is not properly evaluated for monitoring tables (#196)
* Now we take into account the call hierarchy when use SQL SECURITY
option.
Added new context variable in SYSTEM namespace - EFFICIENT_USER which is
returns user name in which context a code works.
We change efficient user before call procedure and function, fetch a
record from selective procedure and before execute a trigger.

* Renamed new context variable to EFFECTIVE_USER. Fixed nested calls.

* Improved error messages to print effective user when there is no permission.

* Added description of new context variable EFFECTIVE_USER. Improved description of SQL SECURITY clause.
2019-03-18 14:17:02 +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
Dmitry Yemanov
932ca51574
Replication support (#182)
* Initial implementation of replication

* Postfixes for configuration and Windows builds

* Misc Windows adjustments

* Forgotten changes from prior commits

* Last round (fingers crossed) of fixing the Windows build

* Improve self-documentation

* Misc improvements

* Updates the docs

* More configuration

* Frontported some remaining pieces

* Installation post-fixes

* Special permission for replication
2019-01-25 12:09:01 +03:00
Dmitry Yemanov
b0f2529c3e Fixed monitoring for non-privileged users 2019-01-22 12:25:30 +03:00
Dmitry Yemanov
c349d28686 Fixed the database left attached (and the engine not unloaded) after error thrown from the beginning of the attach process (e.g. due to the engine shutdown in progress) 2019-01-17 14:53:57 +03:00
Adriano dos Santos Fernandes
050cea380e - Change MON$ TIMESTAMP fields to TIMESTAMP WITH TIME ZONE.
- Added fb_info_creation_timestamp_tz.
- Make timeouts work when server time zone is changed.
2018-11-27 23:27:52 -02:00
Adriano dos Santos Fernandes
873cd8090f Make isc_dpb_session_time_zone also define the original time zone, and make RESET reset the session time zone to the original one. 2018-11-12 13:18:00 -02:00
Adriano dos Santos Fernandes
3c4c8e781d Support for system packages and RDB$TIME_ZONE_UTIL system package implementation. 2018-11-12 13:18:00 -02:00
Adriano dos Santos Fernandes
4ea34933f0 Added isc_dpb_session_time_zone. 2018-11-12 13:18:00 -02:00
AlexPeshkoff
ef57295112 Fixed CORE-5950: Deadlock when attaching to bugchecked database 2018-10-24 17:22:58 +03:00
Dmitry Starodubov
0c275c1f3a Fixed CORE-5823: No permission for SELECT access to blob field in stored procedure. And CORE-5841: No permission for SELECT access to TABLE PLG$SRP in newer snapshot. (#170) 2018-09-17 15:59:14 +03:00
Alex Peshkoff
2cb086d431 This should fix memory leak when not fully initialized attachment killed by DBA 2018-08-31 12:55:38 +03:00
hvlad
69b9182b16 This should fix crash when not fully initialized attachment killed by DBA.
For example - sweep (it happens few times when running core_4337.fbt).
2018-08-30 20:30:52 +03:00
hvlad
96ac2145e8 Avoid crash due to executing already unloaded code (in attachmentShutdownThread).
Probably, same trick should be used in all threads, started not by Dispatcher,
which could run after its module is unloaded concurrently. So far, it looks like
Windows specific.
2018-08-26 23:24:40 +03:00
Adriano dos Santos Fernandes
a3e24613e8 Misc. 2018-08-05 22:39:28 -03:00
Vlad Khorsun
6a16e9e99b
Merge pull request #105 from red-soft-ru/read_consistency
Read consistency
2018-07-28 22:36:13 +03:00
hvlad
edce1bd1bc This should fix bug CORE-5844 : Firebird freeze for new connections 2018-07-26 11:12:21 +03:00
hvlad
ca71a54609 Merge branch 'master' into read_consistency 2018-07-16 16:16:22 +03:00
hvlad
0173d55597 Restart requests only if concurrent transaction is committed.
Format code a bit.
2018-07-16 15:32:28 +03:00
hvlad
ce39c96274 Remove commented out code. 2018-07-11 01:14:54 +03:00
hvlad
90e2b3035c Fixed crash when run test bugs.core_5329 in Classic mode using debug build. 2018-07-11 01:09:50 +03:00