[PgFoundry] Unsigned Data Types

From: "Ryan Bradetich" <rbradetich(at)gmail(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: [PgFoundry] Unsigned Data Types
Date: 2008-08-15 06:00:32
Message-ID: e739902b0808142300j6f19ac9difa8fab753e568b9b@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello all,

Here is the first pass at the unsigned data type I have been working on.

I am planning on adding these to the September 2008 commitfest wiki page.
The unsigned data type is not targeted for core, but for the uint PgFoundry
project.

The uint.c.gz file is the main source file for the uint1, uint2, and uint4
data types.
The uing.sql.gz file contains the SQL statements to add the unsigned data
type to the database.
The pg_atoui.c.gz file is based off the function in the PostgreSQL source
code but works for unsigned data types instead of signed data types.
The Makefile is used to build the unsigned data type shared library on
Linux.

The tests.tar.gz is my unit test suit that I worked on to make sure the
unsigned integer types worked as expected.

The tests cover cases like:
* table creation with the unsigned integer types.
* comparision operations.
* INSERT statements (binary and text forms).
* COPY statements (binary and text forms).
* unique btree index support.

In addition to correctness issues, I would also appreciate feedback on best
practices and portability concerns.

For example:
I doubt my Makefiles are very portable.
What is the proper solution to handle this? pgxs?

Thanks,

- Ryan

Attachment Content-Type Size
uint.c.gz application/x-gzip 1.9 KB
uint.sql.gz application/x-gzip 1.3 KB
pg_atoui.c.gz application/x-gzip 1.1 KB
Makefile application/octet-stream 334 bytes
tests.tar.gz application/x-gzip 4.7 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Stehule 2008-08-15 06:22:58 Re: proposal sql: labeled function params
Previous Message Tom Lane 2008-08-15 04:27:04 Re: proposal sql: labeled function params