diff --git a/arbor/backends/event.hpp b/arbor/backends/event.hpp
index cdf4b5cce598c82e5925fd40f72cd24cab2f4a72..d14bfdeaf1b269acbfc8ec7eaff3f37d4b5f9b37 100644
--- a/arbor/backends/event.hpp
+++ b/arbor/backends/event.hpp
@@ -13,7 +13,7 @@ namespace arb {
 struct target_handle {
     cell_local_size_type mech_id;    // mechanism type identifier (per cell group).
     cell_local_size_type mech_index; // instance of the mechanism
-    cell_size_type intdom_index;       // which integration domain (acts as index into e.g. vec_t)
+    cell_size_type intdom_index;     // which integration domain (acts as index into e.g. vec_t)
 
     target_handle() {}
     target_handle(cell_local_size_type mech_id, cell_local_size_type mech_index, cell_size_type intdom_index):
@@ -60,8 +60,8 @@ struct raw_probe_info {
 
 struct sample_event {
     time_type time;
-    cell_size_type cell_index;  // which cell probe is on
-    raw_probe_info raw;         // event payload: what gets put where on sample
+    cell_size_type intdom_index;  // which integration domain probe is on
+    raw_probe_info raw;           // event payload: what gets put where on sample
 };
 
 inline raw_probe_info event_data(const sample_event& ev) {
@@ -69,7 +69,7 @@ inline raw_probe_info event_data(const sample_event& ev) {
 }
 
 inline cell_size_type event_index(const sample_event& ev) {
-    return ev.cell_index;
+    return ev.intdom_index;
 }
 
 
diff --git a/arbor/mc_cell_group.cpp b/arbor/mc_cell_group.cpp
index bcd96d2f61bbe9e7ee3a9f9370fb134ad6a5dd94..ce14281773935e38f30c4be893096b9a6ecfde66 100644
--- a/arbor/mc_cell_group.cpp
+++ b/arbor/mc_cell_group.cpp
@@ -183,6 +183,7 @@ void mc_cell_group::advance(epoch ep, time_type dt, const event_lane_subrange& e
 
     // Sample events must be ordered by time for the lowered cell.
     util::sort_by(sample_events, [](const sample_event& ev) { return event_time(ev); });
+    util::stable_sort_by(sample_events, [](const sample_event& ev) { return event_index(ev); });
     PL();
 
     // Run integration and collect samples, spikes.