gbak multi-database file restore uses wrong minimum number of pages for first 
database file
-------------------------------------------------------------------------------------------

                 Key: CORE-5976
                 URL: http://tracker.firebirdsql.org/browse/CORE-5976
             Project: Firebird Core
          Issue Type: Bug
          Components: GBAK
    Affects Versions: 4.0 Alpha 1
         Environment: Firebird-4.0.0.1352-0_x64
            Reporter: Mark Rotteveel


I have a Jaybird test that creates a multi-file database using a gbak restore 
(through the services API). This test creates an artificially small first file. 
Jaybird instructs Firebird to make the first file 10 pages big, and Firebird 
then overrides that to 200 pages.

This doesn't work correctly, because those 200 pages are not sufficient. As a 
result the second database file is not created.

Firebird 4, the restore logs the following:

"""
[..]
gbak:backup version is 11
gbak:created database 
C:\Users\Mark\AppData\Local\Temp\junit8203596626416973464\junit4583341152862574241\testrestore1.fdb,
 page_size 8192 bytes
gbak:started transaction
gbak:length given for initial file (10) is less than minimum (200)
gbak:adding file 
C:\Users\Mark\AppData\Local\Temp\junit8203596626416973464\junit4583341152862574241\testrestore2.fdb,
 starting at page 201
gbak:committing secondary files
gbak:cannot commit files
gbak: ERROR:Starting page number for file 
C:\USERS\MARK\APPDATA\LOCAL\TEMP\JUNIT8203596626416973464\JUNIT4583341152862574241\TESTRESTORE2.FDB
 must be 213 or greater
gbak:creating indexes
[..]
"""

If the minimum is actually 213 or greater, instead of "gbak:length given for 
initial file (10) is less than minimum (200)", shouldn't it do "gbak:length 
given for initial file (10) is less than minimum (**212**)" and create the 
first database file as 212 pages instead of the 200 it does now?

For reference, Firebird 3 does create both database files and logs:

"""
[..]
gbak:backup version is 10
gbak:created database 
C:\Users\Mark\AppData\Local\Temp\junit10807610804273459707\junit7128503662445743782\testrestore1.fdb,
 page_size 8192 bytes
gbak:started transaction
gbak:length given for initial file (10) is less than minimum (200)
gbak:adding file 
C:\Users\Mark\AppData\Local\Temp\junit10807610804273459707\junit7128503662445743782\testrestore2.fdb,
 starting at page 201
gbak:committing secondary files
gbak:creating indexes
[..]
"""

-- 
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

        


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to