* Add sub-section to configure username and password for sync_replica with the ability to read its from a file or from an environment variable
Also fix use :@ characters in username and password
* Corrections after Dmitry Yemanov review
Fix opening a file if it is specified in absolute path
Also fix the error message if there are not enough permissions to open the file
* Add fixup separators also revert prefix if filename has relative path
* Create a parseSyncReplica function and move the code to better read it
* Add explicit to constructor SyncReplica class with a single non-default parameter
---------
Co-authored-by: Andrey Kravchenko <andrey.kravchenko@red-soft.ru>
* Add AUTO RELEASE TEMP BLOBID transaction option
It makes the transaction release temporary ID of user BLOB just after its materialization. It's useful for massive insertions of records with user-defined BLOBs because it eliminates the memory overhead caused by creating and keeping temporary IDs until the transaction ends. This option is used during the database restore.
* Place tokens in the correct sections
* Avoid repeated attempts to start a transaction with options that are not supported by the target server
* Correct AUTO RELEASE TEMP BLOBID description
* Check bad_tpb_form error for more reliable detection of unsupported transaction options
* Do not use unsupported options for transactions of parallel workers performing RestoreRelationTask
* Do not consider non-deterministic expressions as invariants in pre-filters
* Follow Adriano's suggestion
* Allow deterministic uncorrelated subqueries to be considered as invariants
* Make Remote provider collect wire statistics.
New info items to query wire stats counters.
* New ISQL commands to show wire statistics.
* Remove requirement to not mix local and remote handled items in the same info request.
* Follow @asfernandes suggestion about class members initialization.
* Make ctor explicit, as @sim1984 suggested
* Put isc_info_end into response buffer despite of its presence in info items.
* Group op_open_blob2, op_info_blob and op_get_segment into single physical packet.
It allows to prefetch and cache blob info and some blob data in single network roundtrip.
Return cached blob info, if present, without remote access.
* No need to reserve space for segment length.
Fixed typo.
Thanks to @dyemanov for comments.
* Add 'const' for parameter declaration, as @AlexPeshkoff suggested
* Use 'if constexpr' as @TreeHunter9 suggested.
Also, avoid hardcoded constants when possible.