Page 1 of 1

Interbase.Wirecompression and threads

Posted: Tue 07 Dec 2021 17:00
by FredS
In FB4 we get a new field (MON$WIRE_COMPRESSED) in MON$ATTACHMENTS and it shows the three connections for my PID, two of them without Compression..

Code: Select all

MON$REMOTE_PID  MON$WIRE_COMPRESSED
2284			true
2284			false
2284			false
When I execute one of those connections threaded and fire this SQL inside the Execute procedure I get False..

Code: Select all

cWireCompSQL = 'SELECT RDB$GET_CONTEXT(''SYSTEM'', ''WIRE_COMPRESSED'') wire_comp FROM rdb$database';
These connections are created by passing in the 'ConnectionString' of the main TUniConnection yet aren't being compressed.. how come?

Re: Interbase.Wirecompression and threads

Posted: Wed 08 Dec 2021 18:41
by ViktorV
In order to perform this task in current version of UniDAC you need to use InterBase.Params option for each instance of TUniConnection component. For example:

Code: Select all

Con.SpecificOptions.Values['InterBase.Params'] := 'WireCompression=true'; 
Please keep in mind that this property is not used in ConnectString. However, as we mentioned before, the WireCompression option for the Connection component is finally added and will be used in ConnectString option. This change will be included in the new UniDAC build, which we plan to release this week.