summaryrefslogtreecommitdiff
path: root/megapixels/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'megapixels/app/models')
-rw-r--r--megapixels/app/models/sql_factory.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/megapixels/app/models/sql_factory.py b/megapixels/app/models/sql_factory.py
index da95b539..a580f28e 100644
--- a/megapixels/app/models/sql_factory.py
+++ b/megapixels/app/models/sql_factory.py
@@ -35,7 +35,7 @@ def load_sql_datasets(replace=False, base_model=None):
global datasets, loaded, Session
if loaded:
return datasets
- engine = create_engine(connection_url, encoding="utf-8")
+ engine = create_engine(connection_url, encoding="utf-8", pool_recycle=3600)
# db.set_character_set('utf8')
# dbc = db.cursor()
# dbc.execute('SET NAMES utf8;')
@@ -61,7 +61,8 @@ def load_sql_dataset(path, replace=False, engine=None, base_model=None):
print('loading dataset {}'.format(fn))
df = pd.read_csv(fn)
# fix columns that are named "index", a sql reserved word
- df.columns = table.__table__.columns.keys()
+ df.reindex_axis(sorted(df.columns), axis=1)
+ df.columns = sorted(table.__table__.columns).keys()
df.to_sql(name=table.__tablename__, con=engine, if_exists='replace', index=False)
return dataset
@@ -76,7 +77,7 @@ class SqlDataset:
self.name = name
self.tables = {}
if base_model is None:
- self.engine = create_engine(connection_url)
+ self.engine = create_engine(connection_url, encoding="utf-8", pool_recycle=3600)
base_model = declarative_base(engine)
self.base_model = base_model