Reduce execution time of updateElement
Problem
Hallo Alex, ich habe ein bisschen mit VisualVM herumgespielt und folgende Methode gefunden, die etwas mehr Zeit braucht als gedacht:
private DDIStore updateElement( DDIStore element, String userName, String comment )
{
requireNonNull( element.getPrimaryKey() );
try
{
org.gesis.commons.resource.UriBuilder.V10 uriBuilder = newUriBuilder()
.path( ELEMENTS )
.pathParameter( PRIMARYKEY, element.getPrimaryKey() );
restTemplate.put( uriBuilder.toUri(),
new HttpEntity<>( element, buildHttpHeaders( userName, comment ) ) );
return getElement( element.getStudy(), element.getType(), element.getElementId() );
}
catch (HttpStatusCodeException e)
{
throw new FlatdbServerException( e );
}
}
Wenn ich das richtig sehe, speichern wir dort mit restTemplate.put(..) etwas ab und laden es dann mit getElement erneut aus der Datenbank? Das scheint Zeit zu kosten. Kannst du da mal schauen? Grüße, Peter
Decision
- Decided by Peter and Alex
- Remove unnecessary getElement in updateElement: Return unchanged
element
directly