<p>neels <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24571">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Jenkins Builder: Verified
  pespin: Looks good to me, but someone else must approve
  fixeria: Looks good to me, approved

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">hodec2: add handover_test cases for upgrade of TCH/H -> TCH/F<br><br>Add<br>  test_amr_tch_h_and_afs_bias.ho_vty<br>  test_amr_tch_h_to_f_rxlev.ho_vty<br>  test_amr_tch_h_to_f_rxlev_congested.ho_vty<br>  test_amr_tch_h_to_f_rxqual.ho_vty<br>  test_amr_tch_h_to_f_rxqual_congested.ho_vty<br><br>Related: SYS#5198 SYS#5365<br>Change-Id: Ib88f7e00d8bd77e2b02a7242a0fab4dd79333037<br>---<br>M tests/handover/handover_tests.ok<br>A tests/handover/test_amr_tch_h_and_afs_bias.ho_vty<br>A tests/handover/test_amr_tch_h_to_f_rxlev.ho_vty<br>A tests/handover/test_amr_tch_h_to_f_rxlev_congested.ho_vty<br>A tests/handover/test_amr_tch_h_to_f_rxqual.ho_vty<br>A tests/handover/test_amr_tch_h_to_f_rxqual_congested.ho_vty<br>6 files changed, 210 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/tests/handover/handover_tests.ok b/tests/handover/handover_tests.ok</span><br><span>index 4a4a924..d0ce163 100644</span><br><span>--- a/tests/handover/handover_tests.ok</span><br><span>+++ b/tests/handover/handover_tests.ok</span><br><span>@@ -4,8 +4,13 @@</span><br><span> pass test_amr_tch_f_to_h_congestion_assignment.ho_vty</span><br><span> pass test_amr_tch_f_to_h_congestion_assignment_2.ho_vty</span><br><span> pass test_amr_tch_f_to_h_congestion_assignment_3.ho_vty</span><br><span style="color: hsl(120, 100%, 40%);">+pass test_amr_tch_h_and_afs_bias.ho_vty</span><br><span> pass test_amr_tch_h_to_f_congestion.ho_vty</span><br><span> pass test_amr_tch_h_to_f_congestion_two_cells.ho_vty</span><br><span style="color: hsl(120, 100%, 40%);">+pass test_amr_tch_h_to_f_rxlev.ho_vty</span><br><span style="color: hsl(120, 100%, 40%);">+pass test_amr_tch_h_to_f_rxlev_congested.ho_vty</span><br><span style="color: hsl(120, 100%, 40%);">+pass test_amr_tch_h_to_f_rxqual.ho_vty</span><br><span style="color: hsl(120, 100%, 40%);">+pass test_amr_tch_h_to_f_rxqual_congested.ho_vty</span><br><span> pass test_balance_congestion.ho_vty</span><br><span> pass test_balance_congestion_2.ho_vty</span><br><span> pass test_balance_congestion_by_percentage.ho_vty</span><br><span>diff --git a/tests/handover/test_amr_tch_h_and_afs_bias.ho_vty b/tests/handover/test_amr_tch_h_and_afs_bias.ho_vty</span><br><span>new file mode 100644</span><br><span>index 0000000..127727f</span><br><span>--- /dev/null</span><br><span>+++ b/tests/handover/test_amr_tch_h_and_afs_bias.ho_vty</span><br><span>@@ -0,0 +1,18 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# TCH/H has good RxLev and RxQual, AFS bias should not move it to TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 power budget hysteresis 3</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxlev -90</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxqual 5</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 afs-bias rxlev 1</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+create-bts trx-count 1 timeslots c+s4 TCH/F TCH/F TCH/F TCH/H  TCH/H TCH/H PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    -     -     -     TCH/H- -     -     *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# The TCH/H should stay where it is, because its levels are fine.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc applies AFS bias to the intra-cell move from TCH/H to TCH/F.</span><br><span style="color: hsl(120, 100%, 40%);">+# but intra-cell re-assignment does not employ a bower budget hysteresis.</span><br><span style="color: hsl(120, 100%, 40%);">+# So in the presence of afs-bias, all TCH/H *always* move over to TCH/F.</span><br><span style="color: hsl(120, 100%, 40%);">+# That should only happen when rxlev or rxqual ratings are too low.</span><br><span style="color: hsl(120, 100%, 40%);">+expect-as from lchan 0 0 4 0 to lchan 0 0 1 0</span><br><span>diff --git a/tests/handover/test_amr_tch_h_to_f_rxlev.ho_vty b/tests/handover/test_amr_tch_h_to_f_rxlev.ho_vty</span><br><span>new file mode 100644</span><br><span>index 0000000..34fb5e6</span><br><span>--- /dev/null</span><br><span>+++ b/tests/handover/test_amr_tch_h_to_f_rxlev.ho_vty</span><br><span>@@ -0,0 +1,18 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# Low RxLev causes upgrade of TCH/H to TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 afs-bias rxlev 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxlev -80</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 window rxlev averaging 10</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+create-bts trx-count 1 timeslots c+s4 TCH/F TCH/F TCH/F TCH/H  TCH/H TCH/H PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    -     -     -     TCH/H- -     -     *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 1 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states * TCH/F - - - - - *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span>diff --git a/tests/handover/test_amr_tch_h_to_f_rxlev_congested.ho_vty b/tests/handover/test_amr_tch_h_to_f_rxlev_congested.ho_vty</span><br><span>new file mode 100644</span><br><span>index 0000000..a463387</span><br><span>--- /dev/null</span><br><span>+++ b/tests/handover/test_amr_tch_h_to_f_rxlev_congested.ho_vty</span><br><span>@@ -0,0 +1,73 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# Low RxLev causes upgrade of TCH/H to TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 afs-bias rxlev 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxlev -80</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 window rxlev averaging 10</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+create-bts trx-count 1 timeslots c+s4 TCH/F TCH/F TCH/F TCH/H  TCH/H  PDCH PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    -     -     -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 1 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F -     -     TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation actually balances congestion</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F -     -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 2 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F -     TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation moves congestion from TCH/H to TCH/F (TCH/H was 100% congested, then makes TCH/F 100% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F TCH/F -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 3 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F TCH/F TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation worsens congestion (TCH/H was 50% congested, then makes TCH/F 100% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F TCH/F -     TCH/H- TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 3 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F TCH/F -      TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation creates congestion (TCH/H was not congested, then makes TCH/F 50% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F -     -     TCH/H- -      *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep repeat 9 lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxlev averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 23 rxqual 1 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxlev is now -110 + 23 = -87 < -80: reassign to TCH/F due to bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 2 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F -     -      -      *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxlev</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span>diff --git a/tests/handover/test_amr_tch_h_to_f_rxqual.ho_vty b/tests/handover/test_amr_tch_h_to_f_rxqual.ho_vty</span><br><span>new file mode 100644</span><br><span>index 0000000..414a5fd</span><br><span>--- /dev/null</span><br><span>+++ b/tests/handover/test_amr_tch_h_to_f_rxqual.ho_vty</span><br><span>@@ -0,0 +1,18 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# Low RxQual causes upgrade of TCH/H to TCH/F</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 afs-bias rxlev 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxqual 5</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 window rxqual averaging 2</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+create-bts trx-count 1 timeslots c+s4 TCH/F TCH/F TCH/F TCH/H  TCH/H TCH/H PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    -     -     -     TCH/H- -     -     *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 30 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough valus for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 30 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 1 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states * TCH/F - - - - - *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span>diff --git a/tests/handover/test_amr_tch_h_to_f_rxqual_congested.ho_vty b/tests/handover/test_amr_tch_h_to_f_rxqual_congested.ho_vty</span><br><span>new file mode 100644</span><br><span>index 0000000..30c2c67</span><br><span>--- /dev/null</span><br><span>+++ b/tests/handover/test_amr_tch_h_to_f_rxqual_congested.ho_vty</span><br><span>@@ -0,0 +1,78 @@</span><br><span style="color: hsl(120, 100%, 40%);">+# Low RxQual causes upgrade of TCH/H to TCH/F, also when the cell is congested</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+network</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 afs-bias rxlev 0</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxqual 5</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min rxlev -90</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 window rxqual averaging 2</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min-free-slots tch/f 2</span><br><span style="color: hsl(120, 100%, 40%);">+ handover2 min-free-slots tch/h 2</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+create-bts trx-count 1 timeslots c+s4 TCH/F TCH/F TCH/F TCH/H  TCH/H  PDCH PDCH</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation actually reduces congestion</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    -     -     -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 1 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F -     -     TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation actually balances congestion</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F -     -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 2 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F -     TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation moves congestion from TCH/H to TCH/F (TCH/H was 100% congested, then makes TCH/F 100% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F TCH/F -     TCH/HH TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 3 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F TCH/F TCH/-H TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation worsens congestion (TCH/H was 50% congested, then makes TCH/F 100% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F TCH/F -     TCH/H- TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 3 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F TCH/F -      TCH/HH *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+# This situation creates congestion (TCH/H was not congested, then makes TCH/F 50% congested)</span><br><span style="color: hsl(120, 100%, 40%);">+# The congestion requirements would normally forbid this, but since this is an "RxQual emergency", we should reassign.</span><br><span style="color: hsl(120, 100%, 40%);">+set-ts-use trx 0 0 states        *    TCH/F -     -     TCH/H- -      *    *</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# not enough values for rxqual averaging</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span style="color: hsl(120, 100%, 40%);">+meas-rep lchan 0 0 4 0 rxlev 50 rxqual 6 ta 0</span><br><span style="color: hsl(120, 100%, 40%);">+# average rxqual now at 6 which is worse than 5, reassign to TCH/F due to bad rxqual.</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-as from lchan 0 0 4 0 to lchan 0 0 2 0</span><br><span style="color: hsl(120, 100%, 40%);">+#expect-ts-use trx 0 0 states     *    TCH/F TCH/F -     -      -      *    *</span><br><span style="color: hsl(120, 100%, 40%);">+# FAIL: osmo-bsc does not move to TCH/F from bad rxqual</span><br><span style="color: hsl(120, 100%, 40%);">+expect-no-chan</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/24571">change 24571</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-bsc/+/24571"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Ib88f7e00d8bd77e2b02a7242a0fab4dd79333037 </div>
<div style="display:none"> Gerrit-Change-Number: 24571 </div>
<div style="display:none"> Gerrit-PatchSet: 4 </div>
<div style="display:none"> Gerrit-Owner: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: neels <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>