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

Allow isc_info_svc_to_eof be used for sending binary stream to service [CORE5631] #5897

Open
firebird-automations opened this issue Oct 6, 2017 · 6 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @aafemt

Currently when backup is restored via services with stdin usage, only isc_info_svc_line is recognized for sending backup data and isc_info_svc_to_eof is silently ignored (which cause endless loop in application that try to use it).
isc_info_svc_line is supposed to be used with text data and using it for binary data is not good from several points of view (EOLN marks, encodings, etc). Binary data is better to be transferred using isc_info_svc_to_eof.
Creating of new info item would be not good for backward compatibility.

@firebird-automations
Copy link
Collaborator Author

Commented by: @AlexPeshkoff

When backup is restored isc_info_svc_line is used only for monitoring data returned by "-v" switch of gbak which is definitely nothing other than text data. Stdin data passed to service is treated as binary stream.

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

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

resolution: Won't Fix [ 2 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @aafemt

I'm talking about send_items, not query_items.

@firebird-automations
Copy link
Collaborator Author

Commented by: @pcisar

It's clear that choice to use isc_info_svc_line to mark chunk of stdin sent to service via SPB was not wise choice (to say it mildly). Both isc_info_svc_to_eof and isc_info_svc_line are normally used for service output (query items) and they were created just for that purpose. Using them to identify items going in other direction only caused this confusion. It's pointless to ask that isc_info_svc_to_eof should be supported here as well (as an alias), and it would cause only more confusion as people would expect that they would mean two different things that would work similarly as in query direction (which they can't). In fact id used to send data to restore service has no special meaning except to identify the data chunk (so no EOLN at play here etc.). It could be ANY number devs would choose. Was using svc_line logically correct? No. Changing it to proper one (by logic to isc_info_svc_stdin) would be best, but that would break all existing code. At least isc_info_svc_line has some logic we could live with, but support for isc_info_svc_to_eof alias has no logic at all.

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Resolved [ 5 ] => Closed [ 6 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @AlexPeshkoff

status: Closed [ 6 ] => Reopened [ 4 ]

assignee: Alexander Peshkov [ alexpeshkoff ]

resolution: Won't Fix [ 2 ] =>

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

2 participants