From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 786A0C432C3 for ; Tue, 19 Nov 2019 11:33:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 45F2A22318 for ; Tue, 19 Nov 2019 11:33:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574163198; bh=sM6LjVoo1xfXZxPFYySwqIK3weoW/nciNqfJGG09xzQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=CNuxz1y5hOLNQTwNtwSJ7Pb4zS4qeViieSfhnt8Vte/PWher1CZIe2r1DyJxoxDb+ 177Q2a8oCAUK0eXo1GQZRM2lqi3zzlIt9aRl5r5vH/WwFWrvMnADZfllcc3IEvijUq QwCxZglnw8Ucp93mm1nBnVu39fo9rBqfwbt0FQMA= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727845AbfKSLdR (ORCPT ); Tue, 19 Nov 2019 06:33:17 -0500 Received: from mail.kernel.org ([198.145.29.99]:46958 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727584AbfKSLdR (ORCPT ); Tue, 19 Nov 2019 06:33:17 -0500 Received: from quaco.ghostprotocols.net (179.176.11.138.dynamic.adsl.gvt.net.br [179.176.11.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 988B42230D; Tue, 19 Nov 2019 11:33:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574163196; bh=sM6LjVoo1xfXZxPFYySwqIK3weoW/nciNqfJGG09xzQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xujcKlkI5P4TtMuN/PDB04kJ+QYWIW9vKKRWXXG5A1Nyz1EiwI+aKN1CbRtzs8/Qf QcDRQPiC67dn36AOKSUHMpvhsqh6CSnwullf9ngDTeyXPDKITizrAdUiuAsF0un8M4 55Z8WQy+XJrlcBzdKB9L1vZeOS7kwHcTVDXxnzX4= From: Arnaldo Carvalho de Melo To: Ingo Molnar , Thomas Gleixner Cc: Jiri Olsa , Namhyung Kim , Clark Williams , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, Adrian Hunter , Jiri Olsa , stable@vger.kernel.org, Arnaldo Carvalho de Melo Subject: [PATCH 04/25] perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite Date: Tue, 19 Nov 2019 08:32:24 -0300 Message-Id: <20191119113245.19593-5-acme@kernel.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191119113245.19593-1-acme@kernel.org> References: <20191119113245.19593-1-acme@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Adrian Hunter Prior to version 3.23 SQLite does not support TRUE or FALSE, so always use 1 and 0 for SQLite. Fixes: 26c11206f433 ("perf scripts python: exported-sql-viewer.py: Use new 'has_calls' column") Signed-off-by: Adrian Hunter Cc: Jiri Olsa Cc: stable@vger.kernel.org # v5.3+ Link: http://lore.kernel.org/lkml/20191113120206.26957-1-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo --- tools/perf/scripts/python/exported-sql-viewer.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tools/perf/scripts/python/exported-sql-viewer.py b/tools/perf/scripts/python/exported-sql-viewer.py index ebc6a2e5eae9..26d7be785288 100755 --- a/tools/perf/scripts/python/exported-sql-viewer.py +++ b/tools/perf/scripts/python/exported-sql-viewer.py @@ -637,7 +637,7 @@ class CallGraphRootItem(CallGraphLevelItemBase): self.query_done = True if_has_calls = "" if IsSelectable(glb.db, "comms", columns = "has_calls"): - if_has_calls = " WHERE has_calls = TRUE" + if_has_calls = " WHERE has_calls = " + glb.dbref.TRUE query = QSqlQuery(glb.db) QueryExec(query, "SELECT id, comm FROM comms" + if_has_calls) while query.next(): @@ -918,7 +918,7 @@ class CallTreeRootItem(CallGraphLevelItemBase): self.query_done = True if_has_calls = "" if IsSelectable(glb.db, "comms", columns = "has_calls"): - if_has_calls = " WHERE has_calls = TRUE" + if_has_calls = " WHERE has_calls = " + glb.dbref.TRUE query = QSqlQuery(glb.db) QueryExec(query, "SELECT id, comm FROM comms" + if_has_calls) while query.next(): @@ -1290,7 +1290,7 @@ class SwitchGraphData(GraphData): QueryExec(query, "SELECT id, c_time" " FROM comms" " WHERE c_thread_id = " + str(thread_id) + - " AND exec_flag = TRUE" + " AND exec_flag = " + self.collection.glb.dbref.TRUE + " AND c_time >= " + str(start_time) + " AND c_time <= " + str(end_time) + " ORDER BY c_time, id") @@ -5016,6 +5016,12 @@ class DBRef(): def __init__(self, is_sqlite3, dbname): self.is_sqlite3 = is_sqlite3 self.dbname = dbname + self.TRUE = "TRUE" + self.FALSE = "FALSE" + # SQLite prior to version 3.23 does not support TRUE and FALSE + if self.is_sqlite3: + self.TRUE = "1" + self.FALSE = "0" def Open(self, connection_name): dbname = self.dbname -- 2.21.0