SQLite4
Check-in [eccdf70b22]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix typos in the VARINT documentation.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: eccdf70b22ec3a255b9090e557ceb9f848509b83
User & Date: drh 2013-01-20 02:52:43
Context
2013-01-24
18:24
Fix a string type compile warning. check-in: 11b2bf1628 user: stephan tags: trunk
2013-01-20
02:52
Fix typos in the VARINT documentation. check-in: eccdf70b22 user: drh tags: trunk
02:38
Fix a typo on the key-encoding documentation. check-in: b1ae0ca8c3 user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to www/varint.wiki.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<title>Variable-Length Integers</title>

A variable length integer is an encoding of 64-bit unsigned integers
into between 1 and 9 bytes.  The encoding has the following properties:

  1.  Smaller (and common) values use fewer bytes and take up less space
      than larger (and less common) values.

  2.  The length of any varint can be determined by looking at just the
      first byte of the encoding.

  3.  Lexicographical and numeric ordering for varints are the same.  Hence
      if a group of varints are order lexicographically (that is to say, if
      they  are order by memcmp() with shorted varints coming first) then
      those varints will also be in numeric order.  This property means
      that varints can be used as keys in the key/value backend storage
      and the records will occur in numerical order of the keys.

The encoding is described by algorithms to decode (convert from
varint to 8-byte unsigned integer) and to encode (convert from
8-byte unsigned integer to varint).  Treat each byte of the encoding





|







|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<title>Variable-Length Integers</title>

A variable length integer is an encoding of 64-bit unsigned integers
into between 1 and 9 bytes.  The encoding has the following properties:

  1.  Smaller (and more common) values use fewer bytes and take up less space
      than larger (and less common) values.

  2.  The length of any varint can be determined by looking at just the
      first byte of the encoding.

  3.  Lexicographical and numeric ordering for varints are the same.  Hence
      if a group of varints are order lexicographically (that is to say, if
      they  are order by memcmp() with shorter varints coming first) then
      those varints will also be in numeric order.  This property means
      that varints can be used as keys in the key/value backend storage
      and the records will occur in numerical order of the keys.

The encoding is described by algorithms to decode (convert from
varint to 8-byte unsigned integer) and to encode (convert from
8-byte unsigned integer to varint).  Treat each byte of the encoding