GlorpDBX - PostgresV2 Updates

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

GlorpDBX - PostgresV2 Updates

Sven Van Caekenberghe-2
Hi,

Today I tried to bring over some code of mine written for Pharo 1.3 using GlorpDBX and PostgresV2 to Pharo 2.0. Here are some commits that I made. I did not (yet) touch the configuration since I am not sure these changes apply to older versions.

Against http://squeaksource.com/PostgresV2

(the first 2 are older but where not yet picked up by the config)

---
Name: PostgresV2-SvenVanCaekenberghe.26
Author: SvenVanCaekenberghe
Time: 8 November 2011, 9:47:18 am
UUID: 8d3c478b-6e4b-43ec-bcd8-74c366222350
Ancestors: PostgresV2-YanniChiu.25

fixed timestamp with timezone parsing (old code assumed the timezone to be +HH:MM but this is no longer the case);
introduced PGConnection class>>#nextDateAndTimeFrom: that works with or without timezone and is more efficient;
PGConnection class>>#timestampConverter and #timestampWithTimezoneConverter now use #nextDateAndTimeFrom:
recategorized #nextBooleanFrom: #nextStringFrom: and readIntegerFrom: as private
---

---
Name: PostgresV2-SvenVanCaekenberghe.27
Author: SvenVanCaekenberghe
Time: 22 November 2011, 11:07:11 am
UUID: bf13f192-3282-41ff-ba12-fa4d038e14d5
Ancestors: PostgresV2-SvenVanCaekenberghe.26

extended PGConnection class>>#nextDateAndTimeFrom:
to handle optional fractional seconds and
to put them in the nanos part of DateAndTime;
the supported timestamp format is now
'YYYY-MM-DD HH:MM:SS[.ss...s][(+|-)HH]'
where the fractional seconds and the timezone are optional;
tested on pgsql 9.1.1
---

(the next one is critical because is causes bugs in MC)

---
Name: PostgresV2-SvenVanCaekenberghe.28
Author: SvenVanCaekenberghe
Time: 29 January 2013, 9:59:23.503 am
UUID: 46fb0983-cafa-4339-9360-30980ff6a4ba
Ancestors: PostgresV2-SvenVanCaekenberghe.27

removed Date[AndTime] class>>#year:month:day: and friends - they were wrong after some Pharo refactorings and have no place in PostgresV2 - they were overriding existing implementations for no good reason
---

Against http://squeaksource.com/DBXTalk

---
Name: Glorp-SvenVanCaekenberghe.87
Author: SvenVanCaekenberghe
Time: 29 January 2013, 12:32:48.106 pm
UUID: 8ccf4911-5086-4a15-9ac7-3906a5c38f1d
Ancestors: Glorp-SvenVanCaekenberghe.86

Extended PostgreSQLPlatform>>#convertSQLStringToByteArray:for: so that it now also handles the newer bytea hex format on top of the existing escape format (http://www.postgresql.org/docs/9.0/static/datatype-binary.html)
---

So the good thing is my code seems to work accessing a very recent Postgresql 9.2+.

Sven

PS: Thanks Mariano, Guillermo and Esteban for letting my in ;-)

--
Sven Van Caekenberghe
http://stfx.eu
Smalltalk is the Red Pill