DB: Some fixes for db update 0.1.0.

scenarios
Pierre-Antoine Rouby 2024-08-07 17:20:49 +02:00
parent 9a0476aa46
commit bc157fcde7
13 changed files with 45 additions and 12 deletions

View File

@ -130,6 +130,7 @@ class AddFile(SQLSubModel):
if release < 8: if release < 8:
cls._db_create(execute) cls._db_create(execute)
return True
if 8 < release < 13: if 8 < release < 13:
cls._db_update_to_0_0_13(execute, data) cls._db_update_to_0_0_13(execute, data)

View File

@ -59,6 +59,9 @@ class Friction(SQLSubModel):
) )
""") """)
if ext == "_tmp":
return True
return cls._create_submodel(execute) return cls._create_submodel(execute)
@classmethod @classmethod

View File

@ -95,6 +95,8 @@ class ProfileXYZ(Profile, SQLSubModel):
if ext == "_tmp": if ext == "_tmp":
return True return True
input()
return cls._create_submodel(execute) return cls._create_submodel(execute)
@classmethod @classmethod

View File

@ -75,6 +75,7 @@ class BasicHS(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 6: if int(release) < 6:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)

View File

@ -59,6 +59,7 @@ class BHSValue(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 6: if int(release) < 6:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)

View File

@ -85,8 +85,9 @@ class HydraulicStructure(SQLSubModel):
if rl < 6: if rl < 6:
cls._db_create(execute) cls._db_create(execute)
return True
if 6 < rl < 11: if rl < 11:
for v in ["input", "output"]: for v in ["input", "output"]:
execute( execute(
f""" f"""
@ -95,7 +96,6 @@ class HydraulicStructure(SQLSubModel):
""" """
) )
if 6 < rl:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)
return cls._update_submodel(execute, version, data) return cls._update_submodel(execute, version, data)

View File

@ -202,6 +202,9 @@ class LateralContribution(SQLSubModel):
) )
""") """)
if ext == "_tmp":
return True
return cls._create_submodel(execute) return cls._create_submodel(execute)
@classmethod @classmethod

View File

@ -128,6 +128,7 @@ class REPLine(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 9: if int(release) < 9:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_0_14(execute, data) cls._db_update_to_0_0_14(execute, data)

View File

@ -49,6 +49,9 @@ class Data(SQLSubModel):
) )
""") """)
if ext == "_tmp":
return True
return cls._create_submodel(execute) return cls._create_submodel(execute)
@classmethod @classmethod
@ -187,6 +190,9 @@ class Reservoir(SQLSubModel):
) )
""") """)
if ext == "_tmp":
return True
return cls._create_submodel(execute) return cls._create_submodel(execute)
@classmethod @classmethod
@ -195,6 +201,7 @@ class Reservoir(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 5: if int(release) < 5:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)

View File

@ -81,9 +81,11 @@ class RiverNode(Node, SQLSubModel):
) )
""") """)
cls._create_submodel(execute) if ext == "_tmp":
return True return True
return cls._create_submodel(execute)
@classmethod @classmethod
def _db_update(cls, execute, version, data=None): def _db_update(cls, execute, version, data=None):
major, minor, release = version.strip().split(".") major, minor, release = version.strip().split(".")
@ -184,9 +186,11 @@ class RiverReach(Edge, SQLSubModel):
) )
""") """)
cls._create_submodel(execute) if ext == "_tmp":
return True return True
return cls._create_submodel(execute)
@classmethod @classmethod
def _db_update(cls, execute, version, data=None): def _db_update(cls, execute, version, data=None):
major, minor, release = version.strip().split(".") major, minor, release = version.strip().split(".")

View File

@ -125,6 +125,7 @@ class Layer(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 2: if int(release) < 2:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)
@ -307,6 +308,7 @@ class SedimentLayer(SQLSubModel):
if major == minor == "0": if major == minor == "0":
if int(release) < 2: if int(release) < 2:
cls._db_create(execute) cls._db_create(execute)
return True
else: else:
cls._db_update_to_0_1_0(execute, data) cls._db_update_to_0_1_0(execute, data)

View File

@ -22,7 +22,7 @@ import sqlite3
from pathlib import Path from pathlib import Path
from tools import timer from tools import timer, logger_exception
logger = logging.getLogger() logger = logging.getLogger()
@ -115,9 +115,17 @@ class SQL(object):
self._db.commit() self._db.commit()
value = self._fetch(res, fetch_one) value = self._fetch(res, fetch_one)
except sqlite3.Warning as w:
logger.warning(f"SQL - {cmd}")
logger.warning(w)
except sqlite3.Error as er:
logger.error(f"SQL - {cmd}")
logger_exception(er)
except Exception as e: except Exception as e:
logger_exception(e) logger_exception(e)
finally: except:
logger.error("ERROR")
logger.debug(f" - {value}") logger.debug(f" - {value}")
return value return value

View File

@ -77,7 +77,7 @@ def logger_exception(exception):
f"[{logger_color_red()}ERROR{logger_color_reset()}] " + f"[{logger_color_red()}ERROR{logger_color_reset()}] " +
f"{logger_color_red()}{exception}{logger_color_reset()}" f"{logger_color_red()}{exception}{logger_color_reset()}"
) )
logger.debug( logger.info(
f"{logger_color_blue()}{exception}{logger_color_reset()}\n" + f"{logger_color_blue()}{exception}{logger_color_reset()}\n" +
f"{logger_color_red()}{traceback.format_exc()}{logger_color_reset()}" f"{logger_color_red()}{traceback.format_exc()}{logger_color_reset()}"
) )