Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos Mac OS X上带ICU补丁的Postgresql_Macos_Postgresql_Icu - Fatal编程技术网

Macos Mac OS X上带ICU补丁的Postgresql

Macos Mac OS X上带ICU补丁的Postgresql,macos,postgresql,icu,Macos,Postgresql,Icu,有人用Palle Girgensohn的ICU补丁在Mac OS X上构建Postgresql吗?如果是,您遇到了什么问题,排序行为的更改是否令人满意 我正在使用Postgresql 9.2、Mac OS 10.7和10.8。谷歌表示,该补丁是2005年发布的。它完全不可能应用于PostgreSQL 9.2。除非有人将工作转发到新版本,否则更新它可能需要做大量工作 您还没有定义对当前排序行为不满意的地方——尽管坦率地说,考虑到MacOSX的libc,我想答案是“很多”。我认为在这一点上你没有太多

有人用Palle Girgensohn的ICU补丁在Mac OS X上构建Postgresql吗?如果是,您遇到了什么问题,排序行为的更改是否令人满意


我正在使用Postgresql 9.2、Mac OS 10.7和10.8。

谷歌表示,该补丁是2005年发布的。它完全不可能应用于PostgreSQL 9.2。除非有人将工作转发到新版本,否则更新它可能需要做大量工作

您还没有定义对当前排序行为不满意的地方——尽管坦率地说,考虑到MacOSX的libc,我想答案是“很多”。我认为在这一点上你没有太多的选择,除非你愿意承担转发ICU补丁的工作

我真的很想看到PostgreSQL能够支持ICU排序,如果我能抽出时间做这样的工作,它就在我的工作清单上,没有人会资助这项工作。然而,实现它与其说是挑战,不如说是说服团队接受变更,并缓解或解决任何性能问题

就我个人而言,我只是在Linux上运行它,在Linux上,更健全的排序和编码支持将非常有用。

目前,PostgreSQL在9.1版之前都可以使用。我还没有测试它,但我认为补丁本身工作得很好,因为它非常小,而且,顺便说一句,默认情况下它是在FreeBSD下使用的。由于Mac OS X与GNU autoconf兼容,所以补丁应该可以从机箱中运行

精通C语言后,您可以尝试自己将其升级到PostgreSQL 9.2或9.3。
此外,1C还提供。这些补丁还提供ICU库,PostgreSQL 9.1和9.2都有版本。您可以看一看并了解一些升级的想法。

是的,这是可能的-我刚刚完成了基于MacPorts安装的过程(目前是PostgreSQL的9.3.5版)。我使用了中的9.2.8补丁文件,稍微修改了一下,参考了9.3.5 soruce基础,并使用autoconf的2.63版而不是2.69版,然后使用中的
Portfile
修改告诉MacPorts如何应用补丁文件

我的初步测试结果基本上是好的

postgres=# show server_encoding;
 client_encoding 
-----------------
 UTF8
(1 row)

postgres=# select * from comments order by comment;
 comment 
---------
 gros
 gross
 groß
 grot
(4 rows)

postgres=# select * from comments order by comment collate "C";
 comment 
---------
 gros
 gross
 grot
 groß
(4 rows)

postgres=# select upper('ß');
 upper 
-------
 SS
(1 row)
但是请注意

postgres=# select upper('ß') collate "C";
 upper 
-------
 SS
(1 row)

(我本以为只是“ß”。

谷歌表示,该补丁来自2005年。它完全不可能应用于PostgreSQL 9.2。除非有人将工作转发到新版本,否则更新它可能需要做大量工作。请提供链接和详细信息。