diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 9001bebc..f0c66dd9 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -2478,7 +2478,7 @@ def getsmallrowdata_db(columns, ids=[], doclean=True,workstrokesonly=True,comput #df = dd.read_parquet(f,columns=columns,engine='pyarrow') df = pd.read_parquet(f,columns=columns) data.append(df) - except (OSError,ArrowInvalid): # pragma: no cover + except (OSError,ArrowInvalid,IndexError): # pragma: no cover rowdata, row = getrowdata(id=id) if rowdata and len(rowdata.df): datadf = dataprep(rowdata.df,id=id,bands=True,otwpower=True,barchart=True) diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz new file mode 100644 index 00000000..f9743e9b Binary files /dev/null and b/rowers/tests/testdata/testdata.tcx.gz differ diff --git a/rowers/views/importviews.py b/rowers/views/importviews.py index c62f4b54..74209337 100644 --- a/rowers/views/importviews.py +++ b/rowers/views/importviews.py @@ -1158,6 +1158,9 @@ def strava_webhook_view(request): f.write(' ') f.write('Rower not found') return HttpResponse(status=200) + except MultipleObjectsReturned: + rs = Rower.objects.filter(strava_owner_id=strava_owner) + r = rs[0] if r.strava_auto_import: for key, value in updates.items(): for w in ws: diff --git a/rowers/views/statements.py b/rowers/views/statements.py index fec0ddb4..367e5b6f 100644 --- a/rowers/views/statements.py +++ b/rowers/views/statements.py @@ -83,7 +83,7 @@ from rowers.forms import ( from django.urls import reverse, reverse_lazy -from django.core.exceptions import PermissionDenied +from django.core.exceptions import PermissionDenied, MultipleObjectsReturned from django.template import RequestContext from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.conf import settings