Running fbserver.exe and fbembed.dll on the same computer (same session) with different locations for FIREBIRD_LOCK leads to deadlock because of fb_trace file --------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: CORE-4046 URL: http://tracker.firebirdsql.org/browse/CORE-4046 Project: Firebird Core Issue Type: Bug Affects Versions: 2.5.2 Environment: - Windows XP / Windows 7 (User has full rights) Reporter: Martin Schwedhelm 1. Start fbServer with FIREBIRD_LOCK="C:\A" 2. Start client application which uses fbembed.dll with FIREBIRD_LOCK="C:\B" 3. Try to open a database in the client application via fbembed.dll. The problem only occurs if the user has full rights. In my opinion the reason for that is the following code snippet: TraceConfigStorage.cpp (line 101) if (fb_utils::isGlobalKernelPrefix() || !pfnProcessIdToSessionId || pfnProcessIdToSessionId(GetCurrentProcessId(), &sesID) == 0 || sesID == 0) { filename.printf(TRACE_FILE); // TODO: it must be per engine instance } else { filename.printf("%s.%u", TRACE_FILE, sesID); } Without "fb_utils::isGlobalKernelPrefix()" everything works as expected, but I don't know if that could have side effects. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel