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

869 Commits

Author SHA1 Message Date
alexpeshkoff
065c4b0430 Disconnect all ports after shutdown of working threads 2008-10-13 16:04:15 +00:00
alexpeshkoff
1483d0e465 Need to keep reference count here too 2008-10-13 12:19:26 +00:00
alexpeshkoff
38a8b41c7f Avoid annoying messages in firebird.log 2008-10-10 15:50:07 +00:00
asfernandes
ac600b29d7 Misc 2008-10-09 00:59:56 +00:00
hvlad
ca2519263b Fixed bug CORE-2108 : "get_free_slot() failed" error 2008-10-04 19:41:18 +00:00
hvlad
857129d3f7 Initialize local variable 2008-10-04 17:46:31 +00:00
hvlad
4180370a7a Enlarge space reserved for strings in errors returned after attachment failure. It allow to report errors correctly for application which made a lot of simultaneous (failed) connections. 2008-10-04 17:45:58 +00:00
hvlad
c56ebce7bc Fixed bug CORE-2107 : Failed to establish TCP\IP connection with Windows Classic Server under high load 2008-10-04 17:14:51 +00:00
alexpeshkoff
2f803217f8 1. Never shutdown worker threads from fb_shutdown()'s callback -
instead do it at the end of main server loop.

2. Fixed races when worker thread(s) remained running after exit from main().

3. Added better protection by mutex to counter of worker threads.
Avoid possible races when worker thread starts.
2008-10-03 16:22:54 +00:00
asfernandes
e25ab5a1c6 Misc 2008-09-27 02:54:30 +00:00
robocop
b461e728ad Make inet_aton a function i Windows. 2008-09-24 11:27:37 +00:00
robocop
e1487d3684 inet_aton() does not exist in Windows. 2008-09-24 09:27:11 +00:00
asfernandes
3bf8ec8fb2 Misc 2008-09-24 02:02:38 +00:00
alexpeshkoff
14f21f568e 1. Fixed CORE-2087: server binds to all interfaces in case of error in firebird.conf.
2. Fixed CORE-2093: Superserver startup fails on solaris / 64 bit.

3. Improvement CORE-2094: Make it possible to use hostname when specifying interface to listen on in firebird.conf.

Almost impossible to separate: came in one week and required modifications in same part of code.
2008-09-22 14:46:13 +00:00
asfernandes
22c65f0153 Misc 2008-09-10 02:21:13 +00:00
alexpeshkoff
b63b160fdc make multiclient server shutdown in main thread with normal main port cleanup 2008-09-08 14:06:33 +00:00
alexpeshkoff
eecaa826e3 Cleanup - put two exit handlers with different tasks into separate functions 2008-09-08 13:59:53 +00:00
alexpeshkoff
41488cd241 restored old behavior in OOM conditions - thanks to Claudio 2008-09-08 13:26:47 +00:00
asfernandes
0f387a9bee Misc 2008-09-06 18:42:55 +00:00
alexpeshkoff
d66900f78a Refactored code saving strings in remote.cpp 2008-09-05 13:15:24 +00:00
asfernandes
96194d08ba Misc 2008-08-31 01:10:41 +00:00
asfernandes
a245731588 Partial fix for the Windows build 2008-08-27 15:33:56 +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
alexpeshkoff
a5c262873a Better fix for CORE-2055, thanks to Claudio 2008-08-27 10:40:51 +00:00
alexpeshkoff
475913287b Fixed CORE-2055: BOF in fbclient 2008-08-27 08:05:29 +00:00
dimitr
6fb84abce3 Fixed CORE-2016: Client hang at use of XNET protocol in cases when database or attachment has been shut down. 2008-07-29 11:02:15 +00:00
dimitr
8f05c35f88 Misc. 2008-07-29 10:36:36 +00:00
alexpeshkoff
7c8427bc35 Separated CVT functions to common and jrd parts.
This made possible to avoid ugly CVT_move export.

Cleanup of errors handling in CVT functions.
2008-07-10 15:57:33 +00:00
asfernandes
4aa6ecbaf1 Misc 2008-07-06 18:08:23 +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
alexpeshkoff
99f17b4d00 1. Frontported fix for CORE-1944: Monitoring tables contain wrong data
2. Added new methods to Clumplet classes - date, time and floating point support.

3. Avoid endianess #ifdef's in Clumplet classes.
2008-06-24 13:07:12 +00:00
alexpeshkoff
b0f27fbf0c misc 2008-06-23 13:38:38 +00:00
alexpeshkoff
b2047f9fc7 Make SWAP_DOUBLE endianess dependent 2008-06-23 08:01:35 +00:00
dimitr
7832014210 Forward port the installer fix. 2008-06-13 14:01:45 +00:00
asfernandes
d30d6410ea Misc 2008-06-13 01:42:58 +00:00
paulbeach
d597247854 Support 64bit Darwin PPC 2008-06-09 12:02:59 +00:00
dimitr
bff84e9e7a Cleanup. 2008-06-06 15:55:36 +00:00
asfernandes
afad9993dc Misc 2008-05-31 02:34:54 +00:00
asfernandes
d5e481ba10 Linux IA-64 port 2008-05-22 15:02:59 +00:00
robocop
5cd11867ec Get rid of (ALLOC/FREE)_LIB_MEMORY macro as requested by Dmitry. 2008-05-22 09:38:21 +00:00
alexpeshkoff
ff7cfc717e Implemented Adriano's suggestion concerning fb_shutdown_callback() - added new parameter 2008-05-22 08:59:45 +00:00
alexpeshkoff
5e81cfa225 event_thread() should have own reference to the port. This minimizes chances
to get AV when client exits.
2008-05-21 12:43:41 +00:00
alexpeshkoff
796e02d2a5 1. Cleanup - use constants ISC_USER/ISC_PASSWORD instead of always repeated string constants.
2. Let services uses environment and OS auth when run embedded.
2008-05-19 13:58:37 +00:00
asfernandes
c9202a3767 Misc 2008-05-18 02:02:50 +00:00
alexpeshkoff
86cd8cb6b3 1. Added parameter 'shutdown reason' to fb_shutdown() API call. It's passed to shutdown
callback function, and helps to take correct action in it. This fixes CORE-1827: Win32
Embedded Server should pass control to application before calling exit(3).
2. Removed unneeded any more flag in isql and qli, used earlier to distinguish between
kinds of shutdown.
2008-05-16 11:31:57 +00:00
asfernandes
61ca51e7af Misc 2008-05-15 01:27:23 +00:00
hvlad
7d28033b39 Fixed bug CORE-1902 : XNET protocol does not work correctly in SuperClassic. Thanks to Alexander Potapchenko. 2008-05-14 22:33:10 +00:00
dimitr
579a979b1d Misc. 2008-05-14 17:27:07 +00:00
robocop
a2cd97355b Misc. 2008-05-14 09:24:14 +00:00
asfernandes
ee7a3f5930 Misc 2008-05-13 01:29:38 +00:00
alexpeshkoff
c0bf97f735 Make it possible to have normal operations after async ones in single network packet 2008-05-12 13:34:52 +00:00
robocop
8a28565ea7 Misc. 2008-05-08 08:19:50 +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
8d04f25fb3 Misc 2008-04-30 01:42:09 +00:00
alexpeshkoff
0ba2ab7ea7 Make fb_cancel_operation() public API call. Related cleanup. 2008-04-29 09:55:41 +00:00
alexpeshkoff
1b20fba1e9 Fixed "-s" switch in posix CS 2008-04-29 08:15:36 +00:00
alexpeshkoff
bf691d08c1 Cleanup - posix CS works with MT listener as expected. 2008-04-29 07:57:53 +00:00
robocop
649c1733e9 Misc. 2008-04-26 14:50:27 +00:00
paulbeach
2600e01b89 Fix optimisation problem on MacOSX ppc build that results in a segfault on exit for all utilities
Re-define __ppc__ where necessary
2008-04-25 10:14:54 +00:00
paulbeach
64df8dd761 Solaris 64bit AMD port 2008-04-25 09:42:19 +00:00
asfernandes
e18ac3cb53 Misc 2008-04-24 01:53:40 +00:00
hvlad
3c353209d2 Implement CORE-818 : Server needs to detect disconnects.
For INET only.
2008-04-23 09:38:15 +00:00
robocop
c23e66cc10 Paranoid check. 2008-04-22 11:34:24 +00:00
alexpeshkoff
8a1b11482f Fixed races during disconnect 2008-04-21 09:53:28 +00:00
dimitr
46adac380c Misc. 2008-04-20 14:35:23 +00:00
dimitr
c74650aa5f Fixed CORE-1357. 2008-04-20 14:02:51 +00:00
robocop
3a5712db9e Style. 2008-04-19 11:33:37 +00:00
alexpeshkoff
742c1dce93 Linger should better be initialized 2008-04-18 10:52:29 +00:00
robocop
2f7d411479 Misc. 2008-04-18 09:50:26 +00:00
asfernandes
d75951e8e5 Misc 2008-04-18 01:37:44 +00:00
alexpeshkoff
d6d002143d comment 2008-04-17 17:09:10 +00:00
alexpeshkoff
6c6fdd44fa Fixed memory leak in rem_port::asyncReceive() and optimized it's performance.
Get it ready for non-IP protocols.
2008-04-17 17:05:40 +00:00
alexpeshkoff
3c35984950 fixed gcc compilation 2008-04-17 16:25:23 +00:00
dimitr
e1d3bbcb61 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:22:04 +00:00
dimitr
4a40b788da Correction. 2008-04-17 07:30:10 +00:00
hvlad
b59d7731ec Ensure port can't be deleted ... addition 2008-04-16 14:19:58 +00:00
hvlad
cd4d7ec93d Ensure port can't be deleted by another thread while receiving data (usual socket disconnect event) during disconnect. Just hold one more reference to it. 2008-04-16 12:48:28 +00:00
alexpeshkoff
f4f209cb6f Alan's patch for ARM 2008-04-15 14:14:57 +00:00
robocop
5294fda616 Misc. 2008-04-15 09:31:35 +00:00
asfernandes
79f8d2ceef Misc 2008-04-15 00:57:19 +00:00
alexpeshkoff
b0cc1c0481 Implemented remote cancel operation call. Switched to PROTOCOL_VERSION12. 2008-04-14 09:45:16 +00:00
asfernandes
a9413397a7 Feature CORE-1831 - Creation of GBAK restore switches FIX_FSS_DATA and FIX_FSS_METADATA 2008-04-11 12:57:52 +00:00
dimitr
93ff333155 Restored the prior behavior of the -d switch: thread per port. This makes the debugging easier.
Introduced the new -m switch for the "public" super-classic mode with the thread pooling.
2008-04-10 10:47:11 +00:00
asfernandes
29fbfbb8ff Misc 2008-04-06 14:45:51 +00:00
robocop
1c52bbf025 It seems that finally the interfaces are synchronized.
The compiler produces a lot of errors when linking why.cpp against inter_proto.h (that has the real function signatures) instead of entry.h, but it's the only way to verify that the parameters are coherent.
2008-04-04 13:43:44 +00:00
dimitr
1c343cbadc Server-side fix for CORE-1820. 2008-04-04 09:17:17 +00:00
asfernandes
0adc1aa1f9 Misc 2008-04-04 02:14:17 +00:00
alexpeshkoff
6699ab0e15 Fixed CORE-1807: fbserver assigned to non-canonical port 2008-04-03 15:01:40 +00:00
robocop
b2e8da134f Trying to fix the interface again.
Sorry for going back and forth with constness, but in some cases it was impossible to ensure that input params aren't overwritten, thus I took const away to avoid making promises that can't be met (see the case of fetch that uses a supposedly input-only param to return data). Overwriting memory that was declared const initially is a serious error in C++ with undefined outcome so we better do not lie.
2008-04-03 10:17:24 +00:00
asfernandes
b5f62a63b0 Misc 2008-03-30 20:43:36 +00:00
robocop
09be343d2f Misc. 2008-03-30 11:30:00 +00:00
robocop
27b24cccf3 The boss prefers clean() instead of the sui generis unset(). 2008-03-30 09:49:22 +00:00
robocop
f5c4d1853d Cleanup. 2008-03-30 09:38:24 +00:00
robocop
5b7cb4214b Fixing the damn interface.
Cleanup.
2008-03-30 09:37:57 +00:00
robocop
88349111c8 Probably I could put RFlags with a better name elsewhere for general usage, but for now I'll test the waters with Rsr. 2008-03-30 03:02:12 +00:00
robocop
9030e2a9d5 Misc. 2008-03-28 14:17:21 +00:00
robocop
443feabad9 Since Vlad and Alex did the hard work, I took the comment from Mike (approx 6 years ago) and did the small change function->method. 2008-03-28 13:36:19 +00:00
hvlad
085ba41525 Replace "delete port" by "port->release()" as remote port is RefCounted object now 2008-03-27 11:15:56 +00:00
alexpeshkoff
4e5a83e767 1. Make remote port RefCounted object.
2. Removed deferred cleanup hack.
3. Fixed races when events are delivered - thanks to Vlad.
2008-03-27 10:15:05 +00:00