diff --git a/src/main/java/org/olat/course/assessment/ui/mode/AssessmentModeEditController.java b/src/main/java/org/olat/course/assessment/ui/mode/AssessmentModeEditController.java
index df59674fa3429c17c0b9e0f14febaccec6800137..754ddc393b5bbd62bcea1818b8f7275f28939c33 100644
--- a/src/main/java/org/olat/course/assessment/ui/mode/AssessmentModeEditController.java
+++ b/src/main/java/org/olat/course/assessment/ui/mode/AssessmentModeEditController.java
@@ -337,7 +337,8 @@ public class AssessmentModeEditController extends FormBasicController {
 		ipsEl.addActionListener(FormEvent.ONCHANGE);
 		ipsEl.setEnabled(status != Status.end);
 		String ipList = assessmentMode.getIpList();
-		ipListEl = uifactory.addTextAreaElement("mode.ips.list", "mode.ips.list", 4096, 4, 60, false, false, ipList, formLayout);
+		ipListEl = uifactory.addTextAreaElement("mode.ips.list", "mode.ips.list", 16000, 4, 60, false, false, ipList, formLayout);
+		ipListEl.setMaxLength(16000);
 		ipListEl.setVisible(assessmentMode.isRestrictAccessIps());
 		ipListEl.setEnabled(status != Status.end);
 		
@@ -346,7 +347,8 @@ public class AssessmentModeEditController extends FormBasicController {
 		safeExamBrowserEl.addActionListener(FormEvent.ONCHANGE);
 		safeExamBrowserEl.setEnabled(status != Status.end);
 		String key = assessmentMode.getSafeExamBrowserKey();
-		safeExamBrowserKeyEl = uifactory.addTextAreaElement("safeexamkey", "mode.safeexambrowser.key", 4096, 6, 60, false, false, key, formLayout);
+		safeExamBrowserKeyEl = uifactory.addTextAreaElement("safeexamkey", "mode.safeexambrowser.key", 16000, 6, 60, false, false, key, formLayout);
+		safeExamBrowserKeyEl.setMaxLength(16000);
 		safeExamBrowserKeyEl.setVisible(assessmentMode.isSafeExamBrowser());
 		safeExamBrowserKeyEl.setEnabled(status != Status.end);
 		String hint = assessmentMode.getSafeExamBrowserHint();
@@ -557,6 +559,9 @@ public class AssessmentModeEditController extends FormBasicController {
 			if(!StringHelper.containsNonWhitespace(value)) {
 				safeExamBrowserKeyEl.setErrorKey("form.legende.mandatory", null);
 				allOk &= false;
+			} else if(value.length() > safeExamBrowserKeyEl.getMaxLength()) {
+				safeExamBrowserKeyEl.setErrorKey("form.error.toolong", new String[] { Integer.toString(safeExamBrowserKeyEl.getMaxLength()) } );
+				allOk &= false;
 			}
 		}
 		
@@ -566,6 +571,9 @@ public class AssessmentModeEditController extends FormBasicController {
 			if(!StringHelper.containsNonWhitespace(value)) {
 				ipListEl.setErrorKey("form.legende.mandatory", null);
 				allOk &= false;
+			} else if(value.length() > ipListEl.getMaxLength()) {
+				ipListEl.setErrorKey("form.error.toolong", new String[] { Integer.toString(ipListEl.getMaxLength()) } );
+				allOk &= false;
 			}
 		}
 		return allOk;
diff --git a/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java b/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java
index 7d6693993c3b66f199b6f56086c26cc06ebe3c31..40dbee1311b28275b17d36f8d4af7706253d815d 100644
--- a/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java
+++ b/src/main/java/org/olat/course/nodes/en/ENEditGroupAreaFormController.java
@@ -187,12 +187,13 @@ class ENEditGroupAreaFormController extends FormBasicController implements Gener
 		List<EnrollmentRow> enrollmentRows = enrollmentManager.getEnrollments(getIdentity(), groupKeys, null, 256);
 		Map<Long,EnrollmentRow> enrollmentMap = enrollmentRows.stream().collect(Collectors.toMap(EnrollmentRow::getKey, g -> g, (u, v) -> u));
 
-		easyGroupTableRows = new ArrayList<ENEditGroupTableContentRow>();
+		easyGroupTableRows = new ArrayList<>();
 		for (Long groupKey : groupKeys) {
 			BusinessGroup group = groupMap.get(groupKey);
-			EnrollmentRow enrollment = enrollmentMap.get(groupKey);
-			
-			easyGroupTableRows.add(new ENEditGroupTableContentRow(group, enrollment));
+			if(group != null) {
+				EnrollmentRow enrollment = enrollmentMap.get(groupKey);
+				easyGroupTableRows.add(new ENEditGroupTableContentRow(group, enrollment));
+			}
 		}
 
 		easyGroupTableModel.setObjects(easyGroupTableRows);
diff --git a/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml b/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml
index 65508d2b755516132626f446def48889f5d0866e..a6905f231cd6743dcfdcabb7958f3ce8f90ee0f2 100644
--- a/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml
+++ b/src/main/java/org/olat/upgrade/_spring/databaseUpgradeContext.xml
@@ -224,6 +224,10 @@
 					<constructor-arg index="0" value="OLAT_14.2.7" />
 					<property name="alterDbStatements" value="alter_14_2_x_to_14_2_7.sql" />
 				</bean>
+				<bean id="database_upgrade_14_2_13" class="org.olat.upgrade.DatabaseUpgrade">
+					<constructor-arg index="0" value="OLAT_14.2.13" />
+					<property name="alterDbStatements" value="alter_14_2_x_to_14_2_13.sql" />
+				</bean>
 				<bean id="database_upgrade_15_pre_0" class="org.olat.upgrade.DatabaseUpgrade">
 					<constructor-arg index="0" value="OLAT_15.pre.0" />
 					<property name="alterDbStatements" value="alter_14_2_x_to_15_pre_0.sql" />
diff --git a/src/main/resources/database/mysql/alter_14_2_x_to_14_2_13.sql b/src/main/resources/database/mysql/alter_14_2_x_to_14_2_13.sql
new file mode 100644
index 0000000000000000000000000000000000000000..35ad20bf9472a62d158c4777d44bfc6145111bb6
--- /dev/null
+++ b/src/main/resources/database/mysql/alter_14_2_x_to_14_2_13.sql
@@ -0,0 +1,4 @@
+alter table o_as_mode_course modify a_elements text(32000);
+alter table o_as_mode_course modify a_ips text(32000);
+alter table o_as_mode_course modify a_safeexambrowserkey text(32000);
+
diff --git a/src/main/resources/database/oracle/alter_14_2_x_to_14_2_13.sql b/src/main/resources/database/oracle/alter_14_2_x_to_14_2_13.sql
new file mode 100644
index 0000000000000000000000000000000000000000..c7d4908afd6e9737c97a08f650f9a492a4abe103
--- /dev/null
+++ b/src/main/resources/database/oracle/alter_14_2_x_to_14_2_13.sql
@@ -0,0 +1,4 @@
+alter table o_as_mode_course modify a_elements varchar(32000);
+alter table o_as_mode_course modify a_ips varchar(32000);
+alter table o_as_mode_course modify a_safeexambrowserkey varchar(32000);
+
diff --git a/src/main/resources/database/oracle/setupDatabase.sql b/src/main/resources/database/oracle/setupDatabase.sql
index 5768914b3d1dcfcbbc51233f91b934db56573564..154421dedba054f61d2221deba9c3b7bbd2bc644 100644
--- a/src/main/resources/database/oracle/setupDatabase.sql
+++ b/src/main/resources/database/oracle/setupDatabase.sql
@@ -1390,12 +1390,12 @@ create table o_as_mode_course (
    a_end_with_followuptime date not null,
    a_targetaudience varchar2(16 char),
    a_restrictaccesselements number default 0 not null,
-   a_elements varchar2(2048 char),
+   a_elements varchar2(32000 char),
    a_start_element varchar2(64 char),
    a_restrictaccessips number default 0 not null,
-   a_ips varchar2(2048 char),
+   a_ips varchar2(32000 char),
    a_safeexambrowser number default 0 not null,
-   a_safeexambrowserkey varchar2(2048 char),
+   a_safeexambrowserkey varchar2(32000 char),
    a_safeexambrowserhint clob,
    a_applysettingscoach number default 0 not null,
    fk_entry number(20) not null,
diff --git a/src/main/resources/database/postgresql/alter_14_2_x_to_14_2_13.sql b/src/main/resources/database/postgresql/alter_14_2_x_to_14_2_13.sql
new file mode 100644
index 0000000000000000000000000000000000000000..ec9c158de681214c035670d1e96afe09c73f1027
--- /dev/null
+++ b/src/main/resources/database/postgresql/alter_14_2_x_to_14_2_13.sql
@@ -0,0 +1,4 @@
+alter table o_as_mode_course alter column a_elements type varchar(32000);
+alter table o_as_mode_course alter column a_ips type varchar(32000);
+alter table o_as_mode_course alter column a_safeexambrowserkey type varchar(32000);
+
diff --git a/src/main/resources/database/postgresql/setupDatabase.sql b/src/main/resources/database/postgresql/setupDatabase.sql
index 34c492ca80d283c07c3f54ddb13f6119fe57e682..703116b3f22ffe39eca1889f50b5c4069d1aba5f 100644
--- a/src/main/resources/database/postgresql/setupDatabase.sql
+++ b/src/main/resources/database/postgresql/setupDatabase.sql
@@ -1350,12 +1350,12 @@ create table o_as_mode_course (
    a_end_with_followuptime timestamp not null,
    a_targetaudience varchar(16),
    a_restrictaccesselements bool not null default false,
-   a_elements varchar(2048),
+   a_elements varchar(32000),
    a_start_element varchar(64),
    a_restrictaccessips bool not null default false,
-   a_ips varchar(2048),
+   a_ips varchar(32000),
    a_safeexambrowser bool not null default false,
-   a_safeexambrowserkey varchar(2048),
+   a_safeexambrowserkey varchar(32000),
    a_safeexambrowserhint text,
    a_applysettingscoach bool not null default false,
    fk_entry int8 not null,