Skip to content
Snippets Groups Projects
Commit f8367471 authored by srosse's avatar srosse
Browse files

no-jira: release DB connections earlier in some cases

parent be48264f
No related branches found
No related tags found
No related merge requests found
......@@ -35,6 +35,7 @@ import java.util.Locale;
import java.util.Map;
import org.olat.core.commons.chiefcontrollers.BaseChiefController;
import org.olat.core.commons.persistence.DBFactory;
import org.olat.core.gui.UserRequest;
import org.olat.core.gui.Windows;
import org.olat.core.gui.components.Window;
......@@ -252,6 +253,7 @@ public class NewControllerFactory {
launched = true;
}
}
DBFactory.getInstance().commit();
return launched;
}
}
\ No newline at end of file
......@@ -233,13 +233,13 @@ public class ICalServlet extends HttpServlet {
if(savedToken == null) {
savedToken = calendarManager.getCalendarToken(calendarType, calendarID, userName);
}
DBFactory.getInstance().commitAndCloseSession();
if (authToken == null || savedToken == null || !savedToken.equals(authToken)) {
log.warn("Authenticity Check failed for the ical feed path: {}", pathInfo);
response.sendError(HttpServletResponse.SC_UNAUTHORIZED, requestUrl);
} else {
// read and return the calendar file
Calendar calendar = calendarManager.readCalendar(calendarType, calendarID);
DBFactory.getInstance().commitAndCloseSession();
outputCalendar(calendar, request, response);
}
} else {
......
......@@ -205,14 +205,14 @@ public class ImportCalendarManager {
String url = importedCalendar.getUrl();
Date lastUpdate = importedCalendar.getLastUpdate();
if (url != null && (timestamp - lastUpdate.getTime() > RELOAD_INTERVAL)) {
log.info("Calendar reload started from url=" + url);
log.info("Calendar reload started from url={}", url);
importedCalendar.setLastUpdate(new Date());
importedCalendar = importedCalendarDao.update(importedCalendar);
dbInstance.commit();
String calendarId = importedCalendar.getCalendarId();
reloadCalendarFromUrl(url, CalendarManager.TYPE_USER, calendarId, filter);
log.info("Calendar reloaded from url=" + url);
log.info("Calendar reloaded from url={}", url);
}
}
......
......@@ -567,6 +567,7 @@ public class Window extends AbstractComponent implements CustomCSSDelegate {
log.debug("Perf-Test: Window durationBeforeServeResource=" + durationBeforeServeResource);
}
DBFactory.getInstance().commit();
wbackofficeImpl.pushCommands(ureq, request, response);
} catch (InvalidRequestParameterException e) {
try {
......@@ -850,6 +851,7 @@ public class Window extends AbstractComponent implements CustomCSSDelegate {
debugMsg.append("inl_serve:").append(diff).append(LOG_SEPARATOR);
}
}
DBFactory.getInstance().commit();
//else serve mediaresource, but postpone serving to when lock has been released,
// otherwise e.g. a large download blocks the window, so that the user cannot click until the download is finished
} // end of synchronized(this)
......
......@@ -278,6 +278,7 @@ public class LDAPLoginManagerImpl implements LDAPLoginManager, GenericEventListe
return null;
}
dbInstance.commit();
LdapContext ctx = bindSystem();
if (ctx == null) {
errors.insert("LDAP connection error");
......@@ -307,6 +308,7 @@ public class LDAPLoginManagerImpl implements LDAPLoginManager, GenericEventListe
}
try {
dbInstance.commit();
Control[] connectCtls = new Control[]{};
LdapContext userBind = new InitialLdapContext(env, connectCtls);
Attributes attributes = userBind.getAttributes(userDN, userAttr);
......
......@@ -35,8 +35,8 @@ import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.olat.core.CoreSpringFactory;
import org.apache.logging.log4j.Logger;
import org.olat.core.CoreSpringFactory;
import org.olat.core.logging.Tracing;
import org.olat.core.util.StringHelper;
import org.olat.restapi.system.MonitoringService.Statistics;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment