[Mono-list] [Npgsql] Protocol 3.0 implementation code in gborg cvs and binary datatype support

Francisco Figueiredo Jr. fxjrlists@yahoo.com.br
Sun, 21 Sep 2003 17:49:02 -0300


Hi all.

It is a great pleasure to say that finally the Npgsql implementation of 
postgresql protocol 3.0 code is in cvs.

Npgsql is a postgresql .net data provider which works on Mono, 
portable.net and ms .net implementation.

This code will allow us to benefit from the new features of the 
protocol, as better handling of parameter types, table description, 
server version and binary transfer of data without have to use a binary 
cursor.

This protocol will also allow a better implementation of 
NpgsqlDataReader as we will be able to retrieve data in a chuncks of 
rows, (i.e: 30 rows at time) without have to use server side cursor as 
now you can specify in the protocol how many rows to be returned before 
Npgsql have to send another request to get the remaining rows.


Another new feature is the binary datatype support. While this isn't yet 
blob support, you can insert and retrieve binary data which use bytea 
data type in the server. The type is supported through the DbType.Binary 
enum value.


Another thing to note is that users using postgresql 7.3 or earlier will 
notice in log the message "invalid protocol version" messages when using 
Npgsql. This is caused by Npgsql because it tries first to connect using 
the 3.0 protocol and falls back to 2.0 if not successfull.

Please, grab the latest cvs code and give it a try.
(http://gborg.postgresql.org/project/npgsql)

And please report back any problems you have as well as comments, 
suggestions and bug fixes :)

Synchronization to the Mono code base will happen soon.

Thanks all for attention.



-- 
Regards,

Francisco Figueiredo Jr.

------
"My grandfather once told me that there are two
kinds of people: those
who work and those who take the credit. He told me
to try to be in the
first group; there was less competition there."
- Indira Gandhi