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

Make it possible to use API to do remote backups/restores [CORE2666] #3070

Closed
firebird-issue-importer opened this issue Oct 5, 2009 · 25 comments
Closed

Comments

@firebird-issue-importer
Copy link

@firebird-issue-importer firebird-issue-importer commented Oct 5, 2009

Submitted by: Poul Dige (tabulex)

Is related to CORE2984
Block progress on JDBC256
Replaces CORE762
Is related to QA619

Attachments:
2666.patch
2666-with-restore.patch.bz2

Votes: 3

Today you can use the API remotely to create a serverside backup. You can use GBAK to create a remote backup (e.g. via Internet). But you can't use API to create remote backup, i.e. create a backup serverside and flush it to the client.

As using GBAK is very very slow over internet (testcase 10MB database backup takes less than 2 seconds when done locally, and more than 5 minutes through a 20MBit internet connection) ) it is a must to improve this function to make it possible to offer remote hosting for customers.

Commits: e74a496 477e14a

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 5, 2009

Modified by: @AlexPeshkoff

assignee: Alexander Peshkov [ alexpeshkoff ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 5, 2009

Modified by: @AlexPeshkoff

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

Target: 3.0.0 [ 10048 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 5, 2009

Commented by: @AlexPeshkoff

Poul, I've marked it as planned for 3.0, but this does not mean that private build of 2.5 for you is not possible. Let's return to it after 2.5 official release.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 19, 2009

Modified by: @dyemanov

Fix Version: 3.0 Alpha 1 [ 10331 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 27, 2010

Commented by: @AlexPeshkoff

This patch for firebird 2.5 makes it possible to do fast backup of databases, using services.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 27, 2010

Modified by: @AlexPeshkoff

Attachment: 2666.patch [ 11613 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented May 6, 2010

Modified by: @AlexPeshkoff

Link: This issue is related to CORE2984 [ CORE2984 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 6, 2011

Commented by: @AlexPeshkoff

Patch with restore should be applied to clean 2.5 sources.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 6, 2011

Modified by: @AlexPeshkoff

Attachment: 2666-with-restore.patch.bz2 [ 11941 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented May 13, 2012

Commented by: PizzaProgram Ltd. (szakilaci)

Is it possible to include this feature in 2.5 final binary? (Not just as a patch? Sorry, I don't know, how to apply it.)
Would be nice, if it would be "official".
It's hard to locate the proper gbak.exe, becase of too many directory variants in "Win" enviroment.
Waiting for this possibility since 1.0 version.
Also would be nice, if would be able to send/recieve as a stream, to be able to de/encrypt the .fbk file in real time, before opening/saving from/to client's hdd.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 6, 2012

Commented by: @AlexPeshkoff

Code has been well tested by IbPhoenix customers, therefore currently it seems OK to add this feature to 2.5 branch. Specially taking into an account that we already have some new features in it.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 6, 2012

Modified by: @AlexPeshkoff

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

Fix Version: 2.5.2 [ 10450 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 10, 2012

Commented by: @dyemanov

Alex, some docs about the feature is needed for this to be included into the v2.5 branch.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 14, 2012

Commented by: @AlexPeshkoff

Certainly
Moreover - we have a kind of, written for IbPhoenix clients

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 18, 2012

Commented by: @dyemanov

In order to be included into 2.5.2, the patch must be immediately ready. Ideally, it should also be committed into FB3, so that it was known to be compatible with the new architecture as well. Otherwise, it has to wait until 2.5.3.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 20, 2012

Modified by: @AlexPeshkoff

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

resolution: Fixed [ 1 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 24, 2012

Modified by: @mrotteveel

Link: This issue block progress on JDBC256 [ JDBC256 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 16, 2012

Commented by: Denis Pereira Raymundo (denistek)

I think this feature makes room for weakness in Firebird. For if a person anywhere in the world to discover the path of the database, which is not very hard, and find the password, get an updated copy of data whenever it wants. Before one had to be physically on site database or getting a remote access, which was much more difficult.

I think it should have a setting in firebird to accept doing this type of operation or not. So we could enable it when needed.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 16, 2012

Commented by: @AlexPeshkoff

Read carefully issue name - "to use API". It was possible to use gbak utility to do remote backups since first FB days and even before. The reason to use services API is just to make it a bit faster.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Dec 12, 2012

Modified by: @dyemanov

Link: This issue replaces CORE762 [ CORE762 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Feb 13, 2013

Commented by: PizzaProgram Ltd. (szakilaci)

Can someone please write an example here how to call this new feature from API ?
Is there already any know Delphi component that can handle it?
Thanks !

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Feb 13, 2013

Commented by: @AlexPeshkoff

From doc/README.services_extension:
"A sample of how services API should be used for remote backup and restore can be found in source code of fbsvcmgr."
It's very simple (not to say trivial) utility, separate _working_ sample will not be easier to understand.

What about delphi - no idea, and not good place to ask.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Feb 13, 2013

Commented by: @pmakowski

About Delphi, you can check UIB, usually it is up to date for all API
just do a check out from the repository : http://sourceforge.net/projects/uib/develop

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Sep 25, 2015

Modified by: @pcisar

Link: This issue is related to QA619 [ QA619 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jan 18, 2016

Modified by: @pavel-zotov

QA Status: No test

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

Successfully merging a pull request may close this issue.

None yet
2 participants