<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
					xmlns:content="http://purl.org/rss/1.0/modules/content/"
					xmlns:wfw="http://wellformedweb.org/CommentAPI/"
					xmlns:atom="http://www.w3.org/2005/Atom"
				  >
<channel>
<atom:link rel="self"  type="application/rss+xml"  href="http://rulinux.net/rss_from_sect_4_subsect_10_thread_42577"  />
<title>rulinux.net - Форум - Talks - Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>http://rulinux.net/</link>
<description><![CDATA[Портал о GNU/Linux и не только]]></description>
<image><title>rulinux.net - Форум - Talks - Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>http://rulinux.net/</link>
<url>http://rulinux.net/rss_icon.png</url>
</image>
<item>
<title>Re:Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>https://rulinux.net/message.php?newsid=42577&amp;page=1#216601</link>
<guid>https://rulinux.net/message.php?newsid=42577&amp;page=1#216601</guid>
<pubDate>Mon, 11 Jul 2016 16:13:39 +0300</pubDate>
<description><![CDATA[<p>&gt; А эту-то библиотеку ты пробовал подсунуть?
<br><br>
Не-а. Спать хотелось. А, исходя из того, что новый постгрес хочет старого роутинга - скорее всего у них всё равно ничего не получится.. Скорее всего будет как и с постгисом ошибка: &quot;Server is version 9.4, library is version 9.5.&quot;, только наоборот. Хотя можно, конечно попробовать..</p>]]></description>
</item>
<item>
<title>Re:Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>https://rulinux.net/message.php?newsid=42577&amp;page=1#216599</link>
<guid>https://rulinux.net/message.php?newsid=42577&amp;page=1#216599</guid>
<pubDate>Mon, 11 Jul 2016 16:08:30 +0300</pubDate>
<description><![CDATA[<p>&gt; судя по твоим сообщениям - обновляться не буду
<br><br>
Да ладно, не всё так ужасно. Прошлая проблема вылечилась простым `systemctl enable sddm.service`. Эта вообще не у возникнет у тех, кто не включал postgis в базе.</p>]]></description>
</item>
<item>
<title>Re:Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>https://rulinux.net/message.php?newsid=42577&amp;page=1#216583</link>
<guid>https://rulinux.net/message.php?newsid=42577&amp;page=1#216583</guid>
<pubDate>Mon, 11 Jul 2016 09:03:10 +0300</pubDate>
<description><![CDATA[<p><i>> libboost_thread.so.1.58.0</i><br> А эту-то библиотеку ты пробовал подсунуть?</p>]]></description>
</item>
<item>
<title>Re:Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>https://rulinux.net/message.php?newsid=42577&amp;page=1#216577</link>
<guid>https://rulinux.net/message.php?newsid=42577&amp;page=1#216577</guid>
<pubDate>Mon, 11 Jul 2016 06:35:33 +0300</pubDate>
<description><![CDATA[<p>судя по твоим сообщениям - обновляться не буду</p>]]></description>
</item>
<item>
<title>Ещё один прикол с апгрейдом F23 -&gt; F24</title>
<link>https://rulinux.net/message.php?newsid=42577&amp;page=1#216576</link>
<guid>https://rulinux.net/message.php?newsid=42577&amp;page=1#216576</guid>
<pubDate>Mon, 11 Jul 2016 00:35:35 +0300</pubDate>
<description><![CDATA[<p>Дано - версии совта в старой и новой версии Федоры:<br>
<fieldset><legend>text</legend><div class="highlight text"><br />
Fedora 23: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Fedora 24:<br />
&nbsp; &nbsp; Postgres &nbsp;v.9.4.8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Postgres &nbsp;v.9.5.3<br />
&nbsp; &nbsp; Postgis &nbsp; v.2.1.8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Postgis &nbsp; v.2.2.1<br />
&nbsp; &nbsp; pgRouting v.2.0.0 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pgRouting v.2.2.2<br />
&nbsp;</div></fieldset>    
<br>
... апгрейдим Федору.
<br><br>
После апгрейда Постгрес не запускается - требуется ручками запустить `postgresql-setup --upgrade`. ОК, запускаем.
<br>
<br>
Команда ломается, выхлоп такой:
<br>
<fieldset><legend>text</legend><div class="highlight text"><br />
command: &quot;/usr/bin/pg_dump&quot; --host &quot;/var/lib/pgsql&quot; --port 5432 --username &quot;postgres&quot; --schema-only --quote-all-identifiers --binary-upgrade --format=custom &nbsp;--file=&quot;pg_upgrade_dump_33571.custom&quot; &quot;test1&quot; &gt;&gt; &quot;pg_upgrade_dump_33571.log&quot; 2&gt;&amp;1<br />
pg_dump: [archiver (db)] query failed: ERROR: &nbsp;could not access file &quot;$libdir/postgis-2.1&quot;: No such file or directory<br />
pg_dump: [archiver (db)] query was: SELECT pg_catalog.pg_get_viewdef('34854'::pg_catalog.oid) AS viewdef<br />
&nbsp;</div></fieldset>    
<br><br>

Вот что про postgis есть в $libdir:<br>
<fieldset><legend>text</legend><div class="highlight text"><br />
# pg_config --pkglibdir<br />
/usr/lib64/pgsql<br />
<br />
# ls -1 `pg_config --pkglibdir`/postgis*<br />
/usr/lib64/pgsql/postgis-2.1.so<br />
/usr/lib64/pgsql/postgis-2.2.so<br />
/usr/lib64/pgsql/postgis_topology-2.2.so<br />
&nbsp;</div></fieldset>    


<br>
Снёс Postgis v.2.2.1 и попробовал взять Postgis v.2.1.8 из <a href="https://www.rpmfind.net/linux/rpm2html/search.php?query=postgis">rpmfind</a> - накатил на 24ку - она даже установилась. Результат - ровно тот же.
<br>
<br>
Похожие баги:<br>
<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1342285">1342285</a> (Reported: 2016-06-02)<br>
<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1055293">1055293</a> (Reported: 2014-01-19)<br>
<br>
<br>
Пока вот такие попытки предпринял (не успешно)
<br>
<fieldset><legend>text</legend><div class="highlight text"><br />
-----------------------------------------------------------------<br />
Кажется, для апгрейда Федора сохранила огрызок старого постгресса <br />
в /usr/lib64/pgsql/postgresql-9.4/ - пробую использовать её чтобы <br />
проапдейтить postgis на старых данных<br />
-----------------------------------------------------------------<br />
<br />
$ cd /usr/lib64/pgsql/postgresql-9.4/bin<br />
$ ./pg_ctl -D /var/lib/pgsql/data/ start<br />
<br />
$ psql -h /tmp<br />
<br />
test1=# ALTER EXTENSION postgis UPDATE TO '2.2.1';<br />
ERROR: &nbsp;could not open extension control file &quot;/usr/lib64/pgsql/postgresql-9.4/share/extension/postgis.control&quot;: No such file or directory<br />
<br />
$ dnf download postgis<br />
<br />
Копируем всё из RPM usr/share/pgsql/extension в /usr/lib64/pgsql/postgresql-9.4/share/extension<br />
<br />
test1=# ALTER EXTENSION postgis UPDATE TO '2.2.1';<br />
ERROR: &nbsp;could not access file &quot;$libdir/plpgsql&quot;: No such file or directory<br />
<br />
$ dnf download postgresql-server --releasever=23<br />
<br />
Копируем всё отсутствующее из RPM usr/lib64/pgsql в /usr/lib64/pgsql/postgresql-9.4/lib<br />
<br />
test1=# ALTER EXTENSION postgis UPDATE TO '2.2.1';<br />
ERROR: &nbsp;could not access file &quot;$libdir/postgis-2.2&quot;: No such file or directory<br />
<br />
$ ls -s /usr/lib64/pgsql/postgis* /usr/lib64/pgsql/postgresql-9.4/lib/<br />
<br />
test1=# ALTER EXTENSION postgis UPDATE TO '2.2.1';<br />
ERROR: &nbsp;incompatible library &quot;/usr/lib64/pgsql/postgresql-9.4/lib/postgis-2.2.so&quot;: version mismatch<br />
DETAIL: &nbsp;Server is version 9.4, library is version 9.5.<br />
<br />
Если слинковать postgis-2.1.so из старой версии postgis на postgis-2.2.so, то получаем другую ошибку:<br />
<br />
test1=# ALTER EXTENSION postgis UPDATE TO '2.2.1';<br />
ERROR: &nbsp;could not find function &quot;gserialized_distance_nd&quot; in file &quot;/usr/lib64/pgsql/postgresql-9.4/lib/postgis-2.2.so&quot;<br />
<br />
Всё, кажется, приплыли - постгис 2.2 не запустится под постгрессом 9.4.<br />
<br />
---------------------------------------------------------------------------<br />
Пробую ещё раз запустить апгрейд - всё-таки в багзилле человек сказал, <br />
что скопировал файлы из rpm-ок &nbsp;- и у него всё заработало:<br />
---------------------------------------------------------------------------<br />
<br />
$ postgresql-setup --debug --upgrade<br />
<br />
Жалобы на отсутствие $libdir/librouting (не был уверен для старого или нового постгресса, на всякий случай установил роутинг штатно и подсунул в старый тоже)<br />
<br />
$ dnf download pgRouting --releasever=23<br />
<br />
$ pgRouting postgis postgis-utils<br />
Копируем все so-шки в /usr/lib64/pgsql/postgresql-9.4/lib/, а usr/share/pgsql/extension в /usr/lib64/pgsql/postgresql-9.4/share/extension<br />
<br />
$ ln -s /usr/lib64/pgsql/postgresql-9.4/lib/*rout*.so /usr/lib64/pgsql/<br />
<br />
<br />
`postgresql-setup --debug --upgrade` выдал ошибки вида:<br />
Could not load library &quot;$libdir/librouting_dd&quot;<br />
ERROR: &nbsp;could not load library &quot;/usr/lib64/pgsql/librouting_dd.so&quot;: libboost_thread.so.1.58.0: cannot open shared object file: No such file or directory<br />
<br />
--&gt; ага, значит librouting_dd.so и т.п. были нужны новой версии постгресса. Но к новой версии постгресса идёт и новая версия пг-роутинга 2.2.2 в которой есть всего одна библиотека libpgrouting-2.2.so и всё.<br />
<br />
---------------------------------------------------------------------------<br />
&nbsp;</div></fieldset>    
&quot;А вот теперь точно п-ц&quot; - вдруг подсказал внутренний голос..

</p>]]></description>
</item>
</channel>
</rss>