我有一个处理时区的应用程序,所以自然我希望能够查看Postgresql中的时区列表。Postgresql:错误:时区目录堆栈溢出
我想查看所有可用时区使用以下命令:
SELECT * FROM pg_timezone_names;
它打印以下错误:
ERROR: timezone directory stack overflow
我甚至尝试限制的结果,并收到了同样的错误:
SELECT * FROM pg_timezone_names LIMIT 10;
起初我以为它可能只是我有选择的IDE有问题,但我试图在命令行上运行相同的SQL查询并收到相同的错误。在我的生活中,我无法找到这个问题的答案。任何信息都有帮助。谢谢!
编辑:我在Gentoo上使用Postgresql 9.3。 postgresql-server的自编译版本。
注:我可以查询pg_timezone_abbrevs表就好了,只是不是pg_timezone_names。
Postgres您使用的是哪个版本?什么OS?你使用二进制发行版,还是自己编译它?如果是这样,你是否使用了'--with-system-tzdata'标志[在本页描述](http://www.postgresql.org/docs/9.3/static/install-procedure.html)? – 2014-09-25 23:01:22
@MattJohnson我更新了我的问题以包含该信息。在portage中,Gentoo的软件包管理器没有--with-system-tzdata标志,所以我认为它是嵌入式的。我可以很好地查询pg_timezone_abbrevs,而不是名称表。 – DerekE 2014-09-25 23:17:33
我浏览了ebuild for postgresql-server,看起来--with-system-tzdata实际上是内置的。http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-db /postgresql-server/postgresql-server-9.3.4.ebuild?view=markup – DerekE 2014-09-25 23:32:29