Issue Details (XML | Word | Printable)

Key: CORE-6213
Type: Improvement Improvement
Status: Open Open
Priority: Minor Minor
Assignee: Alexander Peshkov
Reporter: Basil A. Sidorov
Votes: 1
Watchers: 4
Operations

If you were logged in you would be able to see more operations.
Firebird Core

Add Zstandard support (native or via zlibwrapper)

Created: 27/Dec/19 03:06 AM   Updated: 27/Dec/19 06:15 AM
Component/s: None
Affects Version/s: None
Fix Version/s: None

File Attachments: 1. File README-zlibWrapper.md (8 kB)


QA Status: No test


 Description  « Hide
http://zstandard.net - stable and mature project, offered fast (de)compressor with many features and dual (BSD/GPL) licensing.
Firebird 3.0 may use WireCompression, but zlib are slow for modern gigabit link.
Fast (de)compression may be profitable for record chains in database file, for database crypt and so on.

For quick transition from zlib to zstd exist zlibwrapper as part of zstd source tree.

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Dmitry Yemanov added a comment - 27/Dec/19 04:43 AM
For record-level (de)compression I'd rather consider LZ4 instead.

Alexander Peshkov added a comment - 27/Dec/19 05:29 AM
WireCompression makes sense for slow links (like modem) in WAN case. For LAN with gigabit link it does not make sense. May be in WAN case with fast links zstandard will be efficient. BTW, does format of compressed stream differ for zlib/zstd?

Basil A. Sidorov added a comment - 27/Dec/19 06:15 AM
Customers may use LAN-WAN combination: EDS between branch office and, typically WireCompression are globally enabled in firebird.conf
zstd packet format, of course, are different from deflate packet format.