Re: Defining a "tinyint" data type - one byte unsigned

From: Shachar Shemesh <psql(at)shemesh(dot)biz>
To: PostgreSQL Patches <pgsql-patches(at)postgresql(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: Defining a "tinyint" data type - one byte unsigned
Date: 2004-03-11 05:17:29
Message-ID: 404FF669.7080609@shemesh.biz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Shachar Shemesh wrote:

> Tom Lane wrote:
>
>>
>> I don't think we've really solved the numeric-hierarchy casting problems
>> well enough to be able to stand adding another member of the hierarchy.
>> In particular, what impact is this going to have on implicit typing of
>> integer constants?
>>
>> regards, tom lane
>>
>>
> The nice thing about a one byte integer is that it's at the very
> bottom of the food chain. Since casting upwards is implicit and
> downwards is explicit, NOTHING casts implicitly to it. As such I'm
> hoping (like I said in my original post - I'm no expert) that this
> will be a harmless addition.
>
> If there is anything you can think of that will allow me to verify
> this claim, do let me know.

Hmm - replying to my own post.

I did cut one corner, in that I did not implement tiny->int8 and
tiny->non integers yet. That is, however, an implementation detail
rather than a principal problem. If that is the whole problem, I'll add
those as well. I would rather, before doing the extra work, hear that
this is indeed all that is needed to get it in.

Having said that, some sort of implicit casts of implicit casts results
does seem necessary in postgres. I don't think that leaving this patch
out will be the way to solve this.

--
Shachar Shemesh
Lingnu Open Systems Consulting
http://www.lingnu.com/

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Shachar Shemesh 2004-03-11 05:28:28 Re: Defining a "tinyint" data type - one byte unsigned
Previous Message Shachar Shemesh 2004-03-11 05:09:33 Re: Defining a "tinyint" data type - one byte unsigned