alexpeshkoff
c14a1210b0
Work in progress on CORE-3632: make all file descriptors, opened by firebird, close on exec()
2014-12-17 14:31:02 +00:00
alexpeshkoff
255b4ff855
Fixed CORE-4571: Can't select from table with ICU column when database (.FDB) is created on LINUX with icu 4.2.1 and then copied to WINDOWS
2014-12-16 14:39:04 +00:00
asfernandes
0463754347
Misc.
2014-10-25 18:39:45 +00:00
alexpeshkoff
1f83c3b1ae
Fixed CORE-4582: Within linger period one can not change some database properties
2014-10-16 11:31:48 +00:00
asfernandes
69c4a3e5ae
Remove obsolete header file.
2014-10-15 15:43:32 +00:00
asfernandes
c642ddca82
Misc.
2014-10-12 02:25:02 +00:00
hvlad
c3a181148a
Fixed bug CORE-4576 : Cache Writer thread could not start
2014-10-10 10:12:23 +00:00
alexpeshkoff
ff3eb6e71e
Fixed use of encrypted database for users mapping
2014-10-09 15:25:39 +00:00
dimitr
7ad1fa43a3
Refactored cache shutdown. This should also fix CORE-4568: Server may crash while disconnecting from the database under load.
2014-10-04 20:10:14 +00:00
alexpeshkoff
5ccc32e0ed
Better place for trace-related constants, thanks to Vlad
2014-09-30 15:04:14 +00:00
alexpeshkoff
f5645faaa0
Fixed windows build
2014-09-30 14:21:44 +00:00
alexpeshkoff
ba62ee9947
Make it build on windows, work in progress - boot build is working
2014-09-29 17:24:30 +00:00
alexpeshkoff
153de0f271
Language independent API
2014-09-29 11:03:47 +00:00
hvlad
e56788a0e2
Improvement CORE-4562 : Split all validation messages on critical and minor ones
2014-09-28 09:43:57 +00:00
alexpeshkoff
2a293c2691
Implemented CORE-4538: Access rights for CREATE DATABASE operator
2014-09-02 16:55:14 +00:00
dimitr
b742803ebf
Refactored the shared cache checks. Optimized the shared counter for SS.
2014-09-01 13:19:53 +00:00
alexpeshkoff
d513daa574
Divide IStatus information into 3 parts: errors, warnings and completion code.
...
Errors and warnings are processed in IStatus independently. Completion code
is moved away from IStatus and returned directly by appropriate functions.
Replaced isSuccess() with more generic function getStatus(), which sets
appropriate bits in returned value when errors/warnings are present.
Also use same style when returning bytes' array and it's length in different
interfaces.
2014-08-27 09:24:30 +00:00
dimitr
0fa3945f6a
Corrections for the prior commit:Explicitly distinguish between thread handle and thread id. Return LWP as thread id on Linux.
2014-08-15 14:59:38 +00:00
dimitr
36af3d8cb2
Cleanup and small refactoring to avoid redundancy.
2014-08-15 14:19:02 +00:00
alexpeshkoff
900fb824fe
Fixed CORE-4505: Use of named cursor fails if statement was not executed. Should also fix CORE-4489, but I cannot check.
2014-07-31 11:43:38 +00:00
dimitr
6199136792
Refactored database monitoring, made its handling attachment bound. This should make deadlocks impossible, as well as avoid blocking worker connections while the monitoring request is processed.
2014-07-31 08:56:53 +00:00
alexpeshkoff
532181a7f9
Renamed as suggested by Nickolay and Dmitry
2014-07-28 13:01:10 +00:00
alexpeshkoff
4bdc2a3e19
Replaced macro FB_ALIGN with function fbAlign, minor related cleanup
2014-07-24 06:41:38 +00:00
hvlad
1042e09739
Correction
2014-07-18 12:42:36 +00:00
hvlad
d14c19107d
Avoid races (and AV as result) when two attachments starts to use temporary page space simultaneously.
2014-07-18 12:24:30 +00:00
skidder
7c743fc291
Fix build warnings
2014-07-17 18:48:46 +00:00
asfernandes
c35228c0ee
Misc.
2014-07-05 18:36:54 +00:00
alexpeshkoff
a9721f18e0
Added first parameter IStatus* to a lot of functions in API interfaces
2014-07-02 12:57:12 +00:00
alexpeshkoff
69475936c8
Fixed deadlock privately reported by Dmitry Yemanov
2014-06-23 11:17:25 +00:00
asfernandes
08f3a00cb0
Misc.
2014-06-20 02:28:22 +00:00
alexpeshkoff
34388fdf26
Totally misc - we had too many things called "init" in jrd.cpp
2014-06-19 14:35:56 +00:00
dimitr
153b06b2fd
Minor structure changes.
2014-06-13 16:28:22 +00:00
dimitr
bfc9a9c929
Frontported CORE-3305: "BLOB not found" error after creation/altering of the invalid trigger.
2014-06-13 11:28:33 +00:00
hvlad
759bf6a592
Front ported fix for bug CORE-4444 : Engine could hung and block all attachments in out of disk space condition during physical backup
2014-06-10 09:31:35 +00:00
alexpeshkoff
6a2016235a
Fixed CORE-4435: After calling release() for attachment to database (instead detach) in embedded mode attachment remains active forever (and some cleanup re. reference counters)
2014-06-10 07:13:34 +00:00
hvlad
6a806677fd
Front ported:
...
1. Improvement CORE-4431 : Reduce contention for allocation table lock while database is in stalled physical backup state
2. Improvement CORE-4432 : Let attachments to not block others when allocation table is read first time
3. On Windows, file can not be deleted while system writes cached data into it, even if file is not open by anyone.
Therefore flush delta file implicitly before closing it.
2014-05-16 12:07:08 +00:00
asfernandes
40b38014e4
Misc.
2014-05-08 23:26:40 +00:00
alexpeshkoff
d83d4d084a
Fixed a bug, privately reported by Pavel Zotov - segfault when closing trace
2014-05-06 12:25:35 +00:00
alexpeshkoff
9bd0939f09
Implemented CORE-1377: Add an ability to change role without reconnecting to database
2014-04-30 15:12:12 +00:00
alexpeshkoff
a98e565571
Fixed CORE-4303: Possible races while Service destruction, related code cleanup
2014-04-25 10:59:34 +00:00
dimitr
62405ad22f
Fixed ON DISCONNECT triggers I accidentally broke more than a year ago.
2014-04-20 10:09:05 +00:00
asfernandes
913c435667
Misc.
2014-04-19 21:36:55 +00:00
alexpeshkoff
58ec2954c1
Fixed CORE-4394: Cursor not found error when using legacy API
2014-04-18 12:08:17 +00:00
alexpeshkoff
5bfe0dfa97
Fixed some errors in mapping code, reported by Vlad privately, when using serverwide auth plugin
2014-04-15 12:18:28 +00:00
dimitr
7c540ae0db
1) Prevent shutdown/cancellation for system attachments.
...
2) Fixed incorrect generation of attachment IDs causing a hangup during gfix -mode read_only.
2014-04-14 15:27:27 +00:00
asfernandes
8608223f53
Misc.
2014-04-13 01:42:10 +00:00
alexpeshkoff
82a3a54896
Fixed mapping errors reported by Claudio & Treeve
2014-04-10 16:43:10 +00:00
alexpeshkoff
8b28dd1da9
Implemented improvement CORE-4387: IStatement::execute() and IAttachment::execute() functions should return on error pointer to old transaction interface
2014-04-08 13:45:21 +00:00
hvlad
a0ddc6771a
Patch by Alex (re.CORE-3370 and deadlock in user mapping code)
2014-04-08 07:15:46 +00:00
alexpeshkoff
a66ac62755
Resolved first problem, reported by Vlad privately - it was bad idea to try to load cache from database which is not created yet
2014-04-07 09:28:08 +00:00
robocop
c90d9d4547
Misc.
2014-04-05 01:44:32 +00:00
alexpeshkoff
20e846369e
Implemented CORE-3370: Resolve additional aspects of multiple security databases from services and cross-database requests POV (mapping names)
2014-04-04 15:57:18 +00:00
robocop
fa2f26b645
A bit less repetitive code.
2014-04-04 07:51:24 +00:00
robocop
29e36dc4f3
The 0th generator becomes unnamed. Only internal requests can access it (zero length names are not allowed from outside). RDB$GENERATORS is no longer a reserved name.System generators cannot be changed by user requests, but can be queried with gen_id(g, 0) if the permissions (ACL) allow that. We don't track dependencies on sys generators, it's not necessary.
2014-04-04 06:39:09 +00:00
robocop
58654b05cf
Try to drop as many shadow files as possible.
2014-03-26 19:10:54 +00:00
robocop
66af445e2e
Misc.
2014-03-22 20:51:24 +00:00
hvlad
d125f5617a
Fixed warning by PVS-Studio
...
Review is appreciated
2014-02-25 14:18:32 +00:00
alexpeshkoff
26b090c93b
Added access to configuration interfaces from IMaster and support for getting configured directories
2014-02-12 11:20:55 +00:00
asfernandes
48ea42f1c0
Misc.
2014-01-19 20:38:16 +00:00
alexpeshkoff
411c3718ca
Fixed CORE-4286: "Statement already has a cursor assigned" error when trying to execute another SQL statement using different cursor name. Moved method setCursorName() from IStatement to IResultSet - it was my fault when splitting cursor from statement.
2014-01-17 12:33:23 +00:00
hvlad
5e3c596545
Fixed bug CORE-4309 : 'Cache Writer' record in MON$ATTACHMENTS dissapear when delete other connection that running some 'heavy update' on big table via delete from MON$ATTACHMENTS
2014-01-11 09:10:44 +00:00
robocop
2810026363
Misc and warnings.
2013-12-29 00:35:50 +00: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
9c9dd72977
Misc.
2013-11-24 03:21:11 +00:00
alexpeshkoff
4a8fe5a0de
Implemented CORE-4273: Per-database control on access to database from remote stations
2013-11-22 15:21:11 +00:00
alexpeshkoff
c2efe1945a
Enable linger only in multiuser server mode. This should also fix windows build.
2013-11-21 07:31:30 +00:00
alexpeshkoff
83db69c849
Fixed new gcc 4.7 warning "deleting object of polymorphic class" in many places. Adjusted use of interface types (reference counted vs just vesrioned). Avoided some hacks caused by badly chosen interface type.
2013-11-18 12:20:23 +00:00
dimitr
8033131d18
Fixed possible server crash + minor refactoring.
2013-11-17 14:24:17 +00:00
alexpeshkoff
120b10a78a
Implemented CORE-4263: Database linger
2013-11-14 16:16:24 +00:00
dimitr
489480b774
Complementary patch for one of my prior commits (forced rollbacks should go through the TIP).
2013-11-13 15:39:32 +00:00
hvlad
37344e12bf
Fixed bug CORE-4260 : Bugcheck 165 (cannot find tip page) happens if engine crashed right after CREATE DATABASE
2013-11-11 14:44:52 +00:00
hvlad
34b99e6f3a
Don't force flush for database which creation is not complete.
2013-11-07 10:32:35 +00:00
hvlad
424fb1d75f
Avoid hack in create_database when we have FW=ON at header page disk image and FW=OFF in memory structures and in fact database file is created in FW=OFF mode.
...
Instead of setting flag on header page when it is formatted for the first usage, explicitly set FW=ON after database creation is complete, if there was no isc_dpb_force_write in DPB.
2013-11-07 10:06:36 +00:00
alexpeshkoff
ee748b192d
Make code (hopefully) better readable
2013-11-01 14:18:30 +00:00
alexpeshkoff
bd65abc1aa
Cleanup
2013-10-31 15:10:26 +00:00
alexpeshkoff
dd73db4494
Fixed CORE-4200: An uncommitted select of the pseudo table sec$users blocks new database connections
2013-10-30 12:11:40 +00:00
hvlad
88a470d22c
Fixed two more reasons for CORE-4235 : Deadlock is possible while accessing the monitoring tables under concurrent load.
2013-10-19 08:09:51 +00:00
alexpeshkoff
5a054cca16
Fix found by Jim Starkey man-in-themiddle attack on ATTACH packet.
...
That packet may contain database name, command line for service and/or some other important and critical information.
To avoid such attack wire encryption is started before attaching database or service manager, right after connect.
Also should fix a number of issues found in Alpha1 regarding services attach.
2013-10-16 12:53:04 +00:00
dimitr
c235774864
Attempted to fix CORE-4235: Deadlock is possible while accessing the monitoring tables under concurrent load.
...
Refactored the list of reference counted attachments to be useful in other cases.
Some minor adjustments in the monitoring code.
2013-09-22 16:10:06 +00:00
dimitr
3821ec9d41
Implemented CORE-4218 (database owner in MON$DATABASE) and CORE-4222 (auth method in MON$ATTACHMENTS).
2013-09-18 09:37:13 +00:00
alexpeshkoff
7c243418a9
Cleanup - removed unused (always NULL) field tra_sibling from transaction class in engine
2013-09-13 12:21:51 +00:00
dimitr
c9cc5294da
Avoid rescheduling if we're kindly asked to stop immediately.
2013-09-04 17:52:13 +00:00
dimitr
c367d1f958
Cleanup and use the explicit rollback via TIP for all kinds of forced disconnections.
2013-09-04 17:46:09 +00:00
dimitr
01b81b1edb
Code simplification and some corrections.
2013-08-19 18:50:28 +00:00
alexpeshkoff
1eace34614
CORE-3944 - fixed a bug in my previous commit, noticed by Adriano
2013-08-19 08:17:37 +00:00
alexpeshkoff
a8f8465366
Postfix for CORE-3935 & CORE-3944: helps avoid segfaults/deadlocks when shutting down firebird
2013-08-16 12:44:10 +00:00
asfernandes
b6a4d39596
Misc.
2013-07-06 23:11:13 +00:00
dimitr
9e8bbbdd13
Better protection against AST delivery during detaching.
2013-07-03 13:22:44 +00:00
hvlad
c12e731b6a
Fixed bug CORE-4134 : Race condition when auto-sweep is started
2013-06-29 11:32:55 +00:00
hvlad
ffa909f8d9
Fixed bug CORE-4135 : In SS sweep blocks establishment of concurrent attachments.
...
More details in tracker.
2013-06-29 11:25:07 +00:00
alexpeshkoff
7583535db5
Make dialect 3 default when creating database using OO API. Keep legacy behavior in ISC API.
2013-06-24 12:24:29 +00:00
alexpeshkoff
2a66ddf07f
Fixed assertion when restoring DB in non-existtent path with overwrite - reported privately by Dmitry
2013-06-18 09:10:09 +00:00
dimitr
0c6bc6844a
Protection against the not supported mode. I used a non-translatable error because it might be a temporary measure, time will show.
2013-06-15 14:12:25 +00:00
robocop
c0b8b68777
Misc.
2013-05-21 21:53:39 +00:00
alexpeshkoff
b9a96911ca
Avoid extra atomic operations when assigning pointer to the object with pre-incremented counter (like returned from the function) to reference-counted pointer holder
2013-04-17 11:16:06 +00:00
alexpeshkoff
6f5fedec9a
Fixes related with CORE-3993
2013-04-17 08:04:02 +00:00
alexpeshkoff
3746843930
Postfix for CORE-3935 and CORE-3993: avoid opening same database file twice
2013-04-15 16:51:20 +00:00
dimitr
551e2416c6
Add interface support for scrollable DSQL cursors. Implementation will follow later.
2013-04-13 07:11:58 +00:00
asfernandes
e0567463bf
Revert external routines to request-based (*) code, but now using a totally different internal approach.
...
* This is not ideal IMO, but much more easier to currently support stack traces, and domain's defaults and validations.
2013-04-11 15:44:17 +00:00
alexpeshkoff
8780552b94
Added support for changing configuration (client and embedded) from API
2013-04-04 13:17:57 +00:00