diff --git a/ChangeLog b/ChangeLog index bea1f21e6d..589e5944bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2002-12-30 Matthew Vanecek + * src/backend/postgres/PostgresBackend.c: Added some ENTER + and LEAVE statements to more of the functions. + + * src/backend/postgres/upgrade.c: Changed all the DATETIME + SQL data types to TIMESTAMP. DATETIME will not be in Postgresql + as of 7.3. + + * src/backend/postgres/functions.sql: Changed all the DATETIME + types in the DDL to TIMESTAMP. + + * src/backend/postgres/table-create.sql: Changed all the DATETIME + types in the DDL to TIMESTAMP. + + * src/backend/postgres/table-audit.sql: Changed all the DATETIME + types in the DDL to TIMESTAMP. + 2002-12-30 Christian Stimming * src/app-utils/prefs.scm, src/app-utils/global-options.c: Rename diff --git a/src/backend/postgres/PostgresBackend.c b/src/backend/postgres/PostgresBackend.c index 274fe38ab7..84c2e13f37 100644 --- a/src/backend/postgres/PostgresBackend.c +++ b/src/backend/postgres/PostgresBackend.c @@ -148,13 +148,15 @@ pgendAccountLookup (PGBackend *be, const GUID *acct_guid) GList *node; Account * acc = NULL; + ENTER("guid = %s", acct_guid); for (node=be->blist; node; node=node->next) { GNCBook *book = node->data; acc = xaccAccountLookup (acct_guid, book); - if (acc) return acc; + if (acc) { LEAVE("acc = %p", acc); return acc; } } + LEAVE("acc = (null)"); return NULL; } @@ -164,13 +166,15 @@ pgendTransLookup (PGBackend *be, const GUID *txn_guid) GList *node; Transaction * txn = NULL; + ENTER("guid = %s", txn_guid); for (node=be->blist; node; node=node->next) { GNCBook *book = node->data; txn = xaccTransLookup (txn_guid, book); - if (txn) return txn; + if (txn) { LEAVE("txt = %p", txn); return txn; } } + LEAVE("txn = (null"); return NULL; } @@ -180,13 +184,15 @@ pgendSplitLookup (PGBackend *be, const GUID *split_guid) GList *node; Split * split = NULL; + ENTER("guid = %s", split_guid); for (node=be->blist; node; node=node->next) { GNCBook *book = node->data; split = xaccSplitLookup (split_guid, book); - if (split) return split; + if (split) { LEAVE("split = %p", split); return split; } } + LEAVE("split = (null)"); return NULL; } @@ -196,11 +202,12 @@ pgendPriceLookup (PGBackend *be, const GUID *price_guid) GList *node; GNCPrice * price = NULL; + ENTER("guid = %s", price_guid); for (node=be->blist; node; node=node->next) { GNCBook *book = node->data; price = gnc_price_lookup (price_guid, book); - if (price) return price; + if (price) { LEAVE("price = %p", price); return price; } } return NULL; @@ -212,13 +219,15 @@ pgendGUIDType (PGBackend *be, const GUID *guid) GList *node; GNCIdType tip = GNC_ID_NONE; + ENTER("guid = %s", guid); for (node=be->blist; node; node=node->next) { GNCBook *book = node->data; tip = xaccGUIDType (guid, book); - if (GNC_ID_NONE != tip) return tip; + if (GNC_ID_NONE != tip) { LEAVE("tip = %s", tip); return tip; } } + LEAVE("tip = NULL"); return GNC_ID_NONE; } @@ -2420,6 +2429,8 @@ pgendInit (PGBackend *be) int i; Timespec ts; + ENTER(" "); + /* initialize global variable */ nullguid = *(xaccGUIDNULL()); @@ -2482,6 +2493,7 @@ pgendInit (PGBackend *be) be->session = NULL; be->book = NULL; be->blist = NULL; + LEAVE(" "); } /* ============================================================= */ @@ -2491,9 +2503,11 @@ pgendNew (void) { PGBackend *be; + ENTER(" "); be = g_new0 (PGBackend, 1); pgendInit (be); + LEAVE(" ") return (Backend *) be; } diff --git a/src/backend/postgres/functions.sql b/src/backend/postgres/functions.sql index 5d2fd6e7c4..cb307b2d78 100644 --- a/src/backend/postgres/functions.sql +++ b/src/backend/postgres/functions.sql @@ -12,7 +12,7 @@ -- utility functions to compute checkpoint balance subtotals -CREATE FUNCTION gncSubtotalBalance (CHAR(32), DATETIME, DATETIME) +CREATE FUNCTION gncSubtotalBalance (CHAR(32), TIMESTAMP, TIMESTAMP) RETURNS INT8 AS 'SELECT INT8(sum(gncEntry.amount)) FROM gncEntry, gncTransaction @@ -22,7 +22,7 @@ CREATE FUNCTION gncSubtotalBalance (CHAR(32), DATETIME, DATETIME) gncTransaction.date_posted BETWEEN $2 AND $3' LANGUAGE 'sql'; -CREATE FUNCTION gncSubtotalClearedBalance (CHAR(32), DATETIME, DATETIME) +CREATE FUNCTION gncSubtotalClearedBalance (CHAR(32), TIMESTAMP, TIMESTAMP) RETURNS INT8 AS 'SELECT INT8(sum(gncEntry.amount)) FROM gncEntry, gncTransaction @@ -33,7 +33,7 @@ CREATE FUNCTION gncSubtotalClearedBalance (CHAR(32), DATETIME, DATETIME) gncEntry.reconciled <> \\'n\\'' LANGUAGE 'sql'; -CREATE FUNCTION gncSubtotalReconedBalance (CHAR(32), DATETIME, DATETIME) +CREATE FUNCTION gncSubtotalReconedBalance (CHAR(32), TIMESTAMP, TIMESTAMP) RETURNS INT8 AS 'SELECT INT8(sum(gncEntry.amount)) FROM gncEntry, gncTransaction diff --git a/src/backend/postgres/table-audit.sql b/src/backend/postgres/table-audit.sql index dfe3f6d1ff..9c33d59e6f 100644 --- a/src/backend/postgres/table-audit.sql +++ b/src/backend/postgres/table-audit.sql @@ -29,7 +29,7 @@ CREATE TABLE gncAuditTrail ( sessionGuid CHAR(32) NOT NULL, -- who changed it - date_changed DATETIME, -- when they changed it + date_changed TIMESTAMP, -- when they changed it change CHAR NOT NULL, objtype CHAR NOT NULL ); @@ -78,7 +78,7 @@ CREATE TABLE gncEntryTrail ( memo TEXT, action TEXT, reconciled CHAR DEFAULT 'n', - date_reconciled DATETIME, + date_reconciled TIMESTAMP, amount INT8 DEFAULT '0', value INT8 DEFAULT '0', iguid INT4 DEFAULT 0 @@ -90,7 +90,7 @@ CREATE TABLE gncPriceTrail ( priceGuid CHAR(32) NOT NULL, -- override, not a primary key anymore commodity TEXT NOT NULL CHECK (commodity <>''), currency TEXT NOT NULL CHECK (commodity <>''), - time DATETIME, + time TIMESTAMP, source TEXT, type TEXT, valueNum INT8 DEFAULT '0', @@ -103,9 +103,9 @@ CREATE INDEX gncPriceTrail_price_idx ON gncPriceTrail (priceGuid); CREATE TABLE gncTransactionTrail ( transGuid CHAR(32) NOT NULL, -- override, not a primary key anymore - last_modified DATETIME DEFAULT 'NOW', - date_entered DATETIME, - date_posted DATETIME, + last_modified TIMESTAMP DEFAULT 'NOW', + date_entered TIMESTAMP, + date_posted TIMESTAMP, num TEXT, description TEXT, currency TEXT NOT NULL CHECK (currency <> ''), @@ -161,7 +161,7 @@ CREATE TABLE gncKVPvalue_timespecTrail ( iguid INT4, ipath INT4, type char(4), - data DATETIME + data TIMESTAMP ) INHERITS (gncAuditTrail); CREATE TABLE gncKVPvalue_listTrail ( diff --git a/src/backend/postgres/table-create.sql b/src/backend/postgres/table-create.sql index 2d5d638e85..b916c0e075 100644 --- a/src/backend/postgres/table-create.sql +++ b/src/backend/postgres/table-create.sql @@ -27,7 +27,7 @@ CREATE TABLE gncVersion ( minor INT NOT NULL, rev INT DEFAULT '0', name TEXT UNIQUE NOT NULL CHECK (name <> ''), - date DATETIME DEFAULT 'NOW' + date TIMESTAMP DEFAULT 'NOW' ); -- Commodity structure @@ -72,9 +72,9 @@ CREATE TABLE gncAccount ( CREATE TABLE gncTransaction ( transGuid CHAR(32) PRIMARY KEY, - last_modified DATETIME DEFAULT 'NOW', - date_entered DATETIME, - date_posted DATETIME, + last_modified TIMESTAMP DEFAULT 'NOW', + date_entered TIMESTAMP, + date_posted TIMESTAMP, num TEXT, description TEXT, currency TEXT NOT NULL CHECK (currency <> ''), @@ -94,7 +94,7 @@ CREATE TABLE gncEntry ( memo TEXT, action TEXT, reconciled CHAR DEFAULT 'n', - date_reconciled DATETIME, + date_reconciled TIMESTAMP, amount INT8 DEFAULT '0', value INT8 DEFAULT '0', iguid INT4 DEFAULT 0 @@ -114,8 +114,8 @@ CREATE INDEX gncEntry_trn_idx ON gncEntry (transGuid); CREATE TABLE gncCheckpoint ( accountGuid CHAR(32) NOT NULL, - date_start DATETIME NOT NULL, - date_end DATETIME NOT NULL, + date_start TIMESTAMP NOT NULL, + date_end TIMESTAMP NOT NULL, commodity TEXT NOT NULL CHECK (commodity <>''), type TEXT DEFAULT 'simple', balance INT8 DEFAULT '0', @@ -131,7 +131,7 @@ CREATE TABLE gncPrice ( priceGuid CHAR(32) PRIMARY KEY, commodity TEXT NOT NULL CHECK (commodity <>''), currency TEXT NOT NULL CHECK (commodity <>''), - time DATETIME, + time TIMESTAMP, source TEXT, type TEXT, valueNum INT8 DEFAULT '0', @@ -157,8 +157,8 @@ CREATE TABLE gncSession ( hostname TEXT, login_name TEXT, gecos TEXT, - time_on DATETIME NOT NULL, - time_off DATETIME NOT NULL DEFAULT 'INFINITY' + time_on TIMESTAMP NOT NULL, + time_off TIMESTAMP NOT NULL DEFAULT 'INFINITY' ); @@ -230,7 +230,7 @@ CREATE TABLE gncKVPvalue_guid ( -- CREATE INDEX gncKVPvalue_guid_iguid_idx ON gncKVPvalue_guid (iguid); CREATE TABLE gncKVPvalue_timespec ( - data DATETIME + data TIMESTAMP -- PRIMARY KEY (iguid, ipath) ) INHERITS (gncKVPvalue); diff --git a/src/backend/postgres/upgrade.c b/src/backend/postgres/upgrade.c index 9bed95d63a..1cf5a6cfc2 100644 --- a/src/backend/postgres/upgrade.c +++ b/src/backend/postgres/upgrade.c @@ -71,7 +71,7 @@ pgendVersionTable (PGBackend *be) " minor INT NOT NULL,\n" " rev INT DEFAULT '0',\n" " name TEXT UNIQUE NOT NULL CHECK (name <> ''),\n" - " date DATETIME DEFAULT 'NOW' \n" + " date TIMESTAMP DEFAULT 'NOW' \n" ");\n" "INSERT INTO gncVersion (major,minor,rev,name) VALUES \n" " (1,0,0,'Version Table');"; @@ -227,12 +227,12 @@ fix_reconciled_balance_func (PGBackend *be) FINISH_QUERY(be->connection); p = "DROP FUNCTION " - "gncSubtotalReconedBalance (CHAR(32), DATETIME, DATETIME);"; + "gncSubtotalReconedBalance (CHAR(32), TIMESTAMP, TIMESTAMP);"; SEND_QUERY (be,p, ); FINISH_QUERY(be->connection); p = "CREATE FUNCTION " - "gncSubtotalReconedBalance (CHAR(32), DATETIME, DATETIME)" + "gncSubtotalReconedBalance (CHAR(32), TIMESTAMP, TIMESTAMP)" "RETURNS INT8 " "AS 'SELECT INT8(sum(gncEntry.amount)) " "FROM gncEntry, gncTransaction " @@ -266,7 +266,7 @@ add_kvp_timespec_tables (PGBackend *be) FINISH_QUERY(be->connection); p = "CREATE TABLE gncKVPvalue_timespec ( " - " data DATETIME " + " data TIMESTAMP " ") INHERITS (gncKVPvalue);"; SEND_QUERY (be,p, ); FINISH_QUERY(be->connection); @@ -275,7 +275,7 @@ add_kvp_timespec_tables (PGBackend *be) " iguid INT4, " " ipath INT4, " " type char(4), " - " data DATETIME " + " data TIMESTAMP " ") INHERITS (gncAuditTrail);"; SEND_QUERY (be,p, ); FINISH_QUERY(be->connection);