66 lines
2.8 KiB
TeX
66 lines
2.8 KiB
TeX
\section{Probleme}
|
|
|
|
\vspace{-.2cm}
|
|
In diesem Kapitel wird näher auf die Probleme eingegangen, die sich ergeben
|
|
haben, aus welchem Grund sie sich ergeben haben und wie sie schließlich behoben
|
|
wurden.
|
|
|
|
\vspace{-.2cm}
|
|
\subsection{Falsche Zeitangaben}
|
|
|
|
\begin{description}
|
|
|
|
\item[Beschreibung] Im Frontend wurden die Zeiten, wann eine
|
|
\Gls{podcast}episode zuletzt gehört wurde und wann ein \Gls{podcast} abonniert
|
|
worden ist, falsch angezeigt. Hierbei kann eine Aktion entweder zu weit in der
|
|
Vergangenheit oder sogar in der Zukunft liegen.
|
|
\item[Ursache] Die Bibliothek hat die Zeiten in der lokalen, statt der
|
|
universellen Zeit berechnet. Aufgrund der Differenz zwischen Zeitzonen kam es
|
|
hierbei zu größer werdenden Zeitabständen.
|
|
\item[Behebung] Die Bibliotheksfunktionen wurden so angepasst, dass sie die
|
|
Zeiten explizit nach der universellen Zeitzone (UTC) berechnet.
|
|
|
|
\end{description}
|
|
|
|
|
|
\subsection{AntennaPod Fehlermeldung}
|
|
|
|
\begin{description}
|
|
|
|
\item[Beschreibung] Beim Hochladen von \Gls{abo}änderungen gab AntennaPod einen Fehler aus.
|
|
\item[Ursache] Es wurde bei der Übertragung ein Parameter mit falschem Parameternamen gesendet.
|
|
Hierbei handelt es sich um den Parameter \texttt{updateURLs}.
|
|
\item[Behebung] \texttt{updateURLs} wurde umbenannt zu
|
|
\texttt{update\textunderscore urls}. Die
|
|
geschah durch das Hinzufügen von \texttt{@JsonProperty(value =
|
|
''update\textunderscore urls'')} in der \texttt{UpdateURLsWrapper} Klasse im
|
|
\texttt{util} Paket.
|
|
|
|
\end{description}
|
|
|
|
\subsection{Doppelte Speicherung von EpisodeActions}
|
|
|
|
\begin{description}
|
|
|
|
\item[Beschreibung] Beim speichern von \Gls{episode}Actions ergab sich in
|
|
manchen Fällen die Situation, dass \Gls{episode}Actions mehrfach gespeichert
|
|
worden sind. Jede \Gls{episode} besitzt pro Benutzer eine \Gls{episode}Action.
|
|
In diesem Fall gab es mehrere \Gls{episode}Actions pro Benutzer für je eine
|
|
\Gls{episode}.
|
|
\item[Ursache] Es werden alle \Gls{episode}Actions in der \Gls{db} gespeichert,
|
|
die neuer als die aktuellste \Gls{episode}Action in der \Gls{db} sind. Nach
|
|
einem Speichervorgang sollte die ältere \Gls{episode}Action gelöscht werden. Da
|
|
\Gls{spring} jedoch aus Effizienzgründen nach diesem Schema mehrere Daten
|
|
sammelt und erst dann abspeichert, wird nur einer der älteren Einträge gelöscht.
|
|
Dadurch werden im Durchschnitt mehr \Gls{episode}Actions gespeichert, als
|
|
\Gls{episode}Actions entfernt werden.
|
|
\item[Behebung] Die empfangenen \Gls{episode}Actions werden vor dem Speichern in
|
|
der \Gls{db} bereits nach den jeweils aktuellsten \Gls{episode}Actions für eine
|
|
\Gls{episode} aussortiert. Damit wird letztlich nur eine \Gls{episode}Action in
|
|
die \Gls{db} geschrieben und auch nur eine ältere \Gls{episode}Action zu der
|
|
\Gls{episode} gelöscht, womit jede \Gls{episode} für jeden User weiterhin nur
|
|
eine \Gls{episode}Action besitzt.
|
|
|
|
\end{description}
|
|
|