From:
Hannu Krosing <hannu(at)2ndQuadrant(dot)com>
To:
Robert Haas <robertmhaas(at)gmail(dot)com>
Cc:
Stephen Frost <sfrost(at)snowman(dot)net>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>,
Josh Berkus <josh(at)agliodbs(dot)com>,
pgsql-hackers(at)postgresql(dot)org
Subject:
Re: Proposal: Store "timestamptz" of database creation
on "pg_database"
Date:
2013-01-03 10:54:03
Message-ID:
50E5634B.6050803@2ndQuadrant.com (view raw or flat )
Thread:
2012-12-27 00:48:52 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2012-12-27 01:08:13 from Josh Berkus <josh(at)agliodbs(dot)com>
2012-12-27 01:30:29 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-27 04:13:54 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-12-27 04:32:44 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-27 05:33:01 from Josh Berkus <josh(at)agliodbs(dot)com>
2012-12-27 12:08:56 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-27 16:04:42 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-27 23:02:36 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2012-12-28 02:14:58 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-28 10:04:29 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-28 12:05:57 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2012-12-28 18:53:05 from Josh Berkus <josh(at)agliodbs(dot)com>
2012-12-29 14:12:07 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-29 14:34:41 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-29 14:45:00 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2012-12-29 14:59:49 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-29 15:26:18 from Andres Freund <andres(at)2ndquadrant(dot)com>
2012-12-29 15:49:23 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 01:35:00 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 02:01:48 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 10:03:17 from Hannu Krosing <hannu(at)krosing(dot)net>
2013-01-03 10:18:08 from Andres Freund <andres(at)2ndquadrant(dot)com>
2013-01-03 11:34:23 from Hannu Krosing <hannu(at)krosing(dot)net>
2013-01-03 13:17:46 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 13:40:33 from Hannu Krosing <hannu(at)krosing(dot)net>
2013-01-03 13:42:49 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 13:46:20 from Hannu Krosing <hannu(at)2ndQuadrant(dot)com>
2013-01-03 14:09:22 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 16:15:31 from Hannu Krosing <hannu(at)2ndQuadrant(dot)com>
2013-01-03 17:27:45 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 17:54:45 from Christopher Browne <cbbrowne(at)gmail(dot)com>
2013-01-03 20:26:09 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-04 18:07:37 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2013-01-05 15:48:40 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-05 16:04:43 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-05 17:59:30 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-05 19:31:53 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-07 00:54:48 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-07 13:42:32 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-08 15:08:29 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-08 22:09:23 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2013-01-08 22:12:21 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2013-01-08 22:17:41 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-09 04:42:45 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2013-01-08 13:47:27 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 14:18:38 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2013-01-03 10:20:09 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2013-01-03 13:15:51 from Stephen Frost <sfrost(at)snowman(dot)net>
2012-12-27 22:58:36 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 01:52:27 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 02:02:09 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2013-01-03 02:12:06 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 04:04:43 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 10:28:15 from Bernd Helmle <mailings(at)oopsware(dot)de>
2013-01-03 10:54:03 from Hannu Krosing <hannu(at)2ndQuadrant(dot)com>
2013-01-03 02:06:01 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 08:16:59 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2013-01-03 16:38:49 from Greg Stark <stark(at)mit(dot)edu>
2013-01-03 04:08:26 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 13:13:11 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 13:33:47 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 13:40:09 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 13:41:23 from Stephen Frost <sfrost(at)snowman(dot)net>
2013-01-03 15:00:05 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 14:12:25 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2013-01-03 14:18:02 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2013-01-03 14:22:36 from Robert Haas <robertmhaas(at)gmail(dot)com>
2013-01-03 14:30:12 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
2013-01-03 15:17:07 from Fabrízio de Royes Mello <fabriziomello(at)gmail(dot)com>
2013-01-03 16:17:33 from Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Lists:
pgsql-hackers
On 01/03/2013 05:04 AM, Robert Haas wrote:
> O
> Yeah, I don't think this is really a problem. I would expect the psql
> support for this feature to be not a whole lot more complicated than
> that. Sure, it might be more than 5 lines of raw code if it requires
> an additional version of some query for which we're currently using
> the same version for both PG93 and PG92, but it's hardly fair to cite
> that as an argument for not doing this. Such changes are almost
> entirely boilerplate.
Here is a pl/python function which gives you "the real" database
creation time.
CREATE OR REPLACE FUNCTION database_create_ts(INOUT dbname text, OUT
ctime timestamp)
RETURNS SETOF RECORD
LANGUAGE plpythonu AS
$$
import os, time
res = plpy.execute("""select datname,
current_setting('data_directory') ddir,
oid as dboid
from pg_database where datname like '%s';""" %
dbname)
for row in res:
dbpath = '%(ddir)s/base/%(dboid)s' % row
stat = os.stat(dbpath)
yield row['datname'], '%04d-%02d-%02d %02d:%02d:%02d+00' %
time.gmtime(stat.st_ctime)[:6]
$$;
SELECT * FROM database_create_ts('template%');
------------------
Hannu
In response to
pgsql-hackers by date
Next :From: Guillaume LelargeDate: 2013-01-03 10:56:31
Subject : Re: Behaviour of bgworker with SIGHUP
Previous :From : Bernd HelmleDate : 2013-01-03 10:28:15
Subject : Re: Proposal: Store "timestamptz" of database creation on
"pg_database"