• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1CREATE VIEW counters AS
2SELECT *
3FROM counter v
4JOIN counter_track t ON v.track_id = t.id
5ORDER BY ts;
6
7CREATE VIEW slice AS
8SELECT
9  *,
10  category AS cat,
11  id AS slice_id
12FROM internal_slice;
13
14CREATE VIEW instant AS
15SELECT ts, track_id, name, arg_set_id
16FROM slice
17WHERE dur = 0;
18
19CREATE VIEW sched AS
20SELECT
21  *,
22  ts + dur as ts_end
23FROM sched_slice;
24
25CREATE VIEW slices AS
26SELECT * FROM slice;
27
28CREATE VIEW thread AS
29SELECT
30  id as utid,
31  *
32FROM internal_thread;
33
34CREATE VIEW process AS
35SELECT
36  id as upid,
37  *
38FROM internal_process;
39
40-- This should be kept in sync with GlobalArgsTracker::AddArgSet.
41CREATE VIEW args AS
42SELECT
43  *,
44  CASE value_type
45    WHEN 'int' THEN CAST(int_value AS text)
46    WHEN 'uint' THEN CAST(int_value AS text)
47    WHEN 'string' THEN string_value
48    WHEN 'real' THEN CAST(real_value AS text)
49    WHEN 'pointer' THEN printf('0x%x', int_value)
50    WHEN 'bool' THEN (
51      CASE WHEN int_value <> 0 THEN 'true'
52      ELSE 'false' END)
53    WHEN 'json' THEN string_value
54  ELSE NULL END AS display_value
55FROM internal_args;
56