diff --git a/src/main/java/org/olat/basesecurity/AuthHelper.java b/src/main/java/org/olat/basesecurity/AuthHelper.java
index 1352d2abf5a1bdc060f14178c46896787d4dbdc5..13ea9f7f317e85ecc45c2d979c1d14ef76134d84 100644
--- a/src/main/java/org/olat/basesecurity/AuthHelper.java
+++ b/src/main/java/org/olat/basesecurity/AuthHelper.java
@@ -43,7 +43,6 @@ import org.olat.core.commons.fullWebApp.BaseFullWebappController;
 import org.olat.core.commons.fullWebApp.BaseFullWebappControllerParts;
 import org.olat.core.commons.persistence.DBFactory;
 import org.olat.core.dispatcher.DispatcherModule;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.WindowManager;
 import org.olat.core.gui.Windows;
@@ -456,12 +455,6 @@ public class AuthHelper {
 	 * @param ureq
 	 */
 	private static void setAjaxModeFor(UserRequest ureq) {
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			Windows.getWindows(ureq).getWindowManager().setAjaxEnabled(false);
-			return;
-		}
-		
 		Preferences prefs = ureq.getUserSession().getGuiPreferences();
 		
 		Boolean web2aEnabled = (Boolean) prefs.get(WindowManager.class, "web2a-beta-on");
@@ -470,8 +463,7 @@ public class AuthHelper {
 			Windows.getWindows(ureq).getWindowManager().setForScreenReader(true);		
 			Windows.getWindows(ureq).getWindowManager().setAjaxEnabled(false);
 			return;
-		} 
-		
+		}
 		
 		Boolean ajaxOn = (Boolean) ureq.getUserSession().getGuiPreferences().get(WindowManager.class, "ajax-beta-on");
 		//if user does not have an gui preference it will be only enabled if globally on and browser is capable
diff --git a/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java b/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
index 108444bfca2dc46f51990b3de5b7c16467b89d13..6d86e1971da45cbc43bc7e88feb56602b3bc8963 100644
--- a/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
+++ b/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
@@ -40,7 +40,6 @@ import org.olat.core.commons.chiefcontrollers.LanguageChangedEvent;
 import org.olat.core.commons.fullWebApp.util.GlobalStickyMessage;
 import org.olat.core.configuration.PersistedProperties;
 import org.olat.core.dispatcher.Dispatcher;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.GUIMessage;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.WindowManager;
@@ -175,8 +174,8 @@ public class BaseFullWebappController extends BasicController implements ChiefCo
 		guimsgPanel = new OncePanel("guimsgPanel");
 		
 		WindowManager winman = Windows.getWindows(ureq).getWindowManager();
-		String wSettings = (String)ureq.getUserSession().removeEntryFromNonClearedStore(Dispatcher.WINDOW_SETTINGS);
-		WindowSettings settings = WindowSettings.parse(wSettings);
+		String windowSettings = (String)ureq.getUserSession().removeEntryFromNonClearedStore(Dispatcher.WINDOW_SETTINGS);
+		WindowSettings settings = WindowSettings.parse(windowSettings);
 		wbo = winman.createWindowBackOffice("basechiefwindow", this, settings);
 
 		// define the new windowcontrol
@@ -561,11 +560,7 @@ public class BaseFullWebappController extends BasicController implements ChiefCo
 			}
 		} else if (source == getWindowControl().getWindowBackOffice().getWindow()) {
 			if (event == Window.OLDTIMESTAMPCALL) {
-				if (GUIInterna.isLoadPerformanceMode()) {
-					getLogger().info("loadtestMode RELOAD");
-				} else {
-					getLogger().info("RELOAD");
-				}
+				getLogger().info("RELOAD");
 				
 				if(isBackEnabled(ureq)) {
 					HistoryPoint point = ureq.getUserSession().popLastHistoryEntry();
diff --git a/src/main/java/org/olat/core/gui/GUIInterna.java b/src/main/java/org/olat/core/gui/GUIInterna.java
deleted file mode 100644
index 0cf13de4c6aaba847e6f904dc39af107c6b51f45..0000000000000000000000000000000000000000
--- a/src/main/java/org/olat/core/gui/GUIInterna.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.
-*/
-
-package org.olat.core.gui;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-
-import org.olat.core.helpers.Settings;
-
-public class GUIInterna {
-	
-	private static Boolean allowed = Settings.isAllowLoadtestMode();
-	private static ThreadLocalData tld = new ThreadLocalData();
-
-	private static Map<String,Map<Object,Object>> loadtestClients = new HashMap<String,Map<Object,Object>>();
-	
-	public static void begin (HttpServletRequest req){
-		
-		if (!allowed) return;
-		if (req == null) return;
-		String key = getCookie(req);
-		if(key == null) return;
-		
-		String q = req.getQueryString();
-		
-		synchronized (loadtestClients) {
-			
-			if (q != null) {
-				if (q.endsWith("noloadtest")) {
-					if (loadtestClients.containsKey(key)) {
-						loadtestClients.remove(key);
-					}
-				} else if (q.endsWith("loadtest")) {
-					if (loadtestClients.containsKey(key)) {
-						loadtestClients.remove(key);
-					}
-					loadtestClients.put(key, new HashMap<Object, Object>());
-				} else if (q.equals("clearloadtests")) {
-					loadtestClients.clear();
-				}
-			}
-		
-			if (loadtestClients.containsKey(key)) {
-				tld.setBoolean(Boolean.TRUE);
-				tld.setMap(loadtestClients.get(key));
-			} else {
-				tld.setBoolean(Boolean.FALSE);
-			}	
-		}
-	}
-	
-	public static boolean isLoadPerformanceMode() {
-		return allowed && tld.getBoolean();
-	}
-
-	public static void end (HttpServletRequest req){
-		if (!allowed) return;
-		if (req == null) return;
-		
-		if (tld.getBoolean()) {
-			String c = getCookie(req);
-			
-			if (c != null) {
-				synchronized (loadtestClients) {
-					loadtestClients.put(c, tld.getMap());
-				}
-			}
-		}	
-		
-		tld.remove();
-	}
-
-	private static String getCookie (HttpServletRequest req) {
-		Cookie c[] = req.getCookies();
-		for (int i=0; c!= null && i<c.length; i++) {
-			if (c[i].getName().equals("JSESSIONID")) {
-				return c[i].getValue();
-			}
-		}
-		return null;
-	}
-	
-	public static Map<Object,Object>  getReplayModeData () {
-		return tld.getMap();
-	}
-	
-	private static class ValueContainer {
-		
-		Boolean b = null;
-		Map<Object,Object> m = null;
-		
-		ValueContainer() {
-			// nothing to be done here
-		}
-		
-	}
-	
-	private static class ThreadLocalData extends ThreadLocal<ValueContainer> {
-		
-		Boolean getBoolean() {
-			ValueContainer vc = get();
-			if (vc!=null && vc.b!=null) {
-				return vc.b;
-			}
-			return Boolean.FALSE;
-		}
-		
-		Map<Object,Object> getMap() {
-			ValueContainer vc = get();
-			if (vc!=null && vc.m!=null) {
-				return vc.m;
-			}
-			return null;
-		}
-		
-		void setBoolean(Boolean b) {
-			ValueContainer vc = get();
-			if (vc==null) {
-				vc = new ValueContainer();
-				set(vc);
-			}
-			vc.b = b;
-		}
-		
-		void setMap(Map<Object,Object> m) {
-			ValueContainer vc = get();
-			if (vc==null) {
-				vc = new ValueContainer();
-				set(vc);
-			}
-			vc.m = m;
-		}
-		
-	}
-}
diff --git a/src/main/java/org/olat/core/gui/components/Window.java b/src/main/java/org/olat/core/gui/components/Window.java
index 6c2e3abe8310bfc9968bd56e4ffb1e8799fbc61e..efea94ccef222a8fb19344054b7351dc728317c9 100644
--- a/src/main/java/org/olat/core/gui/components/Window.java
+++ b/src/main/java/org/olat/core/gui/components/Window.java
@@ -41,7 +41,6 @@ import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.persistence.DBFactory;
 import org.olat.core.dispatcher.DispatcherModule;
 import org.olat.core.dispatcher.mapper.MapperService;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.GlobalSettings;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.Windows;
@@ -1087,56 +1086,9 @@ public class Window extends AbstractComponent {
 			return NO_DISPATCHRESULT;
 		}
 
-		Component target;
 		List<Component> foundPath = new ArrayList<Component>(10);
 		// OLAT-1973
-		if (GUIInterna.isLoadPerformanceMode()) {
-			String compPath = ureq.getParameter("e");
-			Component cur = getContentPane();
-			String[] res = compPath.split("!");
-			boolean correctFullPath = true;
-			for (int i = res.length -1; i >= 0 && correctFullPath; i--) {
-				String cname = res[i];	
-				ComponentCollection co = (ComponentCollection) cur; // we did not record the leaf, so we know it's a container
-				Component c = co.getComponent(cname);
-				if (c == null) {
-					correctFullPath = false;
-					//throw new AssertException("cannot find: "+compPath);
-				} else {
-					foundPath.add(c);
-					cur = c;
-				}
-			}
-			// if we could not find our component following the full path, also search the component in the full component tree.
-			// the reason is that simply adding a panel or such around a component should not break existing (jmeter)-functional-tests.
-			// 
-			// As long as we find only one component with a child with the name we search, we are ok and assume this new component to be the
-			// same from a gui-side meaning, even if it is in a different parent hierarchy.
-			// If more than one match is found (which should occur very rarely when developers choose meaningful names for components 
-			// to be put into containers), we cannot determine which component was meant and must throw an exception - the functional test 
-			// will break and needs to be improved/adjusted to the new layout.
-			// if no match is found, we could not find the component at all and must raise an exception also.
-			// 
-			if (correctFullPath) {
-				// cur is now the component to dispatch
-				target = cur;
-			} else {
-				String childName = res[0]; // Pre: all paths have at least one entry	
-				List<Component> founds = findComponentsWithChildName(childName, getContentPane());
-				int foundsCnt = founds.size();
-				if (foundsCnt == 1) {
-					// unique -> high probability that the recorded link is still the same
-					target = founds.get(0);
-				} else if (foundsCnt == 0) {
-					throw new AssertException("cannot find: "+compPath);
-				} else { // >1 -> ambiguous, two possible targets
-					throw new AssertException("cannot find: "+compPath);
-				}
-			}			
-		} else {
-			target = ComponentHelper.findDescendantOrSelfByID(getContentPane(), s_compID, foundPath);			
-		}
-		
+		Component target = ComponentHelper.findDescendantOrSelfByID(getContentPane(), s_compID, foundPath);
 		if (target == null) {
 			// there was a component id given, but no matching target could be found
 			fireEvent(ureq, COMPONENTNOTFOUND);
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/Form.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/Form.java
index 8e2e1ead54ac94ed7107304c8fc433594dea1cae..5fdc3ec4353b2b82311c51163e797ce9eca08f92 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/Form.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/Form.java
@@ -44,7 +44,6 @@ import org.apache.commons.fileupload.FileUploadBase.SizeLimitExceededException;
 import org.apache.commons.fileupload.MultipartStream.MalformedStreamException;
 import org.apache.commons.fileupload.servlet.ServletFileUpload;
 import org.apache.commons.fileupload.util.Streams;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.ComponentCollection;
@@ -173,17 +172,8 @@ public class Form extends LogDelegator {
 	private Map<String, String> requestMultipartFileMimeTypes = new HashMap<String,String>();
 	private int requestError = REQUEST_ERROR_NO_ERROR;
 	
-	// replayableID Counter
-	private long replayIdCount;
-	// Map to replayableID real dispatchID
-	private Map<String,Long> replayIdMap = new HashMap<String,Long>();
-	
-	private Form(Controller listener) {
-		// internal use only
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			initReplayIdCounter(listener);
-		}
+	private Form() {
+		//
 	}
 
 	/**
@@ -198,7 +188,7 @@ public class Form extends LogDelegator {
 	 * @return
 	 */
 	public static Form create(String id, String name, FormItemContainer formLayout, Controller listener) {
-		Form form = new Form(listener);
+		Form form = new Form();
 		// this is where the formitems go to
 		form.formLayout = formLayout;
 		form.formLayout.setRootForm(form);
@@ -652,22 +642,17 @@ public class Form extends LogDelegator {
 			return dispatchFormItem;
 		}
 
+		@Override
 		public boolean visit(FormItem fi, UserRequest ureq) {
 			/*
 			 * check if this is the FormItem to be dispatched
 			 */
 			Component tmp = fi.getComponent();
-			
-			String tmpD;
-			if (GUIInterna.isLoadPerformanceMode()) {
-				tmpD = FormBaseComponentIdProvider.DISPPREFIX+Long.toString(getReplayableDispatchID(fi.getComponent()));
-			} else {
-				tmpD = FormBaseComponentIdProvider.DISPPREFIX + tmp.getDispatchID();
-			}
-			
+			String tmpD = FormBaseComponentIdProvider.DISPPREFIX + tmp.getDispatchID();
+
 			if (!foundDispatchItem && tmpD.equals(dispatchId)) {
 				dispatchFormItem = fi;
-				foundDispatchItem = true; //
+				foundDispatchItem = true;
 			}
 			
 			/*
@@ -686,6 +671,7 @@ public class Form extends LogDelegator {
 			return submit;
 		}
 
+		@Override
 		public boolean visit(FormItem fi, UserRequest ureq) {
 			if(fi instanceof Submit) {
 				submit = (Submit)fi;
@@ -871,73 +857,4 @@ public class Form extends LogDelegator {
 	public boolean isMultipartEnabled() {
 		return multipartEnabled;
 	}
-	
-	/**
-	 * Make replayID distinct for distinct forms by inserting the 
-	 * number of Form Objects created during the current session at
-	 * the 10000 position.
-	 * So the replayID will look like o_fi900060004 for the
-	 * fourth FormItem of the sixth Form. The last four digits
-	 * represent the running number of Items in the current Form.
-	 * @param form
-	 * @param binderName
-	 */
-	private void initReplayIdCounter(Controller listener) {
-		
-		Integer formNum = null;
-		Object o = GUIInterna.getReplayModeData().get("formsSeen");
-			
-		if (o == null) {
-			o = new HashMap<String,Integer>();
-			GUIInterna.getReplayModeData().put("formsSeen", o);
-		} 
-		
-		Map<String,Integer> m = (Map<String,Integer>) o;
-		String k = listener.getClass().getName();
-		if (m.containsKey(k)) {
-			formNum = m.get(k);
-		}
-		
-		if (formNum == null) {		
-			o = GUIInterna.getReplayModeData().get("formNum");
-			formNum = (o == null) ? 1 : (Integer) o + 1;
-			GUIInterna.getReplayModeData().put("formNum", formNum); 
-			m = (Map<String,Integer>) GUIInterna.getReplayModeData().get("formsSeen");
-			m.put(listener.getClass().getName(), formNum);
-		} 
-		
-		replayIdCount = 900000000L + formNum * 10000L;
-		// max 10000 items can be in a form
-		// max 10000 forms can appear in a  load test run
-	}
-	
-	
-	/**
-	 * Get the replayableID for a component, for use only in urlReplay mode.
-	 * The replayableID is set the first time this method is called
-	 * for a particular component. 
-	 * @param component
-	 * @return replayableID
-	 */
-	
-	public long getReplayableDispatchID (Component comp) {
-		String oid = comp.getDispatchID();
-		Long id = replayIdMap.get(oid);
-		if (id != null) return id.longValue();
-		id = new Long(++replayIdCount);
-		
-		if (id >= 999900000L) {
-			throw new AssertException ("Form count limit for a loadtest reached");
-		}
-		if (id%999990000L==9999) {
-			throw new AssertException ("Form item countlimit for a form reached");
-		}
-		
-		replayIdMap.put(oid, id);
-		if (comp instanceof FormBaseComponentImpl) {
-			// set the replayID which was just determined because it is convenient
-			((FormBaseComponentImpl)comp).setReplayableDispatchID(id);
-		} // else it is a VelocityContainer
-		return id.longValue();
-	}
 }
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormBaseComponentImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormBaseComponentImpl.java
index 732eafa5e673829e3cf0f0f722828b8a5aa8ba4f..2553dc693648a0de670caf06eff3e5f90cc813c7 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormBaseComponentImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormBaseComponentImpl.java
@@ -25,7 +25,6 @@
 */
 package org.olat.core.gui.components.form.flexible.impl;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.AbstractComponent;
 import org.olat.core.gui.components.form.flexible.FormBaseComponentIdProvider;
@@ -59,17 +58,8 @@ public abstract class FormBaseComponentImpl extends AbstractComponent implements
 		super(id, name, translator);
 	}
 	
-	private long replayDispatchId;
-	protected void setReplayableDispatchID(long id) {
-		replayDispatchId = id;
-	}
-	
 	public String getFormDispatchId(){		
-		if(GUIInterna.isLoadPerformanceMode()){
-			return DISPPREFIX+replayDispatchId;
-		}else{
-			return DISPPREFIX+super.getDispatchID();
-		}
+		return DISPPREFIX+super.getDispatchID();
 	}
 
 	@Override
@@ -79,5 +69,4 @@ public abstract class FormBaseComponentImpl extends AbstractComponent implements
 		//form elements dispatch id.
 		throw new AssertException("The form element <"+getComponentName()+"> with id <"+getFormDispatchId()+"> should not be dispatched by GUI framework:");
 	}
-	
 }
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormItemImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormItemImpl.java
index 762eda581648dae0a304d90dd3382bdf1560fbb0..59beb195dc333dad893b14b0dff2c872f8c85fca 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormItemImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormItemImpl.java
@@ -27,7 +27,6 @@ package org.olat.core.gui.components.form.flexible.impl;
 
 import java.util.List;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.form.flexible.FormBaseComponentIdProvider;
@@ -515,13 +514,9 @@ public abstract class FormItemImpl implements FormItem, InlineElement {
 
 		if(comp instanceof FormBaseComponentIdProvider){
 			return ((FormBaseComponentIdProvider)comp).getFormDispatchId();
-		}else{
+		} else {
 			//do the same as the FormBaseComponentIdProvider would do
-			if(GUIInterna.isLoadPerformanceMode()) {
-				return DISPPREFIX+getRootForm().getReplayableDispatchID(comp);
-			} else {
-				return DISPPREFIX+comp.getDispatchID();
-			}
+			return DISPPREFIX+comp.getDispatchID();
 		}
 	}
 
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java
index 83eeee748bb4aef91d19f074cc3447db65483951..2eb4e7bc1f775db3280ff18f0c339d7775fb1762 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/FormLayoutContainer.java
@@ -33,7 +33,6 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.form.flexible.FormItem;
@@ -189,15 +188,6 @@ public class FormLayoutContainer extends FormItemImpl implements FormItemContain
 		formComponentsNames.add(formCompName);
 		formComponents.put(formCompName, formComp);
 		
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			// sort of "register" the new FormItem
-			// so that it will have a replayableID
-			getRootForm().getReplayableDispatchID(
-				formComp.getComponent()
-			);
-		}
-		
 		/*
 		 * add the gui representation
 		 */
@@ -262,18 +252,10 @@ public class FormLayoutContainer extends FormItemImpl implements FormItemContain
 		String formCompName = formComp.getName();
 		// book keeping of FormComponent order
 		listeningOnlyFormComponents.put(formCompName, formComp);
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			// sort of "register" the new FormItem
-			// so that it will have a replayableID
-			getRootForm().getReplayableDispatchID(
-				formComp.getComponent()
-			);
-		}
-		
 	}
-
-	public void remove(FormItem toBeRemoved){
+	
+	@Override
+	public void remove(FormItem toBeRemoved) {
 		String formCompName = toBeRemoved.getName();
 		remove(formCompName, toBeRemoved);
 	}
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooser.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooser.java
index 5586345518227b0ea57ae4e9964fef3798cffa88..d80884cdd24a60ed0469c3ccb7d2a380ffefd442 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooser.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/JSDateChooser.java
@@ -31,7 +31,6 @@ import java.util.Date;
 import java.util.List;
 import java.util.Locale;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.form.flexible.elements.DateChooser;
@@ -147,9 +146,6 @@ public class JSDateChooser extends TextElementImpl implements DateChooser {
 		super.rootFormAvailable();
 		//locale is available!
 		locale = getTranslator().getLocale();
-		if (GUIInterna.isLoadPerformanceMode()) {
-			getRootForm().getReplayableDispatchID(dateComponent);
-		}
 	}
 
 	private boolean checkValidDate() {
@@ -167,6 +163,7 @@ public class JSDateChooser extends TextElementImpl implements DateChooser {
 	/* (non-Javadoc)
 	 * @see org.olat.core.gui.components.form.flexible.impl.elements.DateChooser#getDate()
 	 */
+	@Override
 	public Date getDate() {
 		Date d = null;
 		try {
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/MultipleSelectionElementImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/MultipleSelectionElementImpl.java
index 18b96086e567ccceb5b8c57e3022fea4d2a8881f..6ad36c8e02bad989204d48d069655fc24f400977 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/MultipleSelectionElementImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/MultipleSelectionElementImpl.java
@@ -31,7 +31,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement;
 import org.olat.core.gui.components.form.flexible.impl.FormItemImpl;
@@ -359,11 +358,7 @@ public class MultipleSelectionElementImpl extends FormItemImpl implements Multip
 	 */
 	@Override
 	public String getFormDispatchId() {
-		if(GUIInterna.isLoadPerformanceMode()){
-			return DISPPREFIX + getRootForm().getReplayableDispatchID(getComponent());
-		}else{
-			return DISPPREFIX + getComponent().getDispatchID();
-		}
+		return DISPPREFIX + getComponent().getDispatchID();
 	}
 
 	@Override
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxRenderer.java
index dd2a5c4ead07f77b74d2c482107ca456c7732413..7c38c22ca3d3bbe1aedc2a3d2d5f53cd8656c3ca 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxRenderer.java
@@ -26,14 +26,12 @@
 package org.olat.core.gui.components.form.flexible.impl.elements;
 
 import org.apache.commons.lang.StringEscapeUtils;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
+import org.olat.core.gui.components.DefaultComponentRenderer;
 import org.olat.core.gui.components.form.flexible.impl.FormEvent;
 import org.olat.core.gui.components.form.flexible.impl.FormJSHelper;
 import org.olat.core.gui.render.RenderResult;
 import org.olat.core.gui.render.Renderer;
-import org.olat.core.gui.render.RenderingState;
 import org.olat.core.gui.render.StringOutput;
 import org.olat.core.gui.render.URLBuilder;
 import org.olat.core.gui.translator.Translator;
@@ -46,21 +44,17 @@ import org.olat.core.gui.translator.Translator;
  * Initial Date:  02.01.2007 <br>
  * @author patrickb
  */
-class SelectboxRenderer implements ComponentRenderer {
+class SelectboxRenderer extends DefaultComponentRenderer {
 
 	/**
 	 * @see org.olat.core.gui.components.ComponentRenderer#render(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator, org.olat.core.gui.render.RenderResult, java.lang.String[])
 	 */
+	@Override
 	public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator,
 			RenderResult renderResult, String[] args) {
 
 		SelectboxComponent ssec = (SelectboxComponent)source;
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			// Just make sure the replayID mapping is known
-			ssec.getRootForm().getReplayableDispatchID(source);
-		}
-		
+
 		String subStrName = "name=\"" + ssec.getGroupingName() + "\"";
 		String[] options = ssec.getOptions();
 		String[] values = ssec.getValues();
@@ -129,22 +123,4 @@ class SelectboxRenderer implements ComponentRenderer {
 		}
 		
 	}
-
-	/**
-	 * @see org.olat.core.gui.components.ComponentRenderer#renderBodyOnLoadJSFunctionCall(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.RenderingState)
-	 */
-	public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) {
-	// TODO Auto-generated method stub
-
-	}
-
-	/**
-	 * @see org.olat.core.gui.components.ComponentRenderer#renderHeaderIncludes(org.olat.core.gui.render.Renderer, org.olat.core.gui.render.StringOutput, org.olat.core.gui.components.Component, org.olat.core.gui.render.URLBuilder, org.olat.core.gui.translator.Translator, org.olat.core.gui.render.RenderingState)
-	 */
-	public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator,
-			RenderingState rstate) {
-	// TODO Auto-generated method stub
-
-	}
-
-}
+}
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxSelectionImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxSelectionImpl.java
index ee6cb270b1ad9218d22a27900ebdd49e7fc7e17c..afbe10f52d8c68cc17f9f61b54b3ef9a071840ad 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxSelectionImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SelectboxSelectionImpl.java
@@ -27,7 +27,6 @@ package org.olat.core.gui.components.form.flexible.impl.elements;
 
 import java.util.List;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.elements.SingleSelection;
 import org.olat.core.gui.components.form.flexible.impl.FormItemImpl;
@@ -265,11 +264,7 @@ public class SelectboxSelectionImpl extends FormItemImpl implements SingleSelect
 		 * dispatch id, but it must always be the formLayoutContainer -> see getComponent() to
 		 * understand why this is not always the case.
 		 */
-		if(GUIInterna.isLoadPerformanceMode()){
-			return DISPPREFIX + getRootForm().getReplayableDispatchID(component);
-		}else{
-			return DISPPREFIX + component.getDispatchID();
-		}
+		return DISPPREFIX + component.getDispatchID();
 	}
 	
 	@Override
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SingleSelectionImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SingleSelectionImpl.java
index d955eb6b2bbd6910d5c54871658bb29fb8cd7617..7a615f0222f3d6c45a1bb9ba3ccd90228ada51b8 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SingleSelectionImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/SingleSelectionImpl.java
@@ -27,7 +27,6 @@ package org.olat.core.gui.components.form.flexible.impl.elements;
 
 import java.util.List;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.elements.SingleSelection;
 import org.olat.core.gui.components.form.flexible.impl.FormItemImpl;
@@ -264,11 +263,7 @@ public class SingleSelectionImpl extends FormItemImpl implements SingleSelection
 		 * dispatch id, but it must always be the formLayoutContainer -> see getComponent() to
 		 * understand why this is not always the case.
 		 */
-		if(GUIInterna.isLoadPerformanceMode()){
-			return DISPPREFIX + getRootForm().getReplayableDispatchID(component);
-		}else{
-			return DISPPREFIX + component.getDispatchID();
-		}
+		return DISPPREFIX + component.getDispatchID();
 	}
 
 	private void initSelectionElements() {
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementImpl.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementImpl.java
index 25a310aa85aa5bdf5fd447a92db5b14f899d69b9..e9b4ffaaa6aae466f66ab676245424d51ad3424d 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementImpl.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementImpl.java
@@ -20,7 +20,6 @@
 
 package org.olat.core.gui.components.form.flexible.impl.elements.richText;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.form.flexible.elements.RichTextElement;
@@ -94,17 +93,9 @@ public class RichTextElementImpl extends AbstractTextElement implements
 		component = new RichTextElementComponent(this, rows, cols);
 		// configure tiny (must be after component initialization)
 		// init editor on our form element
-		if (GUIInterna.isLoadPerformanceMode()) {
-			configuration = new RichTextConfiguration(
-				DISPPREFIX+rootForm.getReplayableDispatchID(getComponent()),
-				rootForm.getDispatchFieldId()
-			);
-		} else {
-			configuration = new RichTextConfiguration(
-				getFormDispatchId(),
-				rootForm.getDispatchFieldId()
-			);
-		}
+		configuration = new RichTextConfiguration(
+			getFormDispatchId(),
+			rootForm.getDispatchFieldId());
 	}
 	
 	/**
diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java
index c18bc9bc9b31b06928e9ae6a91ad5a0337cc948e..6fff98f2ef5a0540198b843960660e4f34f54513 100644
--- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/richText/RichTextElementRenderer.java
@@ -24,10 +24,8 @@ import java.util.List;
 
 import org.apache.commons.lang.StringEscapeUtils;
 import org.olat.core.dispatcher.impl.StaticMediaDispatcher;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.ComponentRenderer;
-import org.olat.core.gui.components.form.flexible.FormBaseComponentIdProvider;
 import org.olat.core.gui.components.form.flexible.impl.FormJSHelper;
 import org.olat.core.gui.render.RenderResult;
 import org.olat.core.gui.render.Renderer;
@@ -66,12 +64,7 @@ class RichTextElementRenderer implements ComponentRenderer {
 		RichTextElementImpl te = teC.getRichTextElementImpl();
 		int rows = teC.getRows();
 		// DOM ID used to identify the rich text element in the browser DOM
-		String domID;
-        if (GUIInterna.isLoadPerformanceMode()) {
-        	domID = FormBaseComponentIdProvider.DISPPREFIX+te.getRootForm().getReplayableDispatchID(teC);
-        } else {
-        	domID = teC.getFormDispatchId();
-        }
+		String domID = teC.getFormDispatchId();
 		
         // Use an empty string as default value
 		String value = te.getRawValue();
diff --git a/src/main/java/org/olat/core/gui/components/link/FormLinkFactory.java b/src/main/java/org/olat/core/gui/components/link/FormLinkFactory.java
index ba6107093b1eb060697c3823f8cd366bb4e190a6..228ccf5b7b9ba20bf8bd45a3a86faeda48572eab 100644
--- a/src/main/java/org/olat/core/gui/components/link/FormLinkFactory.java
+++ b/src/main/java/org/olat/core/gui/components/link/FormLinkFactory.java
@@ -25,7 +25,6 @@
 */
 package org.olat.core.gui.components.link;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.form.flexible.FormBaseComponentIdProvider;
 import org.olat.core.gui.components.form.flexible.impl.Form;
 
@@ -59,11 +58,7 @@ public class FormLinkFactory {
 	 */
 	public static Link createFormLink(String id, String name, Form form) {
 		Link foLnk = new Link(id, name, name, name,  Link.LINK + Link.FLEXIBLEFORMLNK, form);
-		if (GUIInterna.isLoadPerformanceMode()) {
-			foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+form.getReplayableDispatchID(foLnk));
-		} else {
-			foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+foLnk.getDispatchID());
-		}
+		foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+foLnk.getDispatchID());
 		return foLnk;
 	}
 	
@@ -91,12 +86,7 @@ public class FormLinkFactory {
 	 */
 	public static Link createCustomFormLink(String id, String name, String cmd, String key, int presentation, Form form) {
 		Link foLnk = new Link(id, name, cmd, key, presentation + Link.FLEXIBLEFORMLNK, form);
-		if (GUIInterna.isLoadPerformanceMode()) {
-			foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+form.getReplayableDispatchID(foLnk));
-		} else {
-			foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+foLnk.getDispatchID());
-		}
+		foLnk.setElementId(FormBaseComponentIdProvider.DISPPREFIX+foLnk.getDispatchID());
 		return foLnk;
 	}
-
-}
+}
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/components/tree/MenuTree.java b/src/main/java/org/olat/core/gui/components/tree/MenuTree.java
index 54f15e2ce675d559209940f68bb09f627f8b6795..264798c95b8edaed599bdc3d2540351d4f70dc77 100644
--- a/src/main/java/org/olat/core/gui/components/tree/MenuTree.java
+++ b/src/main/java/org/olat/core/gui/components/tree/MenuTree.java
@@ -33,7 +33,6 @@ import java.util.Collection;
 import java.util.HashSet;
 import java.util.Set;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.AbstractComponent;
 import org.olat.core.gui.components.ComponentRenderer;
@@ -42,7 +41,6 @@ import org.olat.core.gui.control.JSAndCSSAdder;
 import org.olat.core.gui.render.ValidationResult;
 import org.olat.core.util.StringHelper;
 import org.olat.core.util.nodes.INode;
-import org.olat.core.util.tree.TreeHelper;
 
 /**
  * Description: <br>
@@ -154,14 +152,6 @@ public class MenuTree extends AbstractComponent {
 	 */
 	@Override
 	protected void doDispatchRequest(UserRequest ureq) {
-		if (GUIInterna.isLoadPerformanceMode()) {
-			String compPath = ureq.getParameter("en");
-			TreeNode selTreeNode = TreeHelper.resolveTreeNode(compPath, getTreeModel());
-			selectedNodeId = selTreeNode.getIdent();
-			handleClick(ureq, "", selectedNodeId);
-			return;
-		}
-		
 		String cmd = ureq.getParameter(COMMAND_ID);
 		String nodeId = ureq.getParameter(NODE_IDENT);
 		if(COMMAND_TREENODE_CLICKED.equals(cmd)) {
diff --git a/src/main/java/org/olat/core/gui/components/tree/MenuTreeRenderer.java b/src/main/java/org/olat/core/gui/components/tree/MenuTreeRenderer.java
index 556572cb8f166e9d02be819f152b075dc168a673..c0a81bef70f8a81e2265f8bf2fdca2063dccd2c6 100644
--- a/src/main/java/org/olat/core/gui/components/tree/MenuTreeRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/tree/MenuTreeRenderer.java
@@ -37,7 +37,6 @@ import java.util.Collection;
 import java.util.List;
 
 import org.apache.commons.lang.StringEscapeUtils;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.DefaultComponentRenderer;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
@@ -48,7 +47,6 @@ import org.olat.core.gui.render.URLBuilder;
 import org.olat.core.gui.translator.Translator;
 import org.olat.core.util.StringHelper;
 import org.olat.core.util.nodes.INode;
-import org.olat.core.util.tree.TreeHelper;
 
 /**
  * enclosing_type Description: <br>
@@ -170,17 +168,11 @@ public class MenuTreeRenderer extends DefaultComponentRenderer {
 			target.append("<a onclick='o2cl_secure()' href=\"");
 			
 			// Build menu item URI
-			if (GUIInterna.isLoadPerformanceMode()) {
-				//	 if in load perf test -> generate the treeposition and include it as param, since the nodeid itself is random and thus not replayable			
-				String treePath = TreeHelper.buildTreePath(curRoot);			
-				ubu.buildURI(target, new String[] { "en" }, new String[] { treePath });
+			String cmd = renderChildren ? MenuTree.TREENODE_CLOSE : MenuTree.TREENODE_OPEN;
+			if (iframePostEnabled) {
+				ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT, COMMAND_TREENODE }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent(), cmd }, AJAXFlags.MODE_TOBGIFRAME);
 			} else {
-				String cmd = renderChildren ? MenuTree.TREENODE_CLOSE : MenuTree.TREENODE_OPEN;
-				if (iframePostEnabled) {
-					ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT, COMMAND_TREENODE }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent(), cmd }, AJAXFlags.MODE_TOBGIFRAME);
-				} else {
-					ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT, cmd }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent(), cmd });
-				}
+				ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT, cmd }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent(), cmd });
 			}
 			
 			target.append("\"");
@@ -223,17 +215,12 @@ public class MenuTreeRenderer extends DefaultComponentRenderer {
 		target.append("' onclick='o2cl_secure()' href=\"");					
 		
 		// Build menu item URI
-		if (GUIInterna.isLoadPerformanceMode()) {
-			//	 if in load perf test -> generate the treeposition and include it as param, since the nodeid itself is random and thus not replayable			
-			String treePath = TreeHelper.buildTreePath(curRoot);			
-			ubu.buildURI(target, new String[] { "en" }, new String[] { treePath });
+		if (iframePostEnabled) {
+			ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent() }, AJAXFlags.MODE_TOBGIFRAME);
 		} else {
-			if (iframePostEnabled) {
-				ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent() }, AJAXFlags.MODE_TOBGIFRAME);
-			} else {
-				ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent() });
-			}
+			ubu.buildURI(target, new String[] { COMMAND_ID, NODE_IDENT }, new String[] { COMMAND_TREENODE_CLICKED, curRoot.getIdent() });
 		}
+
 		target.append("\"");	
 		
 		// Add menu item title as alt hoover text
diff --git a/src/main/java/org/olat/core/gui/components/tree/MenuTreeScreenreaderRenderer.java b/src/main/java/org/olat/core/gui/components/tree/MenuTreeScreenreaderRenderer.java
index 73337847a886f3dab12372ef57659e98a36430ae..d4ae71b8170fc1ed802ca1fd5963d66bb3186ac4 100644
--- a/src/main/java/org/olat/core/gui/components/tree/MenuTreeScreenreaderRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/tree/MenuTreeScreenreaderRenderer.java
@@ -30,7 +30,6 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.commons.lang.StringEscapeUtils;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
@@ -128,26 +127,10 @@ public class MenuTreeScreenreaderRenderer implements ComponentRenderer {
 		target.append("<a onclick=\"return o2cl()\" href=\"");			
 		
 		boolean iframePostEnabled = flags.isIframePostEnabled();
-		if (GUIInterna.isLoadPerformanceMode()) {
-			//	 if in load perf test -> generate the treeposition and include it as param, since the nodeid itself is random and thus not replayable
-			StringBuilder conPath = new StringBuilder();
-			// we need at least one char in the var, even if we click the root node
-			conPath.append('!');
-			TreeNode cur = curRoot;
-			TreeNode par = (TreeNode) cur.getParent();
-			while (par != null) {
-				int cpos = cur.getPosition();
-				conPath.append(cpos).append('!');
-				cur = par;
-				par = (TreeNode) cur.getParent();
-			}
-			ubu.buildURI(target, new String[] { "en" }, new String[] { conPath.toString() });
+		if (iframePostEnabled) {
+			ubu.buildURI(target, new String[] { MenuTree.NODE_IDENT }, new String[] { curRoot.getIdent() }, AJAXFlags.MODE_TOBGIFRAME);
 		} else {
-			if (iframePostEnabled) {
-				ubu.buildURI(target, new String[] { MenuTree.NODE_IDENT }, new String[] { curRoot.getIdent() }, AJAXFlags.MODE_TOBGIFRAME);
-			} else {
-				ubu.buildURI(target, new String[] { MenuTree.NODE_IDENT }, new String[] { curRoot.getIdent() });
-			}
+			ubu.buildURI(target, new String[] { MenuTree.NODE_IDENT }, new String[] { curRoot.getIdent() });
 		}		
 		
 		target.append("\" title=\"");
diff --git a/src/main/java/org/olat/core/gui/components/tree/SelectionTree.java b/src/main/java/org/olat/core/gui/components/tree/SelectionTree.java
index d3fd9953f14c1d4586789b3b66182b1037defc9c..a101586502e53bd8d16fc5d252b0256790b592e9 100644
--- a/src/main/java/org/olat/core/gui/components/tree/SelectionTree.java
+++ b/src/main/java/org/olat/core/gui/components/tree/SelectionTree.java
@@ -26,14 +26,12 @@
 
 package org.olat.core.gui.components.tree;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.AbstractComponent;
 import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.components.form.Form;
 import org.olat.core.gui.translator.Translator;
 import org.olat.core.util.Util;
-import org.olat.core.util.tree.TreeHelper;
 
 /**
  * Description: <br> 
@@ -76,13 +74,7 @@ public class SelectionTree extends AbstractComponent {
 		int iMode = -1;//0 -> OK, 1 -> CANCEL
 		if (ureq.getParameter(Form.SUBMIT_IDENTIFICATION) != null) {
 			iMode = 0;
-			if (GUIInterna.isLoadPerformanceMode()) {
-				String selPath = ureq.getParameter(SelectionTreeRenderer.ATTR_SELECTION);
-				TreeNode tn = TreeHelper.resolveTreeNode(selPath, getTreeModel());
-				selectedNodeId = tn.getIdent();
-			} else {
-				selectedNodeId = ureq.getParameter(SelectionTreeRenderer.ATTR_SELECTION);
-			}
+			selectedNodeId = ureq.getParameter(SelectionTreeRenderer.ATTR_SELECTION);
 		} else {
 			iMode = 1;
 		}
diff --git a/src/main/java/org/olat/core/gui/components/tree/SelectionTreeRenderer.java b/src/main/java/org/olat/core/gui/components/tree/SelectionTreeRenderer.java
index ddc00012303829acbaad4877e0c084188a960795..d8a6a93c508188313b287d16c236b57a0a7d6925 100644
--- a/src/main/java/org/olat/core/gui/components/tree/SelectionTreeRenderer.java
+++ b/src/main/java/org/olat/core/gui/components/tree/SelectionTreeRenderer.java
@@ -27,7 +27,6 @@
 package org.olat.core.gui.components.tree;
 
 import org.apache.commons.lang.StringEscapeUtils;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.DefaultComponentRenderer;
 import org.olat.core.gui.components.form.Form;
@@ -38,7 +37,6 @@ import org.olat.core.gui.render.StringOutput;
 import org.olat.core.gui.render.URLBuilder;
 import org.olat.core.gui.translator.Translator;
 import org.olat.core.util.StringHelper;
-import org.olat.core.util.tree.TreeHelper;
 
 /**
  * enclosing_type Description: <br>
@@ -153,13 +151,9 @@ public class SelectionTreeRenderer extends DefaultComponentRenderer {
 			sb.append("<div class='radio o_tree_l").append(level).append("'>")
 			  .append("<label class='").append(cssClass, cssClass != null).append("'>");
 			
-			sb.append("<input type='radio' name=\"" + ATTR_SELECTION + "\" value=\"");
-			if (GUIInterna.isLoadPerformanceMode()) {
-				sb.append(TreeHelper.buildTreePath(child));
-			} else {
-				sb.append(child.getIdent());
-			}
-			sb.append("\" onchange=\"return setFormDirty('").append(Form.JSFORMID).append(treeID).append("')\" ")
+			sb.append("<input type='radio' name=\"" + ATTR_SELECTION + "\" value=\"")
+			  .append(child.getIdent())
+			  .append("\" onchange=\"return setFormDirty('").append(Form.JSFORMID).append(treeID).append("')\" ")
 			  .append(" onclick=\"return setFormDirty('").append(Form.JSFORMID).append(treeID).append("')\" />");
 			
 			renderNodeIcon(sb, child);				
diff --git a/src/main/java/org/olat/core/gui/render/EmptyURLBuilder.java b/src/main/java/org/olat/core/gui/render/EmptyURLBuilder.java
index 0daf7de4593929ca27fb660039635942194c3375..aa91ad0cef2563f035228d6d8e753a34b4d47bb9 100644
--- a/src/main/java/org/olat/core/gui/render/EmptyURLBuilder.java
+++ b/src/main/java/org/olat/core/gui/render/EmptyURLBuilder.java
@@ -67,9 +67,4 @@ public class EmptyURLBuilder extends URLBuilder {
 	public URLBuilder createCopyFor(Component source) {
 		return super.createCopyFor(source);
 	}
-
-	@Override
-	public void setComponentPath(String componentPath) {
-		// nothing to do
-	}
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/render/Renderer.java b/src/main/java/org/olat/core/gui/render/Renderer.java
index 2c9c2f98bbf6f09306662f78da361d6562f0136a..5ac8fbd4c8337e26864087aa88faae80c24fa09b 100644
--- a/src/main/java/org/olat/core/gui/render/Renderer.java
+++ b/src/main/java/org/olat/core/gui/render/Renderer.java
@@ -26,11 +26,7 @@
 
 package org.olat.core.gui.render;
 
-import java.util.Iterator;
-import java.util.Map;
-
 import org.olat.core.dispatcher.impl.StaticMediaDispatcher;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.GlobalSettings;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.components.ComponentCollection;
@@ -226,30 +222,7 @@ public class Renderer {
 			
 			ComponentRenderer cr = findComponentRenderer(source);
 			URLBuilder cubu = urlBuilder.createCopyFor(source);
-			
-			// OLAT-1973
-			if (GUIInterna.isLoadPerformanceMode()) {
-				StringBuilder pathsb = new StringBuilder();
-				Component cc = source;
-				ComponentCollection ccpar = cc.getParent();
-				while (ccpar != null) { // omit content pane
-					// find out name under which cc was registered in its parent - that is the relevant name, not the name of the component itself
-					Map<String,Component> namedChildren = ccpar.getComponentMap();
-					for (Iterator<String> it_chd = namedChildren.keySet().iterator(); it_chd.hasNext();) {
-						String chdName = it_chd.next();
-						Component chd = ccpar.getComponent(chdName);
-						if (chd == cc) {
-							// found -> append name
-							pathsb.append(chdName).append('!');
-							break;
-						}
-					}
-					cc = ccpar;
-					ccpar = cc.getParent();
-				}
-				cubu.setComponentPath(pathsb.toString());
-			}
-			
+
 			renderResult.incNestedLevel();
 	
 			// ---- for gui debug mode, direct the rendering to a special componentrenderer 
diff --git a/src/main/java/org/olat/core/gui/render/URLBuilder.java b/src/main/java/org/olat/core/gui/render/URLBuilder.java
index 38a8abea9d1396d7ff969ea3f677f92efb2f72cd..445acd2aba4256fbb18be2f8b8dc359b82ce2929 100644
--- a/src/main/java/org/olat/core/gui/render/URLBuilder.java
+++ b/src/main/java/org/olat/core/gui/render/URLBuilder.java
@@ -30,7 +30,6 @@ import java.io.UnsupportedEncodingException;
 import java.net.URLEncoder;
 import java.util.regex.Pattern;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
@@ -52,7 +51,6 @@ public class URLBuilder {
 	private final String timestampID;
 	private String componentID;
 	private String componentTimestamp;
-	private String componentPath;
 	
 	private final String iframeTargetName;
 
@@ -170,14 +168,6 @@ public class URLBuilder {
 			}
 		}
 		
-		// OLAT-1973 
-		if (GUIInterna.isLoadPerformanceMode()) {
-			result.append(UserRequest.PARAM_DELIM);
-			result.append('e');
-			result.append(UserRequest.PARAM_DELIM);
-			result.append(componentPath);			
-		}
-		
 		result.append('/');
 		if (modURI != null) result.append(modURI);
 		//FIXME:fj:a urlEncodeUTF8 is slow; improve the regexp, also convert only the modURI to utf-8?
@@ -263,18 +253,7 @@ public class URLBuilder {
 		return encodedURL;
 	}
 
-	/**
-	 * used for OLAT-1973 only: if in replayable-url-mode for performance testing
-	 * @param componentPath The componentPath to set.
-	 */
-	public void setComponentPath(String componentPath) {
-		this.componentPath = componentPath;
-	}
-
 	String getUriPrefix() {
 		return uriPrefix;
 	}
-
-	
-
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java
index d087d167cbee31790a017eb3a0812c611f14872b..ff6f1cbd3711bb42016cbf1c9c7033cf91274005 100644
--- a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java
+++ b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java
@@ -38,7 +38,6 @@ import org.olat.core.dispatcher.Dispatcher;
 import org.olat.core.dispatcher.DispatcherModule;
 import org.olat.core.dispatcher.mapper.GlobalMapperRegistry;
 import org.olat.core.dispatcher.mapper.MapperDispatcher;
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.helpers.Settings;
 import org.olat.core.logging.OLog;
 import org.olat.core.logging.Tracing;
@@ -123,8 +122,7 @@ public class OpenOLATServlet extends HttpServlet {
 	protected void service(HttpServletRequest req, HttpServletResponse resp)
 	throws ServletException, IOException {
 		//log.info(req.getMethod() + " :: " + req.getPathInfo());
-		
-		GUIInterna.begin(req);
+
 		Tracing.setUreq(req);
 		ThreadLocalUserActivityLoggerInstaller.initUserActivityLogger(req);
 		WorkThreadInformations.set("Serve request: " + req.getRequestURI());
@@ -164,7 +162,6 @@ public class OpenOLATServlet extends HttpServlet {
 			ThreadLocalUserActivityLoggerInstaller.resetUserActivityLogger();
 			I18nManager.remove18nInfoFromThread();
 			Tracing.setUreq(null);
-			GUIInterna.end(req);
 			//let it at the end
 			DBFactory.getInstance().commitAndCloseSession();
 		}
diff --git a/src/main/java/org/olat/login/auth/OLATAuthentcationForm.java b/src/main/java/org/olat/login/auth/OLATAuthentcationForm.java
index fea2d0b61182c3f6c99c096d49b59c281c9ffbda..762c60106b540f9b2184374fb4068d1cb40dc839 100644
--- a/src/main/java/org/olat/login/auth/OLATAuthentcationForm.java
+++ b/src/main/java/org/olat/login/auth/OLATAuthentcationForm.java
@@ -25,7 +25,6 @@
 
 package org.olat.login.auth;
 
-import org.olat.core.gui.GUIInterna;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.FormItem;
 import org.olat.core.gui.components.form.flexible.FormItemContainer;
@@ -98,10 +97,6 @@ public class OLATAuthentcationForm extends FormBasicController {
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
 		setFormTitle("login.form");
 		setFormDescription("login.intro");
-		
-		if (GUIInterna.isLoadPerformanceMode()) {
-			setFormWarning("loadtest.warn");
-		}
 	
 		FormLayoutContainer loginWrapper = FormLayoutContainer.createInputGroupLayout("loginWrapper", getTranslator(), "<i class='o_icon o_icon-fw o_icon_user'> </i>", null);
 		formLayout.add(loginWrapper);