Hello, I noticed a problem when connecting to FB3 started as "firebird -s" (on Linux). As I was able to reproduce the issue with versions as old as April 2013 and I'm not completely sure relicts of my experiments can't cause it, I would like to ask if someone else could try to reproduce.
What I do is start the "standalone" server with "/usr/sbin/firebird -s" and connect to it e.g. with echo 'show tables;' | isql -ch UTF8 '172.17.2.1:test' from another system. Without "-s" option everything works fine but with "-s" the connection hangs. >From the network communication and strace output (can be found at http://www.mk-sys.cz/tmp/fb3-s/ both for "good" and "bad" case), it seems that in both cases, the connection is established and first data packet from client (428 bytes, looks like authentication) is read. While in the multithreaded case, server reads configuration (firebird.conf, databases.conf) and responds to the packet, forked child in standalone case just calls poll() on connected socket again so that from that moment on, both client and server wait for data from the other side. Another question: while working on the inet connection code, I noticed that the final part of INET_connect() #ifdef WIN_NT MutexLockGuard forkGuard(forkMutex, FB_FUNCTION); if (forkThreadStarted) { SetEvent(forkEvent); CloseHandle(forkEvent); delete forkSockets; forkSockets = NULL; } #endif follows an infinite loop and there is no goto or break (two breaks in the function but both before the start of this loop). Did I miss something or is it a dead code and can be dropped? Or should it be moved somewhere else? Michal Kubecek ------------------------------------------------------------------------------ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel