+DEFINE{query_name 'mod_status_refuse_cause_base_gtp_teid';
+ max_lfta_disorder '1'; max_hfta_disorder '1';
+ comment 'distribution of causes for a sgnb modification refusal (base), labeled with gtp_teid';
+}
+PARAM{ window uint; }
+Select b.GNB_ID, b.TB,
+ m.gTP_TEID,
+ b.total_reconfig_refuse,
+ b.count_radio_network,
+ b.count_transport,
+ b.count_protocol,
+ b.count_misc
+LEFT_OUTER_JOIN from mod_status_refuse_cause_base b,
+ gnb_ueid_teid_map m
+where b.TB=m.TB and b.GNB_ID=m.GNB_ID and
+ b.id_MeNB_UE_X2AP_ID=m.id_MeNB_UE_X2AP_ID
+;
+
+DEFINE{query_name 'mod_req_reject_cause_base_gtp_teid';
+ max_lfta_disorder '1'; max_hfta_disorder '1';
+ comment 'distribution of causes for a sgnb modification request reject (base), labeled with gtp_teid';
+}
+PARAM{ window uint; }
+Select b.GNB_ID, b.TB,
+ m.gTP_TEID,
+ b.total_reconfig_refuse,
+ b.count_radio_network,
+ b.count_transport,
+ b.count_protocol,
+ b.count_misc
+LEFT_OUTER_JOIN from mod_req_reject_cause_base b,
+ gnb_ueid_teid_map m
+where b.TB=m.TB and b.GNB_ID=m.GNB_ID and
+ b.id_MeNB_UE_X2AP_ID=m.id_MeNB_UE_X2AP_ID
+;
+
+DEFINE{query_name 'mod_failure_cause_merge';
+ max_lfta_disorder '1'; max_hfta_disorder '1';
+ comment 'distribution of causes for a sgnb modification request reject (base), labeled with gtp_teid';
+}
+PARAM{ window uint; }
+merge p1.TB : p2.TB
+from mod_req_reject_cause_base_gtp_teid p1, mod_status_refuse_cause_base_gtp_teid p2
+;
+
+DEFINE{query_name 'mod_failure_cause_gtp_teid';
+ max_lfta_disorder '1'; max_hfta_disorder '1';
+ comment 'distribution of causes for a sgnb modification failure, by UE (gtp_teid)';
+}
+PARAM{ window uint; }
+Select GNB_ID, gTP_TEID, ($window*(TB+1))/1000 as TS,
+ $window/1000.0 as measurementInterval,
+ sum(total_reconfig_refuse) as total_reconfig_refuse,
+ sum( count_radio_network ) as count_radio_network,
+ sum( count_transport ) as count_transport,
+ sum( count_protocol ) as count_protocol,
+ sum( count_misc ) as count_misc
+from mod_failure_cause_merge
+group by GNB_ID, gTP_TEID, TB
+;
+
+