mirror of
https://github.com/fluencelabs/redis
synced 2025-03-17 16:10:50 +00:00
Fix ziplist prevlen encoding description. See #4705.
This commit is contained in:
parent
ffde73c57d
commit
813960dbdd
@ -53,20 +53,20 @@
|
||||
* <prevlen> <encoding>
|
||||
*
|
||||
* The length of the previous entry, <prevlen>, is encoded in the following way:
|
||||
* If this length is smaller than 255 bytes, it will only consume a single
|
||||
* If this length is smaller than 254 bytes, it will only consume a single
|
||||
* byte representing the length as an unsinged 8 bit integer. When the length
|
||||
* is greater than or equal to 255, it will consume 5 bytes. The first byte is
|
||||
* set to 255 (FF) to indicate a larger value is following. The remaining 4
|
||||
* is greater than or equal to 254, it will consume 5 bytes. The first byte is
|
||||
* set to 254 (FE) to indicate a larger value is following. The remaining 4
|
||||
* bytes take the length of the previous entry as value.
|
||||
*
|
||||
* So practically an entry is encoded in the following way:
|
||||
*
|
||||
* <prevlen from 0 to 254> <encoding> <entry>
|
||||
* <prevlen from 0 to 253> <encoding> <entry>
|
||||
*
|
||||
* Or alternatively if the previous entry length is greater than 254 bytes
|
||||
* Or alternatively if the previous entry length is greater than 253 bytes
|
||||
* the following encoding is used:
|
||||
*
|
||||
* 0xFF <4 bytes unsigned little endian prevlen> <encoding> <entry>
|
||||
* 0xFE <4 bytes unsigned little endian prevlen> <encoding> <entry>
|
||||
*
|
||||
* The encoding field of the entry depends on the content of the
|
||||
* entry. When the entry is a string, the first 2 bits of the encoding first
|
||||
|
Loading…
x
Reference in New Issue
Block a user