List:Internals« Previous MessageNext Message »
From:Jay Pipes Date:June 8 2009 4:35pm
Subject:Re: Value objects and Protocol (WL#4760)
View as plain text  
Michael Widenius wrote:
> Hi!
> 
>>>>>> "Oystein" == Oystein Grovlen <ystein> writes:
> 
> Oystein> Konstantin Osipov wrote:
>>> * Øystein Grøvlen <Oystein.Grovlen@stripped> [09/05/22
> 21:05]:
>>>> So far my Value object knows nothing about arithmetics, all they know  
>>>> about is how to convert between types.  However, it needs to distinguish 
> 
>>>> between more than just four types.  For example, conversion between  
>>>> integer and string will be different for a Field_timestamp than for a  
>>>> Field_long.
>>> This just doesn't make sense to me. It's like saying that
>>> conversion between an integer and a string will be different
>>> depending whether this integer represents a datetime or, well, an
>>> integer. 
>>>
>>> Isn't it easier to say (and code) that a conversion from an
>>> integer to a string is not the same as conversion from a datetime to
>>> a string?  What am I missing?
> 
> Oystein> That's really what I tried to say.  Both integer and datetime will 
> Oystein> internally be represented by a longlong, but the conversion from 
> Oystein> longlong to string will be different.
> 
> Plese don't do that!
> 
> We want to add microsecond support to datetime and having datetime as
> longlong would make this quite hard to do!

Not really.  Lay the bits out like so:

| 63 | 62 | 61 | 60 | 59 | 58 | 57 | 56 |
| JD | JD | JD | JD | JD | JD | JD | JD |
| 55 | 54 | 53 | 52 | 51 | 50 | 49 | 48 |
| JD | JD | JD | JD | JD | JD | JD | JD |
| 47 | 46 | 45 | 44 | 43 | 42 | 41 | 40 |
| JD | JD | JD | JD | JD | JD | JD | JD |
| 39 | 38 | 37 | 36 | 35 | 34 | 33 | 32 |
| JD | JD | JD | uS | uS | uS | uS | uS |

| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 |
| uS | uS | uS | uS | uS | uS | uS | uS |
| 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
| uS | uS | uS | uS | uS | uS | uS | SS |
| 15 | 14 | 13 | 12 | 11 | 10 | 09 | 08 |
| SS | SS | SS | SS | SS | SS | SS | SS |
| 07 | 06 | 05 | 04 | 03 | 02 | 01 | 00 |
| SS | SS | SS | SS | SS | SS | SS | SS |

Where:

JD = Julian Day Number
uS = microseconds up to 1,000,000
SS = seconds in day up to 86400

Julian Day Number stored in 27 bits will limit the capacity of the field 
to -4713 B.C to July 23rd, 362763 A.D. but I think that's sufficient :)

Cheers,

Jay
Thread
Value objects and Protocol (WL#4760)Øystein Grøvlen22 May
  • Re: Value objects and Protocol (WL#4760)Konstantin Osipov22 May
    • Re: Value objects and Protocol (WL#4760)Alex Esterkin22 May
      • Re: Value objects and Protocol (WL#4760)Brian Aker22 May
        • Re: Value objects and Protocol (WL#4760)Alex Esterkin22 May
          • Re: Value objects and Protocol (WL#4760)Brian Aker22 May
          • Re: Value objects and Protocol (WL#4760)Sergei Golubchik23 May
        • Re: Value objects and Protocol (WL#4760)Konstantin Osipov23 May
          • Re: Value objects and Protocol (WL#4760)Brian Aker23 May
    • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen22 May
      • Re: Value objects and Protocol (WL#4760)Konstantin Osipov22 May
        • Re: Value objects and Protocol (WL#4760)Alex Esterkin22 May
          • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen25 May
        • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen24 May
          • Re: Value objects and Protocol (WL#4760)Konstantin Osipov24 May
      • Re: Value objects and Protocol (WL#4760)Konstantin Osipov23 May
        • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen25 May
          • Re: Value objects and Protocol (WL#4760)Michael Widenius6 Jun
            • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen8 Jun
            • Re: Value objects and Protocol (WL#4760)Jay Pipes8 Jun
              • Re: Value objects and Protocol (WL#4760)Jay Pipes8 Jun
  • Re: Value objects and Protocol (WL#4760)Jay Pipes24 May
    • Re: Value objects and Protocol (WL#4760)Øystein Grøvlen25 May
      • Re: Value objects and Protocol (WL#4760)Jay Pipes26 May
    • Re: [Drizzle-discuss] Value objects and Protocol (WL#4760)Jim Starkey28 May
Re: Value objects and Protocol (WL#4760)Brian Aker22 May