1. Frontported fix for CORE-3935 and CORE-3993.
2. Added debugging support for mutexes and rwlocks in Vulcan style.
Unfortunately after last 'svn up' build asserts in JrdStatement:71.
Also some cleanups, the most important are:
- meaningful ctor on Jrd::Lock, helping to avoid code dup
- avoid unneeded h-file dependencies, making boot build engine dependent
SUPERSERVER has 4 different meanings in our code:
- this is milticlient server (replaced with Config::getMultiClientServer())
- use shared data cache (replaced with Config::getSharedCache())
- use shared metadata cache (replaced with macro SHARED_METADATA_CACHE)
- database are NOT shared between processes (replaced with getSharedDatabase())
2. Use fb_smp_server as both superclassic and classic binary on posix
(xinetd autodecection is done).
3. Small posix build cleanup.
CORE-462 New option in addition to -V switch to specify a custom verbose interval
CORE-2540 Utilities need a more coherent way to show help and version
CORE-2541 Too many hardcoded messages in nbackup
CORE-2542 qli and nbackup accept arbitrary input after the first letter of an option
CORE-2543 nbackup may hide the real cause of failure
CORE-2545 Lack of several validations in gbak
CORE-2547 Utilities need to honor their minimum number of characters to recognize an option
CORE-2565 Many hardcoded messages in Trace Manager
Moving functions that don't depend on preprocessing to iutils.cpp in isql is the only alien change here.
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.
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 :-)