Revert "trace_processor: invalidate mismatched pid sched slices"

This reverts commit 8578a6bc6ee1a61f9bd69520193c943b6d1e4eb6.

Reason for revert: this causes a ridiculous slow down on the 1GB trace for some reason. Reverting until I figure it out

TBR: hjd
Change-Id: I9c4896f7987fa12089fa405c92349ec72e7a19d6
diff --git a/src/trace_processor/event_tracker.cc b/src/trace_processor/event_tracker.cc
index 206bf3c..b51923d 100644
--- a/src/trace_processor/event_tracker.cc
+++ b/src/trace_processor/event_tracker.cc
@@ -68,8 +68,7 @@
           idx, ftrace_utils::TaskState(static_cast<uint16_t>(prev_state)));
     } else {
       // If the this events previous pid does not match the previous event's
-      // next pid, invalidate the slice and add it to the stats.
-      slices->InvalidateSlice(idx);
+      // next pid, make a note of this.
       context_->storage->IncrementStats(stats::mismatched_sched_switch_tids);
     }
   }
diff --git a/src/trace_processor/event_tracker_unittest.cc b/src/trace_processor/event_tracker_unittest.cc
index cb79165..adcb4e8 100644
--- a/src/trace_processor/event_tracker_unittest.cc
+++ b/src/trace_processor/event_tracker_unittest.cc
@@ -86,9 +86,9 @@
   context.event_tracker->PushSchedSwitch(cpu, timestamp + 11, /*tid=*/4,
                                          prev_state,
                                          /*tid=*/2, kCommProc2, next_prio);
-  context.event_tracker->PushSchedSwitch(cpu, timestamp + 31, /*tid=*/2,
+  context.event_tracker->PushSchedSwitch(cpu, timestamp + 31, /*tid=*/4,
                                          prev_state,
-                                         /*tid=*/4, kCommProc1, next_prio);
+                                         /*tid=*/2, kCommProc1, next_prio);
 
   ASSERT_EQ(timestamps.size(), 4ul);
   ASSERT_EQ(timestamps[0], timestamp);
@@ -100,26 +100,6 @@
             context.storage->slices().utids().at(2));
 }
 
-TEST_F(EventTrackerTest, SchedMismatchedPids) {
-  uint32_t cpu = 3;
-  int64_t timestamp = 100;
-  int64_t prev_state = 32;
-  static const char kCommProc1[] = "process1";
-  static const char kCommProc2[] = "process2";
-  int32_t next_prio = 1024;
-
-  context.event_tracker->PushSchedSwitch(cpu, timestamp + 1, /*tid=*/2,
-                                         prev_state,
-                                         /*tid=*/4, kCommProc1, next_prio);
-  context.event_tracker->PushSchedSwitch(cpu, timestamp + 11, /*tid=*/3,
-                                         prev_state,
-                                         /*tid=*/2, kCommProc2, next_prio);
-
-  ASSERT_EQ(context.storage->slices().utids().at(0),
-            std::numeric_limits<UniqueTid>::max());
-  ASSERT_EQ(context.storage->slices().utids().at(0), kInvalidUtid);
-}
-
 TEST_F(EventTrackerTest, CounterDuration) {
   uint32_t cpu = 3;
   int64_t timestamp = 100;
diff --git a/src/trace_processor/trace_database_integrationtest.cc b/src/trace_processor/trace_database_integrationtest.cc
index da82bf3..4df9400 100644
--- a/src/trace_processor/trace_database_integrationtest.cc
+++ b/src/trace_processor/trace_database_integrationtest.cc
@@ -73,7 +73,7 @@
       "where dur != 0 and utid != 0",
       &res);
   ASSERT_EQ(res.num_records(), 1);
-  ASSERT_EQ(res.columns(0).long_values(0), 139792);
+  ASSERT_EQ(res.columns(0).long_values(0), 139789);
   ASSERT_EQ(res.columns(1).long_values(0), 19684308497);
 }
 
diff --git a/src/trace_processor/trace_storage.h b/src/trace_processor/trace_storage.h
index 21ad86b..63e34ff 100644
--- a/src/trace_processor/trace_storage.h
+++ b/src/trace_processor/trace_storage.h
@@ -17,10 +17,8 @@
 #ifndef SRC_TRACE_PROCESSOR_TRACE_STORAGE_H_
 #define SRC_TRACE_PROCESSOR_TRACE_STORAGE_H_
 
-#include <algorithm>
 #include <array>
 #include <deque>
-#include <limits>
 #include <map>
 #include <string>
 #include <unordered_map>
@@ -45,7 +43,6 @@
 // UniqueTid is an offset into |unique_threads_|. Necessary because tids can
 // be reused.
 using UniqueTid = uint32_t;
-constexpr UniqueTid kInvalidUtid = std::numeric_limits<UniqueTid>::max();
 
 // StringId is an offset into |string_pool_|.
 using StringId = uint32_t;
@@ -195,20 +192,6 @@
       return slice_count() - 1;
     }
 
-    void InvalidateSlice(size_t index) {
-      using T = decltype(rows_for_utids_)::value_type;
-      auto pair = rows_for_utids_.equal_range(utids_[index]);
-      auto it = std::find_if(pair.first, pair.second,
-                             [index](const T& p) { return index == p.second; });
-      PERFETTO_CHECK(it != pair.second);
-      rows_for_utids_.erase(it);
-
-      utids_[index] = kInvalidUtid;
-      end_states_[index] = ftrace_utils::TaskState();
-      priorities_[index] = 0;
-      rows_for_utids_.emplace(kInvalidUtid, index);
-    }
-
     void set_duration(size_t index, int64_t duration_ns) {
       durations_[index] = duration_ns;
     }