Bug report #16843

Processing: "import into PostGIS" error if there are no connections defined

Added by Randal Hale almost 7 years ago. Updated about 5 years ago.

Status:Closed
Priority:Normal
Assignee:Victor Olaya
Category:Processing/QGIS
Affected QGIS version:2.18.10 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:end of life
Crashes QGIS or corrupts data:No Copied to github as #:24742

Description

new description:
If you open the processing toolbox without a data connection defined, the "Import into PostGIS" tool tosses an error in the log but gives the user no clean indication what has happened beyond the message log. Could the tool either tell you "there is no connection" or prompt you to create a connection if one doesn't exist?

2017-07-14T23:48:11 2 Uncaught error while executing algorithm
Traceback (most recent call last):
File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\core\GeoAlgorithm.py", line 203, in execute
self.processAlgorithm(progress)
File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\algs\qgis\ImportIntoPostGIS.py", line 88, in processAlgorithm
connection = self.DB_CONNECTIONS[self.getParameterValue(self.DATABASE)]
IndexError: list index out of range

old description:
If you open the processing toolbox without a data connection defined, the "Import into PostGIS" tool tosses an error in the log but gives the user no clean indication what has happened beyond the message log. Could the tool either tell you "there is no connection" or prompt you to create a connection if one doesn't exist?

2017-07-10T21:22:51 1 Traceback (most recent call last):
File "/usr/share/qgis/python/plugins/processing/gui/ProcessingToolbox.py", line 271, in executeAlgorithm
dlg = AlgorithmDialog(alg)
File "/usr/share/qgis/python/plugins/processing/gui/AlgorithmDialog.py", line 80, in __init__
self.setMainWidget(self.getParametersPanel(alg, self))
File "/usr/share/qgis/python/plugins/processing/gui/AlgorithmDialog.py", line 96, in getParametersPanel
return ParametersPanel(parent, alg)
File "/usr/share/qgis/python/plugins/processing/gui/ParametersPanel.py", line 80, in __init__
self.initWidgets()
File "/usr/share/qgis/python/plugins/processing/gui/ParametersPanel.py", line 170, in initWidgets
wrapper.postInitialize(list(self.wrappers.values()))
File "/usr/share/qgis/python/plugins/processing/gui/wrappers_postgis.py", line 95, in postInitialize
self.setConnection(wrapper.value())
File "/usr/share/qgis/python/plugins/processing/gui/wrappers_postgis.py", line 108, in setConnection
self._database = GeoDB.from_name(connection)
File "/usr/share/qgis/python/plugins/processing/tools/postgis.py", line 184, in from_name
uri = uri_from_name(conn_name)
File "/usr/share/qgis/python/plugins/processing/tools/postgis.py", line 52, in uri_from_name
raise DbError(QCoreApplication.translate("PostGIS", 'There is no defined database connection "{0}".').format(conn_name))
processing.tools.postgis.DbError: MESSAGE: There is no defined database connection "".

History

#1 Updated by Giovanni Manghi almost 7 years ago

  • Status changed from Open to Feedback

Just to be sure, is this report really about an issue in QGIS master (aka QGIS 3), or also/only 2.18.10?

#2 Updated by Giovanni Manghi almost 7 years ago

  • Operating System deleted (Xubuntu 17.04 )
  • Affected QGIS version changed from master to 2.18.10
  • Status changed from Feedback to Open
  • Description updated (diff)
  • Subject changed from Processing Toolbox - Import into PostGIS to Processing: "import into PostGIS" error if there are no connections defined

After an extended set of tests (also on xubuntu 17.04) I cannot confirm the above error message, but there is anyway an error.

First of all if you are using master yo should see #16858

this has been confirmed on all platforms.

If you use 2.18.10 there are two issues, one is that the table name it become mandatory and the paramter should be optional, I will report this is in a separate ticket.

If you fill the table name and have no PostGIS connections defined the error is

2017-07-14T23:48:11    2    Uncaught error while executing algorithm
            Traceback (most recent call last):
              File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\core\GeoAlgorithm.py", line 203, in execute
                self.processAlgorithm(progress)
              File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\algs\qgis\ImportIntoPostGIS.py", line 88, in processAlgorithm
                connection = self.DB_CONNECTIONS[self.getParameterValue(self.DATABASE)]
            IndexError: list index out of range

and this has all been observed on all platforms. The same on 2.14.16.

#3 Updated by Giovanni Manghi about 5 years ago

  • Resolution set to end of life
  • Status changed from Open to Closed

End of life notice: QGIS 2.18 LTR

Source:
http://blog.qgis.org/2019/03/09/end-of-life-notice-qgis-2-18-ltr/

QGIS 3.4 has recently become our new Long Term Release (LTR) version. This is a major step in our history – a long term release version based on the massive updates, library upgrades and improvements that we carried out in the course of the 2.x to 3x upgrade cycle.

We strongly encourage all users who are currently using QGIS 2.18 LTR as their preferred QGIS release to migrate to QGIS 3.4. This new LTR version will receive regular bugfixes for at least one year. It also includes hundreds of new functions, usability improvements, bugfixes, and other goodies. See the relevant changelogs for a good sampling of all the new features that have gone into version 3.4

Most plugins have been either migrated or incorporated into the core QGIS code base.

We strongly discourage the continued use of QGIS 2.18 LTR as it is now officially unsupported, which means we’ll not provide any bug fix releases for it.

You should also note that we intend to close all bug tickets referring to the now obsolete LTR version. Original reporters will receive a notification of the ticket closure and are encouraged to check whether the issue persists in the new LTR, in which case they should reopen the ticket.

If you would like to better understand the QGIS release roadmap, check out our roadmap page! It outlines the schedule for upcoming releases and will help you plan your deployment of QGIS into an operational environment.

The development of QGIS 3.4 LTR has been made possible by the work of hundreds of volunteers, by the investments of companies, professionals, and administrations, and by continuous donations and financial support from many of you. We sincerely thank you all and encourage you to collaborate and support the project even more, for the long term improvement and sustainability of the QGIS project.

Also available in: Atom PDF