| List: | Falcon Storage Engine | « Previous MessageNext Message » | |
| From: | Jim Starkey | Date: | February 16 2009 9:46pm |
| Subject: | Re: Patch for bug#42208 | ||
| View as plain text | |||
Vladislav Vaintroub wrote: > Hi Lars-Erik, > I wonder if adding 0x00 to the (binary) string values that already start > with 0x00 would not be less works that modifying index walker etc. This > looks like huge amount of work you have done (good) but I wonder if there is > a good reason for it. Assuming (binary) strings that start with 0x00 are > really seldom, prepending 0x00 to a key after a check is not going to be an > expensive operation. And that makes NULL *really* different from other index > values. And that allows maybe in some distant future index-only access, so > you can answer "is null/is not null" without extra accessing the record and > this is a real performance advantage. > > Why do you want to do that? Is the following sufficient: 1. A null is represented as either a zero length key or a missing segment in a multi-segment key. This collates lowest. 2. A zero length binary key is represented by a single byte of zero. 3. A binary key with a single zero byte is indistinquishable from a zero length (but non-null) key 4. A binary key with a leading zero byte and a subsequent non-zero byte will collate about #2 and #3. I don't think we really care about the ordering of a non-null, zero length key and and all zero binary key. I don't think anyone else should, either. -- Jim Starkey President, NimbusDB, Inc. 978 526-1376
| Thread | ||
|---|---|---|
| • Patch for bug#42208 | Lars-Erik Bjørk | 16 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 16 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 16 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 16 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 16 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 16 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 16 Feb |
| • Re: Patch for bug#42208 | Lars-Erik Bjørk | 17 Feb |
| • Re: Patch for bug#42208 | Kevin Lewis | 17 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Kevin Lewis | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Kevin Lewis | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Kevin Lewis | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • RE: Patch for bug#42208 | Vladislav Vaintroub | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | Kevin Lewis | 18 Feb |
| • Re: Patch for bug#42208 | Ann W. Harrison | 18 Feb |
| • Re: Patch for bug#42208 | MARK CALLAGHAN | 17 Feb |
| • Re: Patch for bug#42208 | Jim Starkey | 16 Feb |
