Assign DB access_mode to RW (by using gfix or fbsvcmgr) leads FB 4.0 Classic to create new firebird-process on every such attempt. Stopping FB Classic service does not drop these ("child") FB processes. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: CORE-5537 URL: http://tracker.firebirdsql.org/browse/CORE-5537 Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 4.0 Alpha 1 Reporter: Pavel Zotov Attachments: unable-to-drop-database-in-ISQL-after-return-access-mode-to-RW.7z 0. Ensure that you have utility 'pslist' from SysInternals package to list FB processes (for those who still use Win XP :)) 1. Stop all running FB instances 2. Launch only one: FB 4.0, in Classic mode. 3. Open batch (from attached .7z) in editor and correct following env. variables: set fbc=C:\MIX\firebird\FB40Cs\ --- folder where binaries for FB 4.0 live; set dbn=C:\MIX\firebird\QA\fbt-repo\tmp\c4582.fdb --- path and name of test database 4. Run batch with logging its output (STDERR & STDOUT) to file-1.txt 5. Repeat "4." several times with logging to another files. Output from 1st file will start with these lines: Check firebird processes at the START point of test: ---------------------------------------------------- firebird 920 8 5 80 1892 0:00:00.062 0:00:06.125 ---------------------------------------------------- .... - and ends with these: Check firebird processes at the FINAL point of test: ---------------------------------------------------- firebird 920 8 6 85 1908 0:00:00.062 0:00:22.765 firebird 2140 8 2 126 12032 0:00:00.125 0:00:15.156 ---------------------------------------------------- So, we have 2 (two) FB processes instead of one. Every subsequent launches of batch will add "+1" to the number of FB processes. If we stop FB service than all these "child" processes will NOT be removed from tasks list - they just become "independent" and do nothing, but still present there. Every launch of batch will issue: === SQL> Statement failed, SQLSTATE = 40001 lock time-out on wait transaction -object C:\MIX\FIREBIRD\QA\FBT-REPO\TMP\C4582.FDB is in use === -- as reply on attempt to drop database. This occurs ONLY when we try to revert DB in read-write access mode. Note also that subseq. launch of batch _can_ successfully drop database by using OS command 'del <file>' - but this can relate to Windows specific. Lock-print output _show_ data, it's NOT empty when we finish command 'gfix -mode read_write ..." PS. Issue was found when search for reason of failure of test for core-4582 (is occured only in Classic - for example, see here: http://web.firebirdsql.org/download/prerelease/results/4.0.0.639/ ). Reproduced on WI-T4.0.0.639, OS =Win XP. -- 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 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel