-
-
Notifications
You must be signed in to change notification settings - Fork 220
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error when restore on embedded "Shared memory area is probably already created by another engine instance in another Windows session" #8363
Comments
Is firebird.log contains something related to this ? Check firebird.log in both server and embedded folders. |
No :( In Server firebird.log just "Guardian starting..." for today, in Embedded last record for 2021 year. Just now, Scan every location of firebird.log on my PC, maybe there is a Firebird that I don't know about from other programs, but no other files with new records. |
Also just checked Environment variables, only FIREBIRD_MSG is set. Maybe it helps. |
Is it really required ? To workaround the issue you might restore Loopback provider in config of embedded instance - in this case database will be restored by Firebird service, if it is running. Regular attachments (i.e. not creating of database) will still be handled by embedded engine. The issue is fixed in v4, see #7213 |
If I use my configuration of Firebird Server (version, port, different changes of cache sizes, users and passwords) and the same in Embedded, there is no problem, but when another vendors install different Firebird Server with their own configuration on Client PC, that could be the problem when Embedded version start restore by Loopback from another Firebird Server. Or maybe I'm wrong and misinterpreting the work of Loopback in Embedded version. By setting "Providers = Engine12" I'm limiting work only in one folder with Embedded Server only, as much as possible, to prevent from use other versions and instances of other Firebird.
But when I set "Providers = Engine12, Loopback" there interesting thing, gbak from folder of Embedded version immediately start working well and restore db by Loopback. But IbExpert and my test app not worked, same error when restore db. I checked by ProcessMonitor all 3 app use the right ones files firebird.conf and fbclient.dll from folder with Embedded version. |
Version of Firebird 3.0.12. In Windows I have installed full Firebird Server 3.0.12 and using embedded for testing or some other programs. When restoring (with db replace) using embedded engine, have error "Shared memory area is probably already created by another engine instance in another Windows session" and file of db is deleted. Earlier, before Firebird 3.0.12, I use version 3.0.10, error was the same but file became 0 bytes after that error. I think there was no that problem before 3.0.10 or maybe 3.0.9, file restored correctly.
gbak example:
gbak -rep -user SYSDBA -password masterkey E:\temp\test.fbk E:\Temp\TEST_EMB.FDB
gbak: ERROR:Shared memory area is probably already created by another engine instance in another Windows session
gbak: ERROR:failed to create database E:\Temp\TEST_EMB.FDB
gbak:Exiting before completion due to errors
IbExpert example:
IBE: Starting restore. Current time: 8:58:49
[8:58:49] gbak:transportable backup -- data in XDR format
[8:58:49] gbak: backup file is compressed
[8:58:49] gbak:backup version is 10
IBE: Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements.
Shared memory area is probably already created by another engine instance in another Windows session.
failed to create database E:\Temp\TEST_EMB.FDB.
Exiting before completion due to errors.
IBE: Restore completed. Current time: 8:58:49. Elapsed time: 00:00:00
Very important, if I, after Windows start connect locally only to embedded by local path E:\Temp\TEST_EMB.FDB and try to restore db, everything fine and works perfect. But, after first connect to Firebird Server by connection string LOCALHOST/3053: E:\Temp\TEST_SRV.FDB, after this, and it does not matter if I disconnect or exit the application, after connection to Firebird Server I always have error "Shared memory..." when restoring db in embedded engine by local path.
Changes in Firebird Server firebird.conf:
DefaultDbCachePages = 16K
FileSystemCacheThreshold = 128K
TempBlockSize = 2M
TempCacheLimit = 128M
RemoteServicePort = 3053
LockMemSize = 15M
Changes in Firebird Embedded firebird.conf:
Providers = Engine12
ServerMode = Classic
trying ServerMode = Super - same problem
The text was updated successfully, but these errors were encountered: