2013-08-06 27 views
13

Ho installato Postgis e Postgresql tramite Homebrew sul mio Mac e volevo aggiornare la mia versione di Postgis alla 2.1.0-rc2. Ho scollegato la mia versione di postgis e poi ho modificato la formula homebrew postgis. Dopo che la nuova formula non è stata compilata, ho ricollegato la vecchia formula e ora ricevo il seguente errore ogni volta che provo a richiamare una tabella di database con una colonna spaziale :.Rails Postgis Upgrade Issues

PG::UndefinedFile: ERROR: could not load library 
"/usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so": 
dlopen(/usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so, 10): Symbol not found: 
_json_tokener_errors 
Referenced from: /usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so 
Expected in: /usr/local/lib/libjson.0.dylib 
in /usr/local/Cellar/postgresql/9.2.4/lib/postgis-2.0.so 

(io non stavo avendo questo problema prima di fare l'azione di cui sopra) Ho riavviato il mio server PostgreSQL, e che non ha funzionato. Non sono sicuro di cosa fare per risolvere questo problema.

risposta

20

Ah! Risolto il problema tornando a una versione precedente di json-c che homebrew aveva collegato. (Specificamente JSON-c 0,10) è stato così semplice come il seguente comando:

brew switch json-c 0.10 

Speranza qualcun altro potrebbe trovare questo utile in futuro.

+1

Non avrei mai pensato di farlo. Grazie mille! –

+0

Alla fine, ho dovuto eseguire le istruzioni pg_upgrade come trovate qui: http://blog.55minutes.com/2013/09/postgresql-93-brew-upgrade/ Il problema era che quando eseguivo 'psql' era 9,3 .1, ma il server era ancora 9.2.4. –

+0

Fantastico! Brew in qualche modo ha aggiornato il mio json, rendendo inutile la mia installazione postgis. Quindi ho dovuto eseguire l'aggiornamento, ho pensato, ma anche questo ha fallito, portando alla fine a questo errore e questa soluzione. Phew, salvavita :) – nathanvda