robocop
5f6113f63b
Change param type from SLONG* to UCHAR* because we gain nothing with the old declaration, except forced casts.
2008-12-22 10:06:43 +00:00
robocop
2fadc0e456
Style.
2008-12-22 09:00:05 +00:00
robocop
e63b46bb9c
There's no need to check whether a pointer is null before applying delete or delete[].
2008-12-21 03:50:29 +00:00
robocop
95292d1731
Style.
2008-12-20 08:12:19 +00:00
dimitr
2b87e94242
Use explicit iterators instead of the implicit (built-in) ones due to the thread-safety requirements.
...
This change affects GenericMap only, as it's used globally in a few places and we have a proven crash there.
I have a more complete solution (total cleanup of default accessors from BePlusTree and SparseBitmap) in my local tree (thanks to Dmitry Kovalenko), but it's incomplete (requires more changes inside the engine) and IMHO risky (~20 core modules are affected), so I'd like to defer finalization of this cleanup till v3.0.
All objects of these types seem being protected by dbb_sync, so they shouldn't cause us any problems currently.
2008-12-19 14:57:01 +00:00
asfernandes
d03b6ede7f
Misc
2008-12-18 01:24:58 +00:00
asfernandes
84dfa0e092
Fixed CORE-316 - Can't open database with MBCS/Extended characters in name.
...
Documentation soon.
2008-12-15 14:59:34 +00:00
robocop
511c7eb7d8
Promote thread_data* as function argument.
2008-12-14 10:19:27 +00:00
robocop
e4650d5027
Promote thread_data* as function argument. Only exception where both tdbb and dbb were left together as arguments is nbak.cpp's call to CCH_rollover_to_shadow to avoid any side effect in the changed code, but anyway, that function calls SDW_rollover_to_shadow that takes the dbb from the tdbb and not explicitly.
2008-12-14 09:28:25 +00:00
dimitr
40d041d628
Fixed the issue reported by Philippe. To be backported after more testing.
2008-12-12 16:04:57 +00:00
dimitr
25dc79dce2
Fixed CORE-2209: Very slow procesing of the monitoring requests under high load and blocking other activity during that time.
...
The new code is expected to work 100-200 times faster. To be field-tested.
Implemented CORE-2233: Allow non-SYSDBA users to monitor not only their current attachment but other their attachments as well.
Sorry for mixing two fixes inside a single commit, but they're somewhat related.
2008-12-11 11:58:50 +00:00
asfernandes
8fbf0e8e8c
Remove trailing spaces (.cpp files)
2008-12-05 01:20:14 +00:00
hvlad
36e1866a1d
Few fixes to correctly close brocken external connection.
...
Ability to stop execution of external query when :
- engine is shutted down
- database is shutted down
- local statement is cancelled
- local connection is cancelled
2008-11-27 23:06:48 +00:00
hvlad
62ca23fa58
Fixed bug CORE-2183 : Error in ExtDS when server shutdown started with opened Execute Statement
2008-11-17 12:30:28 +00:00
asfernandes
d8855e2e47
Misc
2008-11-14 14:15:37 +00:00
alexpeshkoff
e9162ee2f2
Fixed CORE-2179: Deadlock when trying to shutdown server with opened ExecuteStatement
2008-11-12 14:32:18 +00:00
dimitr
8e72ece026
Uncouple Mutex and RefMutex. This resolves the circular dependency: "AtomicCounter->Mutex->RefCounted->AtomicCounter" and thus enables all non-x86 POSIX builds.
2008-10-19 11:41:43 +00:00
roman-simakov
8edd7733d4
Fixed authentication bug with sysdba login written in lowercase letters.
2008-10-14 10:05:10 +00:00
hvlad
a3d266ba83
Fixed bug CORE-2018 : Only one client can access a readonly database
2008-10-14 09:10:36 +00:00
alexpeshkoff
e79f55708d
1. Cleanup - use Firebird::Semaphore instead of local events, removed code
...
related with local events from isc_sync.cpp.
2. Cleanup - removed unused parameter 'number of events' from ISC_event_wait()
and two unused parameters from ISC_event_init().
3. Added SYSV-semaphore based implementation of IPC to isc_sync.cpp.
This should fix CORE-2102: Firebird 2.5 does not build on MacOS (Darwin).
4. Fixed use of posic CS without (x)inetd (i.e. fb_inet_server -s).
5. Fixed (to be reviewed by Dmitry) recovery after some process death in lock manager.
2008-10-10 15:58:05 +00:00
hvlad
97bf925499
Use fb_utils::init_status instead of status[0] = 0
2008-09-10 11:41:36 +00:00
alexpeshkoff
5be80cc7f5
Restored missing line - thanks to Claudio
2008-09-01 08:56:17 +00:00
asfernandes
96194d08ba
Misc
2008-08-31 01:10:41 +00:00
asfernandes
8497cd4307
Misc
2008-08-28 15:39:51 +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
asfernandes
8f9b451ce9
Rework of ib_util changes. Dynamically load it in the engine and inform callback functions to alloc and free memory. Allocate memory from the default pool.
2008-07-12 21:23:42 +00:00
robocop
a302401357
Misc.
2008-07-09 12:34:43 +00:00
dimitr
609f466ad3
1) Fixed the layering, as dbb_lock shouldn't belong to PIO.
...
2) Passed tdbb to some engine routines that were dealing with TLS.
3) Got rid of fil_length and some minor cleanup.
2008-07-09 08:40:31 +00:00
robocop
534abf1560
const
2008-07-08 06:44:53 +00:00
alexpeshkoff
81579840ab
Renamed function
2008-07-07 13:33:28 +00:00
alexpeshkoff
7fe33f3e5d
Fixed CORE-1972: Non-SYSDBA user can change FW mode of database
2008-07-07 10:42:17 +00:00
asfernandes
45786da3bc
Misc
2008-07-06 16:42:52 +00:00
robocop
80ba24a605
Fixing the Win32 build after Alex' changes.
2008-07-06 11:03:09 +00:00
alexpeshkoff
5ac5869661
CORE-1964 - stop vararg mess when reporting errors. Use special class for it. More (ERR_post cleanup) to come.
2008-07-03 12:02:54 +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
hvlad
81c1e2e604
Correct error in my previous commit.
2008-06-24 12:02:29 +00:00
hvlad
ac03047011
1. Make work with databases_mutex more consistent (lock\unlock it at the same scope of code).
...
2. Restore accidentally broken pause when attempt to brute-force login\pwd is detected
2008-06-24 11:56:17 +00:00
asfernandes
af1d955da6
Improvement CORE-1937 - Detect (instead of crash) FREE_IT UDFs that return pointer not allocated by ib_util_malloc
2008-06-14 22:16:40 +00:00
dimitr
9a9d48c45d
Restored the missing (wrongly cleaned up) parts of the thread priority logic (still useful for the current SS).
2008-06-09 08:10:11 +00:00
dimitr
ec1d5a91b4
1) Encapsulated the lock manager and integrated it into the engine.
...
2) Replaced "early" (before LM) checkouts with "late" (inside LM) ones.
3) Removed the mutex protection that's no longer necessary.
Note: the new LM contains some future code (currently commented out) which will be enabled and tested after the Alpha release.
2008-06-07 09:08:16 +00:00
dimitr
bff84e9e7a
Cleanup.
2008-06-06 15:55:36 +00:00
alexpeshkoff
b85be10e63
Fixed static variables in verify_database_name() - thanks to Claudio
2008-05-21 08:40:58 +00:00
alexpeshkoff
17061d4280
Make fb_cancel_operation() behave better when enable/disable command is used
2008-05-12 13:36:22 +00:00
hvlad
422338e5e3
Lock att_mutex in Attachment's constructor
2008-05-08 07:45:19 +00:00
dimitr
2c7acdef79
Cleanup of the disabled/unused code.
2008-05-07 10:39:24 +00:00
dimitr
7edcee435b
1) Turn on FW on all platforms by default.
...
2) Cleanup/misc.
2008-05-07 05:18:09 +00:00
dimitr
0a9e8c8382
Implemented CORE-1751. The changes include:
...
1) Make memory counters aggregated.
2) Add attachment pool and allocate appropriate resources out of this pool.
3) Always release attachments explicitly (via destructor).
4) Always delete user requests prior to attachment deletion.
5) Introduce memory usage counters per every monitoring object.
6) Misc refactoring.
Some pieces are still incomplete (although everything basically works), but I'd like to get feedback and testing sooner rather than later.
2008-05-06 08:46:39 +00:00
asfernandes
b30236303d
Misc
2008-05-05 02:22:53 +00:00
hvlad
a8d9303dc7
Restore att_mutex blocking logic as prior commit broked EXECUTE STATEMENT. Add extra mt protection in cancel_attachments.
2008-05-04 21:24:33 +00:00
alexpeshkoff
7ff8e4d2be
Fixed CORE-1879: Server uses wrong authentication method
2008-05-04 13:38:02 +00:00
hvlad
9280a572a0
Avoid long blocking of att_mutex and make sure it is always released when attachment deleted.
...
Move active requests cancellation at engine shutdown from Y-valve into engine and let them stop execution before deletion of attachments.
Make sweep run in separate thread despite of engine architecture.
2008-05-04 12:49:29 +00:00
asfernandes
59673b03e8
Misc
2008-05-03 01:58:36 +00:00
robocop
ec66e1713a
Fix indentation.
2008-05-01 11:01:10 +00:00
alexpeshkoff
0ba2ab7ea7
Make fb_cancel_operation() public API call. Related cleanup.
2008-04-29 09:55:41 +00:00
asfernandes
53a2090f65
Misc
2008-04-27 02:39:51 +00:00
robocop
83d3ddd6cb
Replace custom code by helper class ThreadStatusGuard.
2008-04-26 10:29:52 +00:00
alexpeshkoff
6e04201fa5
Fixed AV: exception may be thrown when there is no attachment at all
2008-04-24 15:11:45 +00:00
asfernandes
e18ac3cb53
Misc
2008-04-24 01:53:40 +00:00
asfernandes
a599f8a49a
Fixed problems of attachment lock in Windows - thanks to Vlad
2008-04-22 15:32:33 +00:00
alexpeshkoff
9ff2935d79
Fixed CORE-1854: Value of CURRENT_USER may be not in upper case when using unix OS auth
2008-04-21 16:18:41 +00:00
asfernandes
c416ea1621
Lock the attachment handle during API calls
2008-04-20 22:54:36 +00:00
asfernandes
d75951e8e5
Misc
2008-04-18 01:37:44 +00:00
dimitr
c255169fe9
1) Simplified the internal provider API a little.
...
2) Passed the original filename (possibly an alias) via DPB. This way it can be transmitted through the remote subsystem.
Hopefully, this should fix CORE-1105, CORE-1390 and CORE-1566 at once.
Although a better hope would be that it won't break anything else :-)
2008-04-17 14:05:44 +00:00
asfernandes
77e97a47c0
Feature requests CORE-1737 and CORE-1803:
...
1) ALTER CHARACTER SET <charset> SET DEFAULT COLLATION <collation>
2) CREATE DATABASE ... [ DEFAULT CHARACTER SET <charset> [ COLLATION <collation> ] ]
2008-04-15 02:18:38 +00:00
hvlad
d5aa346176
Make provider's registration not dependent from existance of EDS::Manager instance. Noted by Adriano.
2008-04-12 21:20:26 +00:00
robocop
bbc2c20725
Misc.
2008-04-10 09:43:31 +00:00
hvlad
fe3f8c184b
New EXECUTE STATEMENT with support of external data source implementation
2008-04-09 20:18:47 +00:00
robocop
82ab872e2e
Fix comment.
2008-04-09 12:57:22 +00:00
alexpeshkoff
b237f4ebd8
Cleanup - avoid use of SUPERCLIENT macro in files, used by utilities
...
(and in some other places too).
2008-04-08 14:18:24 +00:00
alexpeshkoff
6901cc5938
Almost misc
2008-04-07 15:26:52 +00:00
asfernandes
a73aa97269
Load ib_util.dll from the install directory, to fbembed.dll loaded with altered search path be able to find it
2008-04-04 15:59:15 +00:00
asfernandes
2723814ced
Fix the problem with ib_util.dll caused by CORE-1814
2008-04-04 15:37:48 +00:00
alexpeshkoff
97b10fd3ca
Fixed forgotten terminator - thanks to Dmitry and Adriano
2008-04-04 14:47:05 +00:00
alexpeshkoff
abcbabf448
Added message for shutdown timeout failure
2008-04-04 14:20:20 +00:00
alexpeshkoff
aafed20fe1
Fixed problems with shutting down actively running engine - related with CORE-1805.
2008-04-02 14:26:17 +00:00
asfernandes
d11b683899
Fix the pool usage
2008-03-31 01:51:18 +00:00
robocop
3de79a20c9
Fixing the damn interface.
2008-03-30 09:42:24 +00:00
hvlad
5e6a939197
Set transaction handle to NULL after successful commit or rollback
2008-03-28 09:18:39 +00:00
alexpeshkoff
cbe0217664
fixed gcc warning
2008-03-27 09:14:24 +00:00
dimitr
b87b5032ef
Changes in the TimeStamp class by Dmitry Kovalenko.
2008-03-26 10:21:04 +00:00
robocop
8270e50066
make them explicit.
2008-03-22 09:02:27 +00:00
dimitr
1f22e3e1c1
1) Added proper handle validation for dbb.
...
2) Changed dbb_sync lifestyle handling.
3) Sync'ed access to the att_long_locks.
4) Put in a temporary workaround for nbackup deadlocks.
2008-03-20 16:42:29 +00:00
dimitr
f5659c0b70
1) Major cleanup of the old-style blk and allocator-based blk_type.
...
2) Added synchronization for the JRD locks.
2008-03-19 16:19:56 +00:00
alexpeshkoff
ed25245303
Applied shutdown changes, discussed in fb-devel a week ago.
2008-03-17 16:49:47 +00:00
asfernandes
493a6eab3c
Misc
2008-03-17 02:00:16 +00:00
asfernandes
8bb723bec3
Validate (and store in tdbb) non-NULL transaction handles
2008-03-16 19:30:00 +00:00
asfernandes
c7ec88bee4
1) Created classes PreparedStatement and ResultSet
...
2) Changed EXECUTE STATEMENT to use these classes
3) Fixed CORE-1784 - Error with EXECUTE PROCEDURE inside EXECUTE STATEMENT
2008-03-13 16:37:20 +00:00
dimitr
ebad313cfd
1) Fixed CORE-1788.
...
2) Protected from other similar deadlocks.
3) Refactoring.
2008-03-13 14:20:32 +00:00
dimitr
afb970dba1
1) Cleanup.
...
2) Catch exceptions in AST routines.
2008-03-12 16:53:57 +00:00
robocop
c407e8cd0e
Make member function inline.
2008-03-12 07:16:26 +00:00
robocop
dadefcb479
Binary things are UCHAR. Let's try to fix them from the innermost layer to the outermost layer until we can fix the public interfaces.
2008-03-10 09:31:40 +00:00
asfernandes
74d8711856
Misc
2008-03-08 21:20:26 +00:00
robocop
b1b7634b3d
Since SCL_release changed meaning, it's necessary to adjust the name (SCL_release_all) and the comments.
2008-03-08 11:37:15 +00:00
asfernandes
0b6ecafe1b
1) Remove REPLAY_OSRI_API_CALLS_SUBSYSTEM code
...
2) Remove internal y-valve function INTERNAL_COMPILE_REQUEST
3) Go direct to engine internals from DSQL, without need to exit/enter the attachment lock and check exceptions in status vector
2008-03-07 15:23:21 +00:00
hvlad
7d54298dea
Fixed CORE-1775 : Improve performance of security checking
2008-03-06 13:13:31 +00:00
hvlad
23679a8b04
Fix few race conditions during metadata load and make index lock block accounting more MT safe.
2008-03-05 14:23:19 +00:00
dimitr
d597154a4b
1) Added timeout value to the shutdown API call.
...
2) Fixed the slow fbembed detach noticed by Claudio and Vlad.
3) Cleanup.
2008-03-04 13:27:02 +00:00
robocop
8888ecb544
Let's better use UCHAR for binary streams.
2008-03-04 06:03:34 +00:00
asfernandes
e88fd596d9
Let DSQL cache lock logic in SS too - per Dmitry request
2008-03-03 15:40:56 +00:00
asfernandes
88b6f39f82
1) Restore logic of not handled exceptions
...
2) Initialize some status vectors
2008-03-03 00:47:04 +00:00
asfernandes
7a2dedaa39
Go direct to engine internals from DSQL, without need to exit/enter the attachment lock - more to follow
2008-03-02 21:16:16 +00:00
asfernandes
35688cd5d9
Cleanup: remove y-valve functions DSQL_CACHE and INTL_FUNCTION
2008-03-01 19:14:46 +00:00
dimitr
0096b53d9b
Fixed the issue reported by Dmitry Kovalenko in fb-devel. We don't need to validate the transaction handle in JRD, as DSQL does some tricks about it.
2008-03-01 08:42:31 +00:00
alexpeshkoff
48e9858b57
fixed CORE-1756: AV in isc_start_transaction (isc_start_multiple)
2008-02-29 16:44:17 +00:00
dimitr
5ca270c096
1) Cleanup SERVER_SHUTDOWN.
...
2) Make the engine shutdown asynchronous.
2008-02-29 12:47:20 +00:00
alexpeshkoff
00c63c1f8d
1. Make signals handling in yValve MT safe.
...
2. Introduce new private API calls, fb__shutdown() and fb__shutdown_callback().
3. Introduce fb_smp_server - binary to run superclassic on posix.
4. Various cleanups.
2008-02-28 18:42:30 +00:00
dimitr
99caa91b85
DSQL integration into the engine.
2008-02-28 13:48:16 +00:00
dimitr
6343ea1d84
1) Fixed a deadlock related to SecurityDatabase.
...
2) Cleaned up the code duplicated in CMP_shutdown_database(). This was a mistake in one of my prior commits.
2008-02-27 12:25:04 +00:00
dimitr
c7bbcda729
Fixed the mutex recursion in jrd8_prepare_transaction. Thanks to Dmitry Kovalenko.
2008-02-24 09:55:10 +00:00
robocop
95e59f72b5
Undo the check for 255 bytes in JRD_num_attachments (let the callers handle long paths).
...
Fix some memory leaks (at least one of them signaled by myself years ago) when calling JRD_num_attachments.
Introduce an enumeration for the "flag" parameter in the same function.
2008-02-21 04:24:42 +00:00
dimitr
0542cccc67
Cleanup the code that was never enabled.
2008-02-20 16:33:59 +00:00
dimitr
3b843d8aea
Make the memory stats SuperClassic friendly. It doesn't make the Classic logic much worse.
2008-02-20 15:29:07 +00:00
robocop
5bff502eac
Better report truncated paths than to crash due to malformed parameter block.
2008-02-20 10:20:40 +00:00
dimitr
81df8a829f
Added missing synchronization.
2008-02-19 16:50:04 +00:00
dimitr
7ae3eb5977
1) Make enumeration and shutdown routines SuperClassic friendly.
...
2) Cleanup and minor refactoring of the Classic shutdown routines.
2008-02-19 16:23:53 +00:00
asfernandes
c979d91901
Misc
2008-02-19 02:34:55 +00:00
robocop
7a0a29e234
Move some clutter out of jrd.h to Database.h and Database.cpp.
2008-02-14 12:24:27 +00:00
robocop
360cc4c31b
Style.
2008-02-14 07:31:25 +00:00
dimitr
ff9e777bc0
Cleanup, style and synchronization. Solved a few deadlocks and races during attach.
2008-02-14 07:12:13 +00:00
alexpeshkoff
dbf65528b8
Fixed CORE-1726: isc_service_start failed, use InitHolder for SecurityDatabase in services too.
2008-02-13 13:10:23 +00:00
asfernandes
627202bd84
Fix operator precedence
2008-02-11 23:32:15 +00:00
dimitr
78b4b30764
Move the dbb<->att check under the mutex protection.
2008-02-11 17:39:04 +00:00
asfernandes
4ffcaa7c5b
Misc
2008-02-10 17:26:35 +00:00
alexpeshkoff
c3e1830e12
1. Cleanup:
...
- moved Attachment constructor (big enough) into .cpp file
- avoid use of dbb in Database::get() and getUserInfo()
2. Complete fix for CORE-1726 - SecurityDatabase::init() is now not Database, but Attachment counted.
2008-02-10 16:38:30 +00:00
alexpeshkoff
18f72a7ed2
Fixed filehandles and temp diskspace leak - delete dbb_sys_trans makes it close TempSpace
2008-02-08 16:54:10 +00:00
asfernandes
691fb487d8
Misc
2008-02-06 00:43:54 +00:00
alexpeshkoff
ee6c433597
Mutexes cleanup:
...
1. Make all firebird mutexes recursive.
2. Enable exceptions to be thrown by mutexes and process them in code where needed.
3. Catch and ignore exceptions in various MutexGuard dtors.
2008-02-05 08:21:18 +00:00
robocop
4c3381ef6b
Style, constness and macro cleanup.
2008-02-03 10:41:44 +00:00
asfernandes
b39ac40c9d
Misc
2008-02-03 02:32:39 +00:00
alexpeshkoff
8901a0e003
Services cleanup - make class Service traditional C++ class
2008-02-02 18:33:37 +00:00
robocop
e9e1ead67a
Mostly style, constness, native memcpy and explicit constructors.
2008-02-02 17:04:06 +00:00
dimitr
9c9413d02e
Fixed issue spotted by Claudio privately.
2008-02-02 14:36:06 +00:00
dimitr
16814b51a6
Let's be consistent with operation order during dbb destruction.
2008-01-29 17:32:42 +00:00
alexpeshkoff
3589cebc95
Fixed some posix problems
2008-01-29 10:36:49 +00:00
dimitr
a38b327886
Cleanup. Get rid of the JrdMemoryPool.
2008-01-29 10:11:52 +00:00
asfernandes
de8771570f
Misc
2008-01-29 01:36:41 +00:00
dimitr
c0f1809bde
Let's explicitly release all locks we own.
2008-01-28 17:27:03 +00:00
dimitr
ed3817f6b6
Sigh, we have to release the dbb when doing authentication.
2008-01-26 17:33:57 +00:00
dimitr
d54edd1a13
Major synchronization changes. Description of the commit will be posted to fb-devel.
2008-01-26 13:51:33 +00:00
asfernandes
aea2bcb354
Misc
2008-01-23 19:03:16 +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
c577fde263
The merge is being fixed.
2008-01-16 12:29:45 +00:00
dimitr
d1e8f67a5d
The merge continued.
2008-01-16 09:29:37 +00:00
dimitr
516f75c010
Protect the mutex from being released twice.
2007-12-19 14:12:31 +00:00
dimitr
cf12557e36
Code simplification. We don't need to track the cancellation for the non-request activities.
2007-12-11 09:19:06 +00:00
dimitr
d276641cc8
Fixed CORE-1610 and its subtask CORE-1615.
2007-12-10 07:18:54 +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
alexpeshkoff
3e0d8ebc5b
Fixed CORE-1603: Possible buffer overflow with long user name
2007-11-19 16:18:59 +00:00
hvlad
2b47bbe55b
Revert files back after wrong commit
2007-11-19 00:21:18 +00:00
hvlad
86f1141328
Execute statement with support of external data source
2007-11-18 22:59:20 +00:00
alexpeshkoff
a80dd39b11
Fixed CORE-1593: Full domain user name can be longer than 31 char(for trusted authentication)
2007-11-15 12:48:24 +00:00
alexpeshkoff
c4f6801e34
avoid cast
2007-11-01 17:19:54 +00:00
alexpeshkoff
8c542c5b26
Fixed CORE-1551: AV when all statements are cancelled
2007-10-30 14:50:05 +00:00
alexpeshkoff
edc03201ca
Fixed CORE-1537: NBackup creates difference file in bad place
2007-10-26 13:21:16 +00:00
dimitr
025cf5c752
Fixed CORE-1540.
2007-10-26 10:53:47 +00:00
robocop
5e135ba43f
Moved the bool before the strings.
2007-10-24 07:03:37 +00:00
robocop
3c9917e8e2
For now, we are only interested in knowing that
...
dpb_gbak_attach was specified, not in the content of the string.
2007-10-24 06:26:31 +00:00
dimitr
81a791c6bb
Allow ASTs to be delivered while the engine performs some long activity.
2007-10-15 17:45:30 +00:00
hvlad
6bc73b2260
Correction for fix for bug CORE-1443
2007-09-18 14:58:31 +00:00
hvlad
ebb55209c0
Fixed bug CORE-1468 : Database corruption possible when database file extension and read\write activity is performed simultaneously
2007-09-18 14:50:51 +00:00
hvlad
193910ff7c
Fixed bug CORE-1443 : Embedded engine may hang application on exit if no database access was performed
2007-09-06 07:52:39 +00:00
dimitr
91fa6a519b
1) Replaced the hackery LM-based ID generation with the local counter. Uniqueness will be ensured by the DatabaseSnapshot internals.
...
2) Fixed CORE-1441.
2007-09-05 07:18:37 +00:00
robocop
3a7d93f658
Misc tweaks with Firebird::string.
2007-08-26 09:53:08 +00:00
asfernandes
6beb5e28bd
Misc
2007-07-26 01:23:18 +00:00
alexpeshkoff
4a0e6d59f3
Fixed unreleased (or released in wrong order) locks in:
...
1. Dsql cache.
2. Transaction (table lock) - only when database dropped.
3. Collation - were released after database's lock.
2007-07-25 13:21:59 +00:00
alexpeshkoff
f250c52b4f
Fixed CORE-1323: NBAK not working
2007-06-15 09:28:56 +00:00
alexpeshkoff
0545a76ef6
Fixed role uppercasing - thanks to Adriano
2007-06-13 13:21:40 +00:00
alexpeshkoff
4a4a01ee98
Restored old (SYSDBA) value of CURRENT_USER during BOOT_BUILD
2007-06-09 09:25:40 +00:00
alexpeshkoff
abb9f55932
fixed option name
2007-06-09 08:38:27 +00:00
asfernandes
fbf04d54fc
Misc
2007-06-09 04:06:26 +00:00
alexpeshkoff
e5f1e63836
Fixed CORE-1312: A remote attacker can check, if a file is present in the system, running firebird server
2007-06-08 10:24:57 +00:00
alexpeshkoff
ea8ba3370d
Cleaned up mutexes - removed MUTX_T and related macros
2007-06-06 12:37:24 +00:00
asfernandes
e705b335f8
Fix non-ASCII object names in:
...
1) aliases in PLANs
2) EXECUTE PROCEDURE
3) SELECTs inside procedures/triggers
2007-05-26 22:08:13 +00:00
alexpeshkoff
f72f84ed58
Much better pool may be used here
2007-05-24 12:18:41 +00:00
alexpeshkoff
364849e5fe
Fixed ContextPoolHolder usage - in non-AST cases pool should not be 0
2007-05-24 12:13:10 +00:00
asfernandes
c67afcb4ee
Improvement CORE-1277 - Automatic transliteration of text blobs
2007-05-22 02:14:20 +00:00
dimitr
bc7c4d0054
Added remote process name to the monitoring data. Applications are allowed to override this value via DPB.
2007-05-16 07:54:33 +00:00
hvlad
395fa7f43d
Assing memory pool in tdbb at database detach.
2007-05-07 13:09:26 +00:00
alexpeshkoff
6f8fb87780
Front-ported fix for CORE-1240 - any task, using libfbclient, hangs on exit on Darwin/PPC
2007-05-03 13:52:16 +00:00
skidder
742706cc4d
Fix server crash if database file cannot be created that was introduced by our previous patch
2007-04-26 17:25:49 +00:00
skidder
04b9ec818b
NBAK synchronization rework. This should fix CORE-1151 and other Nbackup stability issues
2007-04-24 14:05:46 +00:00
dimitr
4c66511fbd
Correction for my old commit. Enforced rescheduling does very bad job for classic, causing a major slowdown.
2007-04-17 12:39:56 +00:00
alexpeshkoff
f0d465bf34
Fixed gcc warnings, general (un)signed usage cleanup
2007-04-11 09:28:50 +00:00
alexpeshkoff
6e735f7c53
Misc + gcc warning hunting
2007-04-09 16:15:29 +00:00
dimitr
72c5963844
Misc.
2007-04-05 04:27:29 +00:00
hvlad
79613ef6aa
Don't waste even a nanosecond copying string if we can avoid it
2007-04-04 21:38:06 +00:00
asfernandes
032a4b170c
Don't leak memory after conversion to blob for store the value in a variable or parameter
2007-03-24 03:00:22 +00:00
hvlad
b3dcfede36
Close external table's file when relation is not used by the engine.
...
This is simplest fix for bug CORE-132 (Restore fails on external table) and CORE-961(Free external tables)
2007-03-19 21:34:52 +00:00
dimitr
05473ab246
Front-ported fix for CORE-943.
2007-03-09 08:55:07 +00:00
dimitr
57c02cc754
Front-ported fix for CORE-1140.
2007-03-09 08:16:37 +00:00
dimitr
d3ae3fef1c
Front-ported fix for CORE-1139.
2007-03-09 07:59:05 +00:00
asfernandes
e544f6fd1e
Misc
2007-03-01 00:44:14 +00:00
alexpeshkoff
c877054ae5
Fix for CORE-900: Deadlock when attaching simultaneously with services and standard APIs
2007-02-28 08:40:27 +00:00
alexpeshkoff
9b2d957057
Fixed CORE-1091 - isc_service_query() showed full db file name
2007-02-26 16:17:00 +00:00
asfernandes
ba4be4f293
Misc
2007-02-26 02:13:42 +00:00
asfernandes
f73cf3e501
Initialize random seed when necessary
2007-02-26 01:01:17 +00:00
asfernandes
d87a30bf0c
Misc
2007-02-23 01:42:10 +00:00
alexpeshkoff
dfef55e991
Fix for CORE-968 - Assertion failure in posix/isc_ipc.cpp
2007-02-22 16:47:39 +00:00
robocop
409ff041dd
Misc and replaced "IB" by "FB" where it made sense to me.
2007-02-11 09:04:54 +00:00
dimitr
1c2de5688c
Fixed (partially) CORE-1105. A half of the whole db alias idea has been broken three years ago and left unnoticed until now. Sigh.
2007-02-08 14:14:54 +00:00
alexpeshkoff
7d3949ad67
Fixed some problems, noticed by Claudio.
2007-01-28 12:17:17 +00:00
hvlad
3843604cd0
GTT related bugfix
2007-01-27 15:40:12 +00:00
asfernandes
c3d64106e0
Misc
2007-01-26 01:24:48 +00:00
alexpeshkoff
d66281291f
1. Make classic server close shutdown normally when killed by signals 2 & 15.
...
2. Don't leave running instances of fb_inet_server after database shutdown.
3. To make all this possible - reworked Y-Valve in general.
2007-01-20 14:45:45 +00:00
asfernandes
f30ee6b63e
Use debug informations in EXECUTE BLOCK
2007-01-20 14:18:18 +00:00
asfernandes
aca179f398
Full domain support and NOT NULL in PSQL
2007-01-17 01:19:01 +00:00
dimitr
99c2df56b6
Changed cancellation implementation to work at the transaction level as being more efficient.
2007-01-07 15:15:06 +00:00
asfernandes
9493f2fb66
Fix problems with COMMIT triggers:
...
1) Fix a problem when the transaction could not be commited due to errors in DFW.
2) Run triggers inside a savepoint when "preparing" the transaction.
3) More doc.
2007-01-06 23:54:23 +00:00
hvlad
b9d0a9bcd6
Fixed CORE-1080 : Bugcheck 167 (invalid SEND request) in SS when many parallel attachments begin to execute trigger not loaded into metadata cache
2007-01-06 13:43:41 +00:00
dimitr
83c7f38229
Fixed CS build.
2007-01-06 06:52:43 +00:00
asfernandes
5db5421a66
Misc
2006-12-30 16:55:06 +00:00
asfernandes
de7dbae857
Rollback changes of all ON TRANSACTION COMMIT triggers when one trigger fail
2006-12-30 01:26:50 +00:00
dimitr
40f6fa11d0
Let's not cancel the verb cleanup process as it causes a fatal bugcheck.
2006-12-22 15:49:31 +00:00
asfernandes
bfcc8df647
Restore the original status vector
2006-12-13 14:28:57 +00:00
asfernandes
7329ad3f3b
Run ON DISCONNECT triggers on server shutdown - thanks to Alex
2006-12-12 14:21:17 +00:00
alexpeshkoff
1a4652f01a
Trusted authentication for windows
2006-12-08 18:38:15 +00:00
dimitr
b43b43eca9
1) Changed MON$STATEMENTS a bit.
...
2) Implemented statement cancellation.
2006-12-04 21:36:29 +00:00
asfernandes
d168869475
Added RDB$NULL_FLAG and RDB$PARAMETER_MECHANISM to RDB$PROCEDURE_PARAMETERS
2006-11-24 00:25:13 +00:00
asfernandes
3e7a2b4542
Do not swallow bugcheck exceptions - thanks to Claudio
2006-11-12 21:19:50 +00:00
robocop
4734698382
Fix a crash in Adriano's db triggers when using -shut and -tran in gfix, because TRA_start can throw and thus our result in jrd.cpp was uninitialized.
2006-11-10 08:38:55 +00:00
robocop
7a46dc7247
Misc.
2006-11-10 08:12:07 +00:00
asfernandes
570b6cd4b4
1) CORE-645 and CORE-745: Database triggers
...
2) CORE-711: Make syntax for "CREATE TRIGGER" compliant with SQL2003
2006-11-05 18:30:36 +00:00
hvlad
f48f2af25b
Few corrections pointed by Claudio
2006-11-03 09:42:42 +00:00
asfernandes
4197a8be70
Fixed a bug when the connection charset is multibyte, appeared after recent changes to CsConvert class.
2006-11-02 22:37:19 +00:00
dimitr
543fc5e0d1
Enabled rescheduling points for classic. It allows to shutdown database or cancel operation timely for a heavy loaded attachment.
2006-10-31 15:59:23 +00:00
hvlad
58d381edd7
1. Remove blr_src_info code as it is prevents database downgrade from ODS 11.1
...
2. Put debug information (mapping between blr offset and source line\column and names of local variables) into new blob field RDB$DEBUG_INFO
This is first step to implement native SQL debugger i believe
2006-10-30 20:58:06 +00:00
dimitr
e4fffd425f
1) Updated monitoring implementation.
...
2) Cleanup.
2006-10-30 12:39:08 +00:00
asfernandes
358326eb08
Misc
2006-10-14 18:33:12 +00:00
robocop
28c3d29886
ApiGuide.pdf says a maximum of 16 databases is allowed for a multi-db transaction. However, Ann agrees that a modern new, sensible limit is 256 databases for start_transaction and start_multiple.
...
Fixed a buffer overrun in jrd.cpp related to this.
2006-10-14 01:29:36 +00:00
asfernandes
1d422a8330
1) Refactor intl_classes.h and intl.cpp
...
2) Make conversions from CharSet1->UTF16->CharSet2 job of CsConvert class
2006-10-10 19:40:33 +00:00
robocop
8e7e781e5f
Partial commit with some cleanup and more constants.
2006-10-10 06:41:36 +00:00
asfernandes
4191332d2f
Fix problem reported by Carsten Schäfer in fbdevel of incorrect server start when using connection pooling
2006-10-10 03:53:08 +00:00
robocop
861cc66a6f
Dmitry's last commit appears incomplete for me (for example, no project files were updated). While trying to fix the VC6 build, I added the new class to the three "common*" projects and commented a line in jrd.cpp. Server may misbehave due to the jrd modification.
2006-10-08 07:57:15 +00:00
dimitr
988782a96a
1) A new class to handle aggregated multi-level performance counters.
...
2) Cleanup and minor fixing.
3) A few monitoring changes.
2006-10-07 10:53:01 +00:00
asfernandes
3cf910dedf
Misc
2006-09-15 02:14:46 +00:00
dimitr
7c405166aa
1) Support for client PID in the monitoring data.
...
2) Changed XNET to return local hostname instead of PID as its remote address.
2006-09-14 13:47:31 +00:00
alexpeshkoff
ba264a2388
Fixed CORE-900
2006-08-17 09:51:34 +00:00
alexpeshkoff
205a7303c3
1. Centralized validation of attachment to be a super-user attachment.
...
2. Fixed a couple of old problems, when sysdba could perform operations, but
database owner - could not.
3. Fixed CORE-84 - nbackup operations were allowed for everybody who can login
to the given database.
4. Disabled creating shadows and adding additional DB-files for non super-user.
2006-08-16 15:15:58 +00:00
dimitr
17f99e1489
More fixes for the monitoring stuff.
2006-07-24 15:56:50 +00:00
robocop
64f6eb42a1
Misc.
2006-07-21 01:35:17 +00:00
asfernandes
155ab12384
Misc
2006-07-20 03:14:15 +00:00
dimitr
b7671e2bf6
Increase minimal created page size to 4096. Note that we still can open less page sizes.
2006-07-19 15:16:14 +00:00
dimitr
129e6229ee
Monitoring, continued.
2006-07-19 06:19:56 +00:00
dimitr
c68587fe66
1. Virtual tables
...
2. ODS 11.1, procedure type and relation type
2006-07-17 17:44:18 +00:00
asfernandes
3d20c0180a
Misc
2006-07-12 15:13:22 +00:00
asfernandes
a86cf35ad4
Synchronization of DSQL metadata cache objects in classic-server
2006-07-10 03:12:10 +00:00
robocop
d2d3230637
Misc.
2006-07-01 08:50:21 +00:00
robocop
db5f743685
Misc.
2006-06-16 08:13:20 +00:00
dimitr
7cc12e8489
1) Reworked memory management in SORT. Now we're pools aware there.
...
2) Reworked error handling in SORT and its callers.
3) Replaced DLS+SortMem with the generic TempSpace class.
4) Replaced GDS temp file management with the TempFile class.
5) Various cleanup.
2006-05-31 08:53:00 +00:00
robocop
40f05409c9
Cleanup done and tree is buildable again.
...
:-)
2006-05-25 10:20:31 +00:00
robocop
7040d668fd
Misc.
2006-05-25 08:40:23 +00:00
asfernandes
8dfca54dda
Complete Dmitry's cleanup of all_proto.h
2006-05-23 12:23:53 +00:00
hvlad
701f2cbda4
Global temporary tables implementation
2006-05-21 22:07:35 +00:00
asfernandes
292ad66e96
Misc
2006-05-20 01:53:51 +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
dimitr
9ff5877b36
Fixed the posix build.
2006-05-13 05:02:13 +00:00
dimitr
ab72aae201
Threading cleanup. Restored the V4_THREADING code to the state it was before Blas' cleanup. It's not used but preserved as a self-documentation.
2006-05-01 05:11:52 +00:00
dimitr
bece02f7e8
Threading cleanup. More to follow.
2006-04-30 18:15:30 +00:00
dimitr
8f9d2584db
Threading cleanup. More to follow.
2006-04-30 17:40:24 +00:00
dimitr
79652b7222
Threading cleanup. More to follow.
2006-04-30 17:30:32 +00:00
dimitr
8e07223ebf
Threading cleanup. More to follow.
2006-04-30 16:28:30 +00:00
robocop
e49082193a
Delete redundant cast.
2006-04-29 05:42:43 +00:00
asfernandes
89ce677f48
Misc
2006-04-26 02:49:25 +00:00
dimitr
e5869b3921
Misc.
2006-04-25 07:37:19 +00:00
alexpeshkoff
7aa58b7f3a
fixed debug build
2006-04-16 12:52:58 +00:00
asfernandes
7923390e54
Allow collation IDs greater than 127
2006-04-05 16:34:18 +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
robocop
044c5841ad
Misc.
2006-02-10 03:28:43 +00:00
hvlad
7c5c5ec818
Don't overwrite dbb_oldest_snapshot and another transaction numbers with
...
oldest values from header page after user call to isc_info_oldest_snapshot etc
2006-02-03 13:23:58 +00:00
robocop
97122ee389
Replace jrd_time.h by our timestamp.h, but I left timestamp.h's #includes commented where it *seemed* not necessary.
2006-02-03 08:39:36 +00:00
robocop
2b99e764e3
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Sixth step: remove the places protected by the macro PC_ENGINE. More to come. (I guess all of you who have pending functional changes to post will love this commit. <g>)
2006-02-02 07:32:07 +00:00
robocop
51e1d59ac5
Misc.
2006-01-28 04:12:42 +00:00
robocop
1e6d89ebfc
Comment excessive dependencies on license.h.
2006-01-07 00:31:37 +00:00
dimitr
2204fe9624
Fixed the garbage trigger name (reported by Alex).
2006-01-03 11:28:24 +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
alexpeshkoff
62a24d46e4
1. Moved data structures, written to database file, into ods.h.
...
2. Added new types of clumplets to ClumpletReader and ClupmletWriter.
3. Applied modified ClumpletReader and ClupmletWriter to /remote and partially /jrd.
4. Added active protection from remote brute-force attack to services API.
2005-11-27 20:53:09 +00:00
hvlad
9d6b361f69
Eliminate unnecessary JRD_get_thread_data call in nbak.
...
Checked against B2_0_BV_Stable3 branch
2005-11-21 23:33:20 +00:00
robocop
2e49ce85c9
Misc.
2005-10-14 04:12:36 +00:00
alexpeshkoff
46dd9a90d6
1. reanimated -database switch in gsec\n 2. isc_file.cpp should now compile at AIX\n 3.Use PathName to store database name in jrd.cpp during attach/create
2005-09-30 16:16:39 +00:00
asfernandes
13910d5c73
Fix issue of SQLVAR.sqllen from non-system MBCS fields, thanks to Roman
2005-09-14 18:09:40 +00:00
alexpeshkoff
e832cd2c68
fixed BOFs in PIO functions
2005-09-08 16:41:56 +00:00
asfernandes
0b1eb55d62
Fixed SF field-test #1249187 - 2.0a3: String literals dest. for large CHAR fields truncated
2005-08-21 15:52:30 +00:00
dimitr
92415ce39f
Fixed a bugcheck (and possibly an engine crash) during server shutdown.
...
Force a TIP based rollback instead of using a transaction-level savepoint in this case.
2005-07-25 05:03:26 +00:00
dimitr
0af3a3f462
Fixed one of the server shutdown bugs. More to come.
2005-07-24 18:48:45 +00:00
dimitr
c4ff5cf6b8
Expanded the routine comment.
2005-06-25 09:34:59 +00:00
dimitr
0ce1d52f3e
Slightly changed (mostly cleaned up and fixed) the SS shutdown mechanics.
2005-06-24 11:14:51 +00:00
asfernandes
890494ac7c
1) Fixed SF #1016040 Missing external libraries causes engine exception
...
2) Use better error messages
2005-06-14 03:16:54 +00:00
dimitr
894fa1e011
Removed unused thread scheduling option.
2005-06-12 06:27:12 +00:00
asfernandes
59213efe7e
Merge INTL branch into HEAD
2005-05-27 22:45:31 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
robocop
c8de3fff0c
Change misleading comment.
2005-05-02 09:10:06 +00:00
dimitr
559843c97d
Fixed origin of the 100% CPU load when an I/O error causes a rollover to non-existing shadow.
...
Also fixed attempt to wait for the attachment-owned lock for the already purged attachment.
2005-05-02 07:01:33 +00:00
asfernandes
eabacfd9ad
Apply Vlad's patch reverting to legacy behavior about overwrite of non-database files
2005-05-01 14:58:21 +00:00
robocop
b609407d9b
We can live with static_cast for these cases.
2005-04-18 03:32:35 +00:00
alexpeshkoff
808422abaf
fixed windows build
2005-04-14 17:06:14 +00:00
asfernandes
b5294dc7a9
Fixed SF #1155520 - Any user can replace databases created by others
2005-04-13 01:06:24 +00:00
alexpeshkoff
504ec492ab
Shutdown SS without SYSDBA password
2005-04-11 15:33:18 +00:00
hvlad
f09ef16560
1. New switch for gbak -RECREATE_DATABASE [OVERWRITE].
...
Simple RECREATE_DATABASE is equal to CREATE_DATABASE,
RECREATE_DATABASE OVERWRITE is equal to REPLACE_DATABASE.
2. gbak uses isc_dpb_overwrite to create database over existing files
3. engine overwrite existing files only if asked explicitly by
user by setting isc_dpb_overwrite to 1
4. fixed unregistered bug - when gbak uses service manager and passed
command line contains invalid switch. Service reports error and
finish but not call Service::svc_started therefore response is not
send and gbak is stalled forever
2005-04-09 18:44:50 +00:00
dimitr
4ec439dd14
1) Deliver trigger type to the compiler level
...
2) Disallow NEW context assignments for POST-triggers
2005-03-28 21:52:55 +00:00
robocop
331b974d4b
Fix role parsing bug. I warned the committer five months ago, but it got lost among his duties, so I'm fixing it now with the same suggestion I gave then.
...
Demonstration:
SQL> connect isqltest.fdb role "your bug""""is here";
and see what you get inside options.dpb_role_name in jrd.cpp at line 946.
2005-03-15 02:09:58 +00:00