[Gfoss] Postgis upgrade

Ringrazio tutti

ma ancora non ci siamo, almeno devo capire ancora alcune cose.

Avevo già provato a fare sia il soft che l’hard upgrade ma senza risultati.

Devo segnalare che uso postgis 2.0.3 su postgres 9.1 e il backup l’ho fatto su un db postgres 8.4 con postgis 1.5.3.

L’utilizzo del comando perl postgis_restore.pl con la versione installata di postgis non va.

Infatti nella cartella postgresql-9.1/utils/ io trovo due file perl:

postgis_restore.pl

new_postgis_restore.pl

Utilizzando il primo comando esce fuori questo:

Usage: postgis_restore.pl <postgis.sql> [<createdb_options>]

Restore a custom dump (pg_dump -Fc) of a postgis enabled database.

(anche se provo a dare questo comando che suggerisce mi fuoriesce la medesima scritta)

mentre se uso il secondo comando fa quello che dovrebbe. Però le tabelle geometriche non me le riempie perche c’è un constraint enforce_srid_the_geom ecc ecc che blocca tutto.

Allora ho dovuto fare un clone del db postgis 1.5 e eliminare questi constraint.

Ho dovuto dare due volte il comando new_postgis_restore.pl perchè le tabelle geometriche si riempissero.

Il punto è che per popolare le mie tabelle ho dovuto eliminare questi constraint, pertanto il procedimento che ho adottato è giusto oppure il problema non è quello ma risiede in altro luogo e quindi il processo detto hard upgrade deve funzionare cmq

grazie mille

enzo

Il 23/giu/2014 16:09 <gfoss-request@lists.gfoss.it> ha scritto:

Invia le richieste di iscrizione alla lista Gfoss all’indirizzo
gfoss@lists.gfoss.it

Per iscriverti o cancellarti attraverso il web, visita
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
oppure, via email, manda un messaggio con oggetto `help’ all’indirizzo
gfoss-request@lists.gfoss.it

Puoi contattare la persona che gestisce la lista all’indirizzo
gfoss-owner@lists.gfoss.it

Se rispondi a questo messaggio, per favore edita la linea dell’oggetto
in modo che sia più utile di un semplice “Re: Contenuti del digest
della lista Gfoss…”

Argomenti del Giorno:

  1. R: R: WFS Edificato PCN: latitudine e longitudine invertite?
    (enrico.grillo)
  2. Re: Postgis upgrade (Walter Lorenzetti)
  3. Re: Postgis upgrade (Luca Delucchi)
  4. Re: Postgis upgrade (Sandro Santilli)
  5. Re: Creazione plugin problema (Gino Pirelli)

Message: 1
Date: Mon, 23 Jun 2014 15:34:16 +0200
From: “enrico.grillo” <enrico.grillo@arpalazio.it>
To: “‘marco zanieri’” <marcozanieri@gmail.com>, “‘Stefano Iacovella’”
<stefano.iacovella@gmail.com>
Cc: ‘aborruso’ <aborruso@tin.it>, ‘GFOSS’ <gfoss@lists.gfoss.it>
Subject: [Gfoss] R: R: WFS Edificato PCN: latitudine e longitudine
invertite?
Message-ID: <007e01cf8ee7$d4b2a220$7e17e660$@grillo@arpalazio.it>
Content-Type: text/plain; charset=“utf-8”

Anche io stavo sotto proxy e mi bloccava… inoltre in azienda abbiamo Websense che se si non accede con le proprie credenziali ci blocca.

Da: gfoss-bounces@lists.gfoss.it [mailto:gfoss-bounces@lists.gfoss.it] Per conto di marco zanieri
Inviato: lunedì 23 giugno 2014 12.19
A: Stefano Iacovella
Cc: aborruso; GFOSS
Oggetto: Re: [Gfoss] R: WFS Edificato PCN: latitudine e longitudine invertite?

Ciao Stefano,

credo che il problema sia legato proprio a quello che dici tu…non appena riesco faccio dei test…

grazie mille,

Marco

Il giorno 23 giugno 2014 11:57, Stefano Iacovella <stefano.iacovella@gmail.com> ha scritto:

Il giorno 23 giugno 2014 11:54, marco zanieri <marcozanieri@gmail.com> ha scritto:

Ciao Andrea,

purtroppo ho riprovato, ma ottengo questo:

D:\Appl\QGIS Valmiera\bin>ogr2ogr output.shp test.txt ED.EDIFICATO.CAPOLUOGHI. -
spat 13.34248 38.11716 13.35913 38.12881 --config GML_INVERT_AXIS_ORDER_IF_LAT_L
ONG NO
ERROR 1: HTTP error code : 403
ERROR 1: Error returned by server : HTTP error code : 403 (0)
FAILURE:
Unable to open datasource `test.txt’ with the following drivers.

Ciao Marco,

HTTP 403 è il codice d’errore per forbidden.

http://en.wikipedia.org/wiki/HTTP_403

Se stai facendo al richiesta da una rete interna ad una azienda è probabile che il proxy ti blocchi :wink:

Stefano


41.95581N 12.52854E

http://www.linkedin.com/in/stefanoiacovella

http://twitter.com/#!/Iacovellas

dott. Marco Zanieri
e-mail: marcozanieri@gmail.com

cartografia tematica
banche dati territoriali
sistemi informativi geografici
applicazioni GIS e webGIS

-------------- parte successiva --------------
Un allegato HTML è stato rimosso…
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20140623/d1f4c977/attachment-0001.html>


Message: 2
Date: Mon, 23 Jun 2014 15:31:33 +0200
From: Walter Lorenzetti <lorenzetti@gis3w.it>
To: gfoss@lists.gfoss.it
Subject: Re: [Gfoss] Postgis upgrade
Message-ID: <53A82C35.3060706@gis3w.it>
Content-Type: text/plain; charset=“utf-8”; Format=“flowed”

Ciao Enzo,

in una delle ultime migrazioni che hanno avuto essito positivo ho
adottato la seguente tecnica:

eseguo un beckup di ti po custom

pg_dump -Fc -b -v -f db.backup

al che utilizzo lo script in perl di postgis per il restore:

cd /usr/share/postgresql/9.1/contrib/postgis-2.1/

perl postgis_restore.pl /path/to/db.backup | psql -d dev_trackoid

spero possa esserti di aiuto.

W

Il 23/06/2014 15:22, Enzo Cocca ha scritto:

Ciao Paolo
Grazi mille per il suggerimento. In realtà ho provato già questa
strada ma senza risultati attesi.
Il problema risiede nelle tab geometriche che hanno un contraint
enforce_srid_the_geom ecc che penso mi blocca la scrittura e poi il
campo the geom non viene settato come dovrebbe per postgis2. Se ti va
ti mando il dump per vedere quale è l’errore
Ciao
Enzo

Il 23/giu/2014 13:55 “Paolo Corti” <pcorti@gmail.com
mailto:[pcorti@gmail.com](mailto:pcorti@gmail.com)> ha scritto:

Ciao

2014-06-22 20:19 GMT+02:00 Enzo Cocca <enzo.ccc@gmail.com
mailto:[enzo.ccc@gmail.com](mailto:enzo.ccc@gmail.com)>:

grazie mille per i suggerimenti,

ma ancora non riesco a trovare la soluzione o meglio l’ho
trovata ma mi
piacerebbe sapere se c’è una soluzione standard.

rispetto al suggerimento di francesco non usando opengeo la
soluzione non è
fattibile mentre rispetto al suggerimento di marco il problema è che
comunque le tabelle geometriche non vengono riempite ma solo quelle
alfanumeriche.

Per riempire le tabelle geometriche mi tocca aprire qgis
importare le
tabelle geometriche del db postgis 1.5 e 2.0 e fare dei bei
copia incolla.

quello che faccio io:

  • backup database 1.5 (pg_dump dbname > outfile)
  • creazione database su 2.0 (CREATE DATABASE dbname2…)
  • creazione estensione PostGIS (CREATE EXTENSION postgis)
  • installazione legacy.sql
  • restore database (psql dbname2 < outfile )

in genere cosi mi funziona sempre perfettamente
a presto
p


Paolo Corti
Geospatial software developer
web: http://www.paolocorti.net
twitter: @capooti
skype: capooti


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell’Associazione GFOSS.it.
666+40 iscritti al 5.6.2014

Walter Lorenzetti phD
email: lorenzetti@gis3w.it
skype: aiki74
twitter:w_lorenzetti <https://twitter.com/w_lorenzetti>
g+:aiki74 <https://plus.google.com/117055903318462447104/>
Tel/Cell: (+39) 347-6597931
Viale Verdi 24 - 51016 Montecatini Terme (PT)
Nuovi corsi QGIS e GFOSS
<http://gis3w.it/it/calendario-corsi-software-geografici>

-------------- parte successiva --------------
Un allegato HTML è stato rimosso…
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20140623/090e7be2/attachment-0001.html>


Message: 3
Date: Mon, 23 Jun 2014 15:41:06 +0200
From: Luca Delucchi <lucadeluge@gmail.com>
To: Walter Lorenzetti <lorenzetti@gis3w.it>
Cc: “GFOSS.it” <gfoss@lists.gfoss.it>
Subject: Re: [Gfoss] Postgis upgrade
Message-ID:
<CAK4m-3wRsvz-ejuG0epQG_Bgzwbrgo_OEWJZDyyUzc9b9uMJdA@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8

2014-06-23 15:31 GMT+02:00 Walter Lorenzetti <lorenzetti@gis3w.it>:

Ciao Enzo,

ciao,

in una delle ultime migrazioni che hanno avuto essito positivo ho adottato
la seguente tecnica:

eseguo un beckup di ti po custom

pg_dump -Fc -b -v -f db.backup

al che utilizzo lo script in perl di postgis per il restore:

cd /usr/share/postgresql/9.1/contrib/postgis-2.1/

perl postgis_restore.pl /path/to/db.backup | psql -d dev_trackoid

spero possa esserti di aiuto.

anch’io uso questo metodo da diverso tempo…

W


ciao
Luca

http://gis.cri.fmach.it/delucchi/
www.lucadelu.org


Message: 4
Date: Mon, 23 Jun 2014 15:53:18 +0200
From: Sandro Santilli <strk@keybit.net>
To: Luca Delucchi <lucadeluge@gmail.com>
Cc: “GFOSS.it” <gfoss@lists.gfoss.it>
Subject: Re: [Gfoss] Postgis upgrade
Message-ID: 20140623135318.GB1527@localhost
Content-Type: text/plain; charset=iso-8859-1

On Mon, Jun 23, 2014 at 03:41:06PM +0200, Luca Delucchi wrote:

2014-06-23 15:31 GMT+02:00 Walter Lorenzetti <lorenzetti@gis3w.it>:

in una delle ultime migrazioni che hanno avuto essito positivo ho adottato
la seguente tecnica:

eseguo un beckup di ti po custom

pg_dump -Fc -b -v -f db.backup

al che utilizzo lo script in perl di postgis per il restore:

cd /usr/share/postgresql/9.1/contrib/postgis-2.1/

perl postgis_restore.pl /path/to/db.backup | psql -d dev_trackoid

spero possa esserti di aiuto.

anch’io uso questo metodo da diverso tempo…

Ed e’ questo il metodo corretto. Chiamato “Hard Upgrade” nel manuale.

–strk;

() ASCII ribbon campaign – Keep it simple !
/\ http://strk.keybit.net/rants/ascii_mails.txt


Message: 5
Date: Mon, 23 Jun 2014 16:08:27 +0200
From: Gino Pirelli <luipir@gmail.com>
To: NicoPez <nico.pezzotta@gmail.com>
Cc: “GFOSS.it” <gfoss@lists.gfoss.it>
Subject: Re: [Gfoss] Creazione plugin problema
Message-ID:
<CAFO80_rwsfNSLPzJ2AV7YAMc=sc9GqQYMNWbVpE_hogLut0Q4A@mail.gmail.com>
Content-Type: text/plain; charset=“utf-8”

per esempio c’e’

https://github.com/sourcepole/qgis-remote-debug

non lo trovi nel repo dei plugin e non saprei dire perche’… morale
clonati il repo nella directory dei plugin e segui le istruzioni del readme

ciao Luigi Pirelli

On 23 June 2014 14:51, NicoPez <nico.pezzotta@gmail.com> wrote:

Buon pomeriggio a tutti. Mi sto cimentando per la prima volta con la
creazione di plugin e finora sono riuscito sempre a risolvere i problemi
“grazie” agli errori segnalati da QGIS al momento dell’avvio o quando vado
a
far girare il plugin. Ora invece non mi da nessun errore, ma non il plugin
non elabora. Se vi incollo il codice, potreste aiutarmi e capire dove è il
problema? Fino alla “def search()” sembrava andare tutto come doveva. P.S.:
c’è un modo per fare il debug del codice fino ad un certo punto, oppure
eseguire il codice passo passo (come in VBA)? Grazie in anticipo!

from PyQt4 import QtCore, QtGui
from qgis.core import *
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from qgis.core import *
from qgis.gui import *

from ui_searchparcels2 import Ui_SearchParcels2

create the dialog for zoom to point

class SearchParcels2Dialog(QtGui.QDialog, Ui_SearchParcels2):
def init(self):
QtGui.QDialog.init(self)
self.setupUi(self)

QObject.connect(self.uptadeButton, SIGNAL(“clicked()”),
self.chooseLayer)
QObject.connect(self.comboBox,
SIGNAL(“currentIndexChanged(QString)”), self.chooseField)
QObject.connect(self.comboBox,
SIGNAL(“currentIndexChanged(QString)”), self.chooseField2)
QObject.connect(self.selectBox, SIGNAL(“stateChanged(int)”),
self.OnSelectBoxClicked)
QObject.connect(self.cancelButton, SIGNAL(“clicked()”),
self.cancelSearch)
QObject.connect(self.goButton, SIGNAL(“clicked()”), self.search)

self.chooseLayer()

in first comboBox show the list of layers (list of names)

def chooseLayer(self):
layerList = # crea una lista vuota
self.comboBox.clear() # svuota la lista del combo box
layerList = self.getLayerNames() # a layerList assegna il
risultato della procedura getLayerNames()
self.comboBox.addItems(layerList)
self.FoglioLine.clear()
self.ParticelLine.clear()
self.OnSelectBoxClicked()
return

Get the list of layers (list of names) in QgsMapLayerRegistry

def getLayerNames(self):
layermap = QgsMapLayerRegistry.instance().mapLayers() # assegna a
layermap l’insieme dei layers caricati
layerLst =
for i, layer in layermap.iteritems():
if layer.type() == QgsMapLayer.VectorLayer: # considera solo
i layers vettoriali
layerLst.append( unicode( layer.name() ) ) # prende il
nome di ogni layer a lo aggiunge alla lista layerLst
return layerLst

in second comboBox show the list fields (list of names)

def chooseField(self):
fieldList =
self.campo1.clear()
fieldList = self.getFieldNames()
self.campo1.addItems( fieldList )
return

Get the list fields (list of names) for the selected layer

def getFieldNames(self):
layermap = QgsMapLayerRegistry.instance().mapLayers()
fieldLst =
for i, layer in layermap.iteritems():
if layer.type() == QgsMapLayer.VectorLayer and layer.name() ==
self.comboBox.currentText():
if layer.isValid():
fields = layer.dataProvider().fields()
for i in range(fields.count()):
field = fields[i]
fieldLst.append(field.name())
return fieldLst

in third comboBox show the list fields (list of names)

def chooseField2(self):
fieldList =
self.campo2.clear()
fieldList = self.getFieldNames()
self.campo2.addItems( fieldList )
return

def OnSelectBoxClicked(self):
layermap = QgsMapLayerRegistry.instance().mapLayers()
for i, layer in layermap.iteritems():
if layer.type() == QgsMapLayer.VectorLayer and layer.name() ==
self.comboBox.currentText():
if layer.isValid():
if not self.selectBox.isChecked():
self.panBox.setEnabled(False)
self.scaleBox.setEnabled(False)
else:
self.panBox.setEnabled(layer.hasGeometryType())
self.scaleBox.setEnabled(layer.hasGeometryType())
return

def cancelSearch(self):
self.continueSearch = False
return

def search(self):
i = self.comboBox.currentIndex()
if i < 0:
return None
layerId = self.comboBox.itemData(i)
layer = QgsMapLayerRegistry.instance().mapLayer(layerId)
if layer is None:
return
toFind = self.FoglioLine.text()
toFind2 = self.ParticelLine.text()
f = QgsFeature()
results =
fieldIndex = self.campo1.currentIndex()
fieldName = self.campo1.itemData(fieldIndex)
fieldIndex2 = self.campo2.currentIndex()
fieldName2 = self.campo2.itemData(fieldIndex2)
if fieldName == “” or fieldName2 == “”:
QMessageBox
msgBox.setText(“Search Parcels 2: Seleziona un campo.”)
msgBox.exec_()
return
try:
float(toFind)
except ValueError:
QMessageBox
msgBox.setText(“Search Parcels 2: Inserisci un valore
numerico.”)
msgBox.exec_()
return
try:
float(toFind2)
except ValueError:
QMessageBox
msgBox.setText(“Search Parcels 2: Inserisci un valore
numerico.”)
msgBox.exec_()
return
show progress bar
self.progressBar.setMinimum(0)
self.progressBar.setMaximum(layer.featureCount())
self.progressBar.setValue(0)
self.widget_2.show()

disable rest of UI

self.layerWidgetGroup.setEnabled(False)
self.SearchWidgetGroup.setEnabled(False)
self.CheckWidgetGroup.setEnabled(False)

create feature request

featReq = QgsFeatureRequest()
featReq.setFlags(QgsFeatureRequest.NoGeometry)
Req = featReq.setSubsetOfAttributes([fieldIndex])
Re2 = featReq.setSubsetOfAttributes([fieldIndex2])
iter = layer.getFeatures(featReq)

process

k = 0
n = 0
self.continueSearch = True
while iter.nextFeature(f) and self.continueSearch:
k += 1
if self.evaluate(f[fieldName], toFind):
results.append(f.id())
f2 = QgisFeature(f.id())
while iter.nextFeature(f2) and self.continueSearh:
n += 1
if self.evaluate(f[fieldName2], toFind2):
results2.append(f2.id())
self.progressBar.setValue(n)
QCoreApplication.processEvents()

reset UI

self.widget_2.hide()
self.layerWidgetGroup.setEnabled(True)
self.SearchWidgetGroup.setEnabled(True)
self.CheckWidgetGroup.setEnabled(True)

process results

if self.continueSearch:
QMessageBox
msgBox.setText(“Search Parcels 2: %u particelle trovate.”)
msgBox.exec_()
self.processResults(results2)
return

def evaluate(self, v1, v2):
return float(v1) == float(v2)

def processResults(self, results2):
if layer is None:
return
if self.selectBox.isChecked():
layer.setSelectedFeatures(results2)
if len(results2) == 0:
return

if self.panBox.isEnabled() and self.panBox.isChecked():
canvas = self.iface.mapCanvas()
rect =
canvas.mapRenderer().layerExtentToOutputExtent(layer,
layer.boundingBoxOfSelected())
if rect is not None:
if self.scaleBox.isEnabled() and
self.scaleBox.isChecked():
rect.scale(1.5)
canvas.setExtent(rect)
else:
canvas.setExtent(QgsRectangle(rect.center(),
rect.center()))
canvas.refresh()
if self.formBox.isChecked():
f = QgsFeature()
for id in results2:
if
layer.getFeatures(QgsFeatureRequest().setFilterFid(id)).nextFeature(f):
self.IdentifyResult(layer, f)
return


View this message in context:
http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/Creazione-plugin-problema-tp7588499.html
Sent from the Gfoss – Geographic Free and Open Source Software - Italian
mailing list mailing list archive at Nabble.com.


Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell’Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
-------------- parte successiva --------------
Un allegato HTML è stato rimosso…
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20140623/075d31ce/attachment.html>



Gfoss mailing list
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e’ una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell’Associazione GFOSS.it.

Fine di Digest di Gfoss, Volume 108, Numero 45


2014-06-23 17:54 GMT+02:00 Enzo Cocca <enzo.ccc@gmail.com>:

[CUT ALL]

Per piacere, potreste non riportare continuamente tutto il messaggio
originale ogni volta? L'ultima risposta di Enzo Cocca era di 30 righe
con 670 righe di messaggio quotato... leggere qui (esistono su
internet migliaia di articoli di questo tipo)

http://wiki.news.nic.it/QuotarBene

Grazie a tutti! :slight_smile: