Skip to content
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

Compress backup on the fly [CORE1662] #2088

Closed
firebird-automations opened this issue Dec 22, 2007 · 9 comments
Closed

Compress backup on the fly [CORE1662] #2088

firebird-automations opened this issue Dec 22, 2007 · 9 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: Gabor Boros (gaborboros)

Jira_subtask_inward CORE5808

Votes: 3

Hi,

I want to suggest an optional compressing method for the backup process.
I have a production database with ~73.7 MB size.
The backup file size is ~48.9 MB. When I compress the backup file with zip
the size is ~9.0 MB and with 7z the size ~3.9 MB.
The 7z file size is ~8% of the original backup file.

I think this is not a "hard to implement" feature.
Just the backup process would send the backup bytes through a compression algorithm.

Gabor

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

Extending services API currently is problematic due to extremely bad design of API (i.e. adding new parameter to svc_start parameters block break compatibility with older servers).

But in the future, when we have new format for that blocks, I do not see big problems with what you suggested.

@firebird-automations
Copy link
Collaborator Author

Commented by: @dyemanov

What's the problem with redirecting the gbak output to e.g. gzip?

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

There are no problems when you use gbak as utility, but if you want to run it service - there are problems. Certainly, it's possibke to hack it - create named pipe, start any compressing utility from one size and use that pipe as service output. But this requires access to server to start *zip, and one looses main services feature - ability to run tasks witout access to server.

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

Workflow: jira [ 13730 ] => Firebird [ 14096 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: PizzaProgram Ltd. (szakilaci)

I have used GBAK + 7zip for this:
CORE762?focusedCommentId=26272&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#⁠action_26272
but it turned out:

it is absolutely NOT SECURE !

Every separate windows process is visible including parameters. So it shows DB location + username + passwords during backup & restore.
(Even with a simple "task manager" or "process explorer" everything is visible. So it is a huge security risk.)

So YES, it would be really essential to be able to access the backup/restore filestream from API securely.

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

issuetype: Improvement [ 4 ] => Sub-task [ 5 ]

Parent: CORE5808 [ 22170 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

5808 includes zip compression - it's absolutely required for encrypted backups that are uncompressable. Therefore changed to sub-task.

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

Sorry, not 7zip - but plain zip support is added in 5808.
If there is real need to achieve better compression ratios we should think about adding compression _plugins_ - other people may need low CPU consumption (like in lz4), etc....

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 4.0 Beta 1 [ 10750 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant