from __future__ import division
import attr
+import psycopg2
from pyramid.view import view_config
import logging
from pgwui_common.view import auth_base_view
+from pgwui_core import exceptions as core_ex
from pgwui_core.core import (
UploadTableInitialPostMixin,
UploadEngine,
self.cur = ue.cur
qualified_table = self.uf['table']
- quotecols = self.quote_columns()
- column_quoter = self.get_column_quoter(quotecols)
+ try:
+ quotecols = self.quote_columns()
+ column_quoter = self.get_column_quoter(quotecols)
- insert_stmt = self.build_insert_stmt(
- ue.data, qualified_table, quotecols, column_quoter)
+ insert_stmt = self.build_insert_stmt(
+ ue.data, qualified_table, quotecols, column_quoter)
- return SaveLine(ue, self, insert_stmt)
+ return SaveLine(ue, self, insert_stmt)
+ except (core_ex.PGWUIError, psycopg2.Error):
+ self.data.lineno = 0 # Don't report partially read number of lines
+ raise
def log_success(response):