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

945 Commits

Author SHA1 Message Date
dimitr
4dae12ccce Added counter for record refetches (aka repeated reads). 2014-08-27 14:51:51 +00:00
dimitr
a79ff180da Added specific error code for read conflicts in RC NO_REC_VER mode. Added missing conflict counting. 2014-08-27 12:56:36 +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
36af3d8cb2 Cleanup and small refactoring to avoid redundancy. 2014-08-15 14:19:02 +00:00
alexpeshkoff
8b94f35e0f Fixed Mac build 2014-08-12 15:10:52 +00:00
asfernandes
5ffc936053 Misc. 2014-08-06 02:12:01 +00:00
dimitr
a8b1dba646 Refactored RuntimeStatistics internals. Added more record-level performance counters. 2014-08-05 08:46:09 +00:00
asfernandes
409a27841b Improvement CORE-4487 - Maintain package body after ALTER/RECREATE PACKAGE. 2014-07-31 16:30:12 +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
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
alexpeshkoff
1057ad3a9a Fixed build on linux64 - it was really bad that behavior of macro FB_ALIGN depended upon alignment parameter type 2014-07-21 08:10:53 +00:00
asfernandes
6488dfed7f Misc. 2014-07-18 01:52:24 +00:00
skidder
ae02639968 Fix GCC build broken with last commit 2014-07-17 19:17:11 +00:00
skidder
7c743fc291 Fix build warnings 2014-07-17 18:48:46 +00:00
roman-simakov
573e93e5a6 Fixed CORE-735: User rights for metadata changes.
We check DDL in DDL nodes and skip at vio level. vio level still exists for direct metadata editing.
2014-07-08 07:35:27 +00:00
alexpeshkoff
2b066db7ab Fixed CORE-4478: Failure to load provider/plugin not reported 2014-07-04 08:25:49 +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
adb0480c9b Fixed CORE-4469: Add field in SEC$USERS reflecting whether a user has RDB$ADMIN role in security database 2014-06-28 09:58:02 +00:00
alexpeshkoff
26319333e3 Renamed mapping-related tables as was discussed in devel 2014-06-26 09:37:55 +00:00
alexpeshkoff
a38c2ab324 Fixed CORE-4464: Duplicate tags for CREATE/ALTER USER not handled correctly 2014-06-24 06:58:05 +00:00
alexpeshkoff
685b5f1369 Implemented CORE-4462 (Make it possible to restore compressed .nbk files without explicitly decompressing them) for POSIX systems 2014-06-17 10:27:59 +00:00
dimitr
0cace38015 2014-06-10 13:32:42 +00:00
alexpeshkoff
553860f97a Avoid loading <string> by ICU 2014-06-06 10:29:23 +00:00
alexpeshkoff
befcba7105 Fixed issues related to encoding of switch value in gbak/nbackup - thanks to Adriano. Added support for -SKIP_DATA to services. 2014-05-21 13:11:43 +00:00
asfernandes
3f8de25fcc Feature CORE-4403 - Allow referencing cursors as record variables in PSQL.
Improvement CORE-4434 - Extend the use of colon prefix for read/assignment OLD/NEW fields and assignment to variables.
2014-05-19 19:06:47 +00:00
robocop
a6133d02a8 Replace "unknown token" by specific messages. 2014-05-03 00:27:47 +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
10346ce4bc Fixed CORE-2119: Use entries in restrict list of ExternalFileAccess parameter to mangle filenames with relative path, also fixed assertion and diagnostics related to EXTERNAL FILE tables 2014-04-22 13:37:14 +00:00
alexpeshkoff
8c39e4563c Enhanced diagnostics in authentication mapping 2014-04-18 15:33:11 +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
robocop
de7ed79414 Fixing several issues with my previous commit:
Use increment [by], no step.
Enable again code in ini.epp because it's needed when restoring (but not when creating gens directly in a new db).
Gbak has code to fix system generators and we should allow it.
Nbackup cannot update the history generator when doing a backup.
Field name renamed to rdb$generator_increment.
2014-04-09 07:17:34 +00:00
robocop
cadd8accc4 Implemented STEP for generators/sequences and took the opportunity to make the blrOp param const. Please rebuild the databases. 2014-04-09 02:28:38 +00:00
robocop
19bc83be9d When I tried to modify a system domain, I got the confusing message "create domain failed", so I tried to improve the feedback to the user. 2014-04-04 20:30:03 +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
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
966a2c8db3 Do not take explicit locks on virtual/sys/temp tables using TPBs. 2014-03-28 22:00:05 +00:00
asfernandes
6d3e7f295e Fixed CORE-4373 - Duplicate names in package are not checked. 2014-03-26 16:55:57 +00:00
alexpeshkoff
bc6ef02abd Make functions in IMessageMetadata non-const like the rest of interfaces 2014-03-12 09:32:10 +00:00
alexpeshkoff
a596c0c22e This fixes linux build and hopefully does not break windows & darwin 2014-03-03 09:24:44 +00:00
hvlad
c5e98f8b2b Fixed Windows build 2014-02-28 15:03:34 +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
alexpeshkoff
b3c65c98b9 Renamed it once more 2014-01-27 16:47:43 +00:00
asfernandes
9350f941dc Fixed CORE-4322 - Engine crashes when use aggregate or window functions in recursive query. Vlad, please review. 2014-01-27 01:09:32 +00:00
alexpeshkoff
00971c3941 Changes in IUtl, suggested by Adriano & Dmitry 2014-01-20 14:36:08 +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
alexpeshkoff
949defe5e6 Implemented CORE-4317: Make ISQL use new object API with 32-bit length for object sizes (messages, SQL statements, etc.)
Implementation also includes changes in GPRE, but this utility is not complete - only commands, used in ISQL,
are working in code generator for new API.
New interface IUtl is added - it performs tasks, related with database objects (attachment, transaction, etc.),
but not requiring routing in YValve, i.e. client only tasks.
2014-01-15 13:02:08 +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
dimitr
a149317d89 Improvement CORE-3881: Extend the error reported for index/constraint violations to include the problematic key value. 2014-01-10 07:49:51 +00:00
alexpeshkoff
d0a916138f Fixed CORE-4298: fbsvcmgr doesn't recognise sts_record_versions and other sts switches 2013-12-19 13:48:17 +00:00
alexpeshkoff
64b4f89d43 Changed syntax of user definition operators according to discussion in devel
Added virtual table sec$user_attributes with parsed user's attributes
Implemented CORE-2004: Ability to alter user inactive/active
Implemented CORE-2063: Added CREATE OR ALTER USER operator
Implemented CORE-3931: Ability to set comment for the user
2013-12-17 14:20:25 +00:00
alexpeshkoff
40de1dabb0 Implemented CORE-4290: Extensible property support which can add properties (name-value pairs) to users 2013-12-06 17:10:10 +00:00
alexpeshkoff
ab1d102950 Postfix for CORE-4273: No need breaking old apps using isc_dpb_gsec_attach 2013-11-22 15:23:48 +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
1b38b028b8 Scale of variable is signed value 2013-11-22 07:44:22 +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
alexpeshkoff
120b10a78a Implemented CORE-4263: Database linger 2013-11-14 16:16:24 +00:00
alexpeshkoff
9dbdab9d28 Enhanced diags for unprepared statement 2013-11-05 11:54:06 +00:00
alexpeshkoff
180cc94102 Misc 2013-10-29 06:17:33 +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
alexpeshkoff
2d1792d53d This should help cross-compile for Android 2013-09-26 07:42:13 +00:00
dimitr
5c91efe070 Implemented CORE-4218 (database owner in MON$DATABASE) and CORE-4222 (auth method in MON$ATTACHMENTS). 2013-09-18 09:37:59 +00:00
dimitr
befd3a3e60 Improved the error reporting. 2013-09-04 07:20:56 +00:00
dimitr
69961e9bae Fixed CORE-4164: Owner name is missing for generators/exceptions restored from a backup.
Also propagated the sysflag/owner/secclass assignment and validation to all object types and wiped out the duplicating system triggers.
Warning: testing is required!
2013-08-04 15:19:31 +00:00
asfernandes
2cadfdb41c Update generated file. 2013-07-13 20:50:39 +00:00
dimitr
0c9a9fdf4c Made the ALTER SEQUENCE RESTART behavior standard compliant. 2013-06-18 18:22:31 +00:00
asfernandes
768b79c361 Improvements and corrections to message builder and UDR. 2013-06-18 15:50:48 +00:00
asfernandes
f8b57e7ee6 Correct UDR headers for when Firebird namespace is not 'used'. 2013-06-09 02:30:17 +00:00
asfernandes
fc9b47b63d UDR C++ interface and examples improvements. 2013-06-06 16:05:02 +00:00
asfernandes
cf42eaf4d5 Make the master interface available in UDR. 2013-05-23 15:53:06 +00:00
asfernandes
bdbd54b81e Improve external triggers messages to work by field name (instead of field order). 2013-05-22 15:44:05 +00:00
asfernandes
d4a48a4164 Misc. 2013-05-15 15:39:40 +00:00
asfernandes
f91bc11492 Correction. 2013-04-21 01:52:37 +00:00
dimitr
551e2416c6 Add interface support for scrollable DSQL cursors. Implementation will follow later. 2013-04-13 07:11:58 +00:00
alexpeshkoff
8780552b94 Added support for changing configuration (client and embedded) from API 2013-04-04 13:17:57 +00:00
asfernandes
26ab241631 Misc. 2013-03-30 02:31:03 +00:00
asfernandes
bf6c2c1dfe Correction. 2013-03-29 23:25:28 +00:00
alexpeshkoff
697ef0c127 Avoid reusing old dpb codes as it was suggested some time ago in devel - looks like we have enough of them 2013-03-29 07:39:15 +00:00
alexpeshkoff
6a48bd8e14 Fixed problems when config file is missing
Make config manager and it's external interfaces work with 64-bit integers
Added support for boolean values (like 'true' & 'yes') to external config interfaces
Added support for kmg multipliers to config manager
2013-03-28 13:43:18 +00:00
alexpeshkoff
e4356e4b46 Added operator include to config files 2013-03-27 11:45:02 +00:00
asfernandes
78c168c78e Work in progress standardizing the external engines API. 2013-03-25 15:59:38 +00:00
asfernandes
ee953572eb Work in progress standardizing the external engines API. 2013-03-25 15:34:15 +00:00
asfernandes
b9bc308a72 Work in progress fixing external triggers. 2013-03-23 21:12:27 +00:00
alexpeshkoff
afa0770781 1. Fixed broken by me a few time ago server shutdown.
2. Implemented prototype of TLS-based debugging helper holding information about 'What does firebird do now?"
   Currently it's more or less ready for use with JAttachment::release().
2013-03-15 16:37:32 +00:00
asfernandes
09c26be42d Update generated file. 2013-03-07 15:29:22 +00:00
asfernandes
48fd751c6e Fixing FB_MESSAGE macro and external functions and procedures.
Isolate external routines them from request-based ones.
2013-03-04 01:42:58 +00:00
asfernandes
0d299d455a Remove FbMessage struct from the API.
This struct lost its main value (group various blr-related properties in a single parameter).
And since openCursor/fetch already split the message/buffer, it does not make sense anymore to have it.
2013-02-26 03:42:19 +00:00
asfernandes
53d4d58113 Change message buffers type to void*. It adds some casts, but avoid them in users' code. 2013-02-23 03:09:17 +00:00
alexpeshkoff
5ecced8462 Better names for statement's flags 2013-02-22 07:24:46 +00:00
alexpeshkoff
33b4336028 Enhancements of IMetadataBuilder 2013-02-21 14:59:24 +00:00
asfernandes
1d1f81bdc9 Replaced ICoerceMetadata with IMetadataBuilder and add a builder creator method in IMaster.
This change is to make applications who define they own message format (without metadata inspection and coercion) to easily create its IMessageMetadata.
2013-02-20 19:41:01 +00:00
asfernandes
fc9d355bf9 Misc. 2013-02-20 19:40:44 +00:00
alexpeshkoff
ba9413b26a Add IStatement::getFlags() to help user make a solution what to do with SQL statement 2013-02-19 11:20:49 +00:00
alexpeshkoff
7ab231a713 A number of fixes related with ICoerceMetadata interface - thanks to Adriano 2013-02-18 11:06:52 +00:00
asfernandes
ddc4d4eac3 Misc. 2013-02-17 23:06:40 +00:00
alexpeshkoff
fc12495d0e Modified IStatement interface in our API:
1. Never allocate empty statement - always use att->prepare() to create statement interface
2. Separated IStatement into 2 parts - statement itself and resultset.
3. Added stmt->openCursor() (and att->openCursor() for unprepared statements) to create IResultSet.
4. Always use IMessageMetadata (former IParametersMetadata) to pass message fromat info from client,
   therefore avoiding need in BLR generation in client applications.
2013-02-17 12:08:53 +00:00
asfernandes
491fdd82b2 Unifying the external engines API with the new ones. 2013-02-15 02:48:54 +00:00
asfernandes
dc8e42e9bb Migrate external triggers to the new message-based style. 2013-01-29 01:21:32 +00:00
alexpeshkoff
8be83d5844 misc 2013-01-08 15:03:01 +00:00