Messages in this thread | | | From | Arnaldo Carvalho de Melo <> | Date | Fri, 1 Mar 2019 14:52:21 -0300 | Subject | Re: [PATCH 2/8] perf scripts python: export-to-sqlite.py: Export calls parent_id |
| |
Em Thu, Feb 28, 2019 at 03:00:25PM +0200, Adrian Hunter escreveu: > Export to the 'calls' table the newly created 'parent_id'. > > Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Thanks, applied.
- Arnaldo
> --- > tools/perf/scripts/python/export-to-sqlite.py | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/tools/perf/scripts/python/export-to-sqlite.py b/tools/perf/scripts/python/export-to-sqlite.py > index ed237f2ed03f..eb63e6c7107f 100644 > --- a/tools/perf/scripts/python/export-to-sqlite.py > +++ b/tools/perf/scripts/python/export-to-sqlite.py > @@ -222,7 +222,8 @@ if perf_db_export_calls: > 'call_id bigint,' > 'return_id bigint,' > 'parent_call_path_id bigint,' > - 'flags integer)') > + 'flags integer,' > + 'parent_id bigint)') > > # printf was added to sqlite in version 3.8.3 > sqlite_has_printf = False > @@ -321,7 +322,8 @@ if perf_db_export_calls: > 'call_id,' > 'return_id,' > 'CASE WHEN flags=0 THEN \'\' WHEN flags=1 THEN \'no call\' WHEN flags=2 THEN \'no return\' WHEN flags=3 THEN \'no call/return\' WHEN flags=6 THEN \'jump\' ELSE flags END AS flags,' > - 'parent_call_path_id' > + 'parent_call_path_id,' > + 'parent_id' > ' FROM calls INNER JOIN call_paths ON call_paths.id = call_path_id') > > do_query(query, 'CREATE VIEW samples_view AS ' > @@ -373,7 +375,7 @@ if perf_db_export_calls or perf_db_export_callchains: > call_path_query.prepare("INSERT INTO call_paths VALUES (?, ?, ?, ?)") > if perf_db_export_calls: > call_query = QSqlQuery(db) > - call_query.prepare("INSERT INTO calls VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)") > + call_query.prepare("INSERT INTO calls VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)") > > def trace_begin(): > print datetime.datetime.today(), "Writing records..." > @@ -388,6 +390,7 @@ def trace_begin(): > sample_table(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) > if perf_db_export_calls or perf_db_export_callchains: > call_path_table(0, 0, 0, 0) > + call_return_table(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) > > unhandled_count = 0 > > @@ -397,6 +400,7 @@ def trace_end(): > print datetime.datetime.today(), "Adding indexes" > if perf_db_export_calls: > do_query(query, 'CREATE INDEX pcpid_idx ON calls (parent_call_path_id)') > + do_query(query, 'CREATE INDEX pid_idx ON calls (parent_id)') > > if (unhandled_count): > print datetime.datetime.today(), "Warning: ", unhandled_count, " unhandled events" > @@ -452,4 +456,4 @@ def call_path_table(*x): > bind_exec(call_path_query, 4, x) > > def call_return_table(*x): > - bind_exec(call_query, 11, x) > + bind_exec(call_query, 12, x) > -- > 2.17.1
--
- Arnaldo
| |