fix: add better error-handling for dataloading

closes #10978
This commit is contained in:
Matthias
2024-11-24 10:36:02 +01:00
parent 5841b56f2d
commit 3b542ea008
3 changed files with 66 additions and 48 deletions
@@ -58,7 +58,7 @@ class FeatherDataHandler(IDataHandler):
)
if not filename.exists():
return DataFrame(columns=self._columns)
try:
pairdata = read_feather(filename)
pairdata.columns = self._columns
pairdata = pairdata.astype(
@@ -72,6 +72,11 @@ class FeatherDataHandler(IDataHandler):
)
pairdata["date"] = to_datetime(pairdata["date"], unit="ms", utc=True)
return pairdata
except Exception as e:
logger.exception(
f"Error loading data from {filename}. Exception: {e}. Returning empty dataframe."
)
return DataFrame(columns=self._columns)
def ohlcv_append(
self, pair: str, timeframe: str, data: DataFrame, candle_type: CandleType
@@ -68,6 +68,7 @@ class HDF5DataHandler(IDataHandler):
)
if not filename.exists():
return pd.DataFrame(columns=self._columns)
try:
where = []
if timerange:
if timerange.starttype == "date":
@@ -90,6 +91,13 @@ class HDF5DataHandler(IDataHandler):
)
pairdata = pairdata.reset_index(drop=True)
return pairdata
except ValueError as e:
raise
except Exception as e:
logger.exception(
f"Error loading data from {filename}. Exception: {e}. Returning empty dataframe."
)
return pd.DataFrame(columns=self._columns)
def ohlcv_append(
self, pair: str, timeframe: str, data: pd.DataFrame, candle_type: CandleType
@@ -56,7 +56,7 @@ class ParquetDataHandler(IDataHandler):
)
if not filename.exists():
return DataFrame(columns=self._columns)
try:
pairdata = read_parquet(filename)
pairdata.columns = self._columns
pairdata = pairdata.astype(
@@ -70,6 +70,11 @@ class ParquetDataHandler(IDataHandler):
)
pairdata["date"] = to_datetime(pairdata["date"], unit="ms", utc=True)
return pairdata
except Exception as e:
logger.exception(
f"Error loading data from {filename}. Exception: {e}. Returning empty dataframe."
)
return DataFrame(columns=self._columns)
def ohlcv_append(
self, pair: str, timeframe: str, data: DataFrame, candle_type: CandleType