{"id":2225719,"url":"http://patchwork.ozlabs.org/api/patches/2225719/?format=json","web_url":"http://patchwork.ozlabs.org/project/openvswitch/patch/4296b30178fb385ae8bcceae5b9a8a5061be62fa.1776780072.git.felix.huettner@digits.schwarz/","project":{"id":47,"url":"http://patchwork.ozlabs.org/api/projects/47/?format=json","name":"Open vSwitch","link_name":"openvswitch","list_id":"ovs-dev.openvswitch.org","list_email":"ovs-dev@openvswitch.org","web_url":"http://openvswitch.org/","scm_url":"git@github.com:openvswitch/ovs.git","webscm_url":"https://github.com/openvswitch/ovs","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<4296b30178fb385ae8bcceae5b9a8a5061be62fa.1776780072.git.felix.huettner@digits.schwarz>","list_archive_url":null,"date":"2026-04-21T14:03:31","name":"[ovs-dev,v3,2/2] ovsdb-cs: Add coverage for updates.","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"7952a509130e363f75743e5eff8d500af3885fcb","submitter":{"id":92762,"url":"http://patchwork.ozlabs.org/api/people/92762/?format=json","name":"Felix Huettner","email":"felix.huettner@digits.schwarz"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/openvswitch/patch/4296b30178fb385ae8bcceae5b9a8a5061be62fa.1776780072.git.felix.huettner@digits.schwarz/mbox/","series":[{"id":500809,"url":"http://patchwork.ozlabs.org/api/series/500809/?format=json","web_url":"http://patchwork.ozlabs.org/project/openvswitch/list/?series=500809","date":"2026-04-21T14:02:44","name":"[ovs-dev,v3,1/2] ovsdb: Support custom transaction history size.","version":3,"mbox":"http://patchwork.ozlabs.org/series/500809/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2225719/comments/","check":"success","checks":"http://patchwork.ozlabs.org/api/patches/2225719/checks/","tags":{},"related":[],"headers":{"Return-Path":"<ovs-dev-bounces@openvswitch.org>","X-Original-To":["incoming@patchwork.ozlabs.org","dev@openvswitch.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","ovs-dev@lists.linuxfoundation.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n unprotected) header.d=digits.schwarz header.i=@digits.schwarz\n header.a=rsa-sha256 header.s=google header.b=0vOfRFwE;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org\n (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org)","smtp1.osuosl.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key)\n header.d=digits.schwarz header.i=@digits.schwarz header.a=rsa-sha256\n header.s=google header.b=0vOfRFwE","smtp2.osuosl.org; dmarc=pass (p=reject dis=none)\n header.from=digits.schwarz","smtp2.osuosl.org;\n dkim=pass (2048-bit key) header.d=digits.schwarz header.i=@digits.schwarz\n header.a=rsa-sha256 header.s=google header.b=0vOfRFwE"],"Received":["from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g0PGX6xrwz1yGt\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 22 Apr 2026 00:03:48 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id C8F588401B;\n\tTue, 21 Apr 2026 14:03:45 +0000 (UTC)","from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id JEFN7j0CJsWA; Tue, 21 Apr 2026 14:03:45 +0000 (UTC)","from lists.linuxfoundation.org (lf-lists.osuosl.org\n [IPv6:2605:bc80:3010:104::8cd3:938])\n\tby smtp1.osuosl.org (Postfix) with ESMTPS id D6A6884012;\n\tTue, 21 Apr 2026 14:03:44 +0000 (UTC)","from lf-lists.osuosl.org (localhost [127.0.0.1])\n\tby lists.linuxfoundation.org (Postfix) with ESMTP id C0707C058E;\n\tTue, 21 Apr 2026 14:03:44 +0000 (UTC)","from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133])\n by lists.linuxfoundation.org (Postfix) with ESMTP id 186CBC058D\n for <dev@openvswitch.org>; Tue, 21 Apr 2026 14:03:40 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp2.osuosl.org (Postfix) with ESMTP id F2C6C41FE8\n for <dev@openvswitch.org>; Tue, 21 Apr 2026 14:03:39 +0000 (UTC)","from smtp2.osuosl.org ([127.0.0.1])\n by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id lItkxuBvBjVo for <dev@openvswitch.org>;\n Tue, 21 Apr 2026 14:03:39 +0000 (UTC)","from mail-lf1-x162.google.com (mail-lf1-x162.google.com\n [IPv6:2a00:1450:4864:20::162])\n by smtp2.osuosl.org (Postfix) with ESMTPS id DE1EE400D3\n for <dev@openvswitch.org>; Tue, 21 Apr 2026 14:03:38 +0000 (UTC)","by mail-lf1-x162.google.com with SMTP id\n 2adb3069b0e04-59dea72099eso4053366e87.0\n for <dev@openvswitch.org>; Tue, 21 Apr 2026 07:03:38 -0700 (PDT)","from smtpproxy-deployment-574c6c876d-ls4zc.de2.smtp.exclaimer.net\n ([20.113.217.17]) by smtp-relay.gmail.com with ESMTPS id\n 38308e7fff4ca-38ecb69e3f4sm10421701fa.21.2026.04.21.07.03.35\n for <dev@openvswitch.org>\n (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);\n Tue, 21 Apr 2026 07:03:36 -0700 (PDT)","from mail-wm1-f70.google.com (209.85.128.70) by\n smtpproxy-deployment-574c6c876d-ls4zc.de2.smtp.exclaimer.net\n (20.113.217.16/28) with Exclaimer Signature Manager ESMTP Proxy\n smtpproxy-deployment-574c6c876d-ls4zc.de2.smtp.exclaimer.net\n (tlsversion=TLS12, tlscipher=TLS_DIFFIEHELLMAN_WITH_AES256_NONE); Tue, 21\n Apr 2026 14:03:35 +0000","by mail-wm1-f70.google.com with SMTP id\n 5b1f17b1804b1-488cc31ea57so33136215e9.3\n for <dev@openvswitch.org>; Tue, 21 Apr 2026 07:03:35 -0700 (PDT)","from SDGDEU-G5041VBR ([185.124.194.86])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488fc1c773fsm416038235e9.12.2026.04.21.07.03.32\n for <dev@openvswitch.org>\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 21 Apr 2026 07:03:32 -0700 (PDT)"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections -\n client-ip=2605:bc80:3010:104::8cd3:938; helo=lists.linuxfoundation.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp1.osuosl.org D6A6884012","OpenDKIM Filter v2.11.0 smtp2.osuosl.org DE1EE400D3"],"Received-SPF":"Pass (mailfrom) identity=mailfrom;\n client-ip=2a00:1450:4864:20::162; helo=mail-lf1-x162.google.com;\n envelope-from=felix.huettner@digits.schwarz; receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp2.osuosl.org DE1EE400D3","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=digits.schwarz; s=google; t=1776780216; x=1777385016; darn=openvswitch.org;\n h=in-reply-to:mime-version:references:mail-followup-to:message-id\n :subject:to:from:date:from:to:cc:subject:date:message-id:reply-to;\n bh=c9R4k4GyY5EZ3LeeKBL50Rtknak1OAJNxD/SAZZBAlo=;\n b=0vOfRFwEiUxuTq+IwQPYHqb74XbMt+fO8dIvVVBXkzKKF459LQIwBR0WXxN2fk6Gkw\n n/P520c2OJ2ATR77MJExW2RYNnUp9WKbuYgnRnvEyx6U2tOQHS61zh9oM2c4jVHLDpNl\n +ZQ641BUdNbj6fD6dhJOp4ukguRZ2jiTinKNSvSGzpbpmbudkpg5F4u9EIeaWFwRifLI\n M41xr+uQIMkDbjUkVOWqbTZd96k1+ZPg6sAso6CF+gXlqCKBscebsA4bH4Hv9a/xHN+Y\n AWMP8eB9/vbG885U+mWMJJDuW6/CIFwqKl4b8+tSfDGJgbnWY6LD9bYK9QQw+de0OUSB\n pd3g==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776780216; x=1777385016;\n h=in-reply-to:mime-version:references:mail-followup-to:message-id\n :subject:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc:subject\n :date:message-id:reply-to;\n bh=c9R4k4GyY5EZ3LeeKBL50Rtknak1OAJNxD/SAZZBAlo=;\n b=THOVexZZ7wBhCLyZm/gAqeG5guWvdQOMDF/zCZ73jJwJweP0t6537WLIl8+dzWxPnd\n nFEg9zlGvuya5B0wTq6udphDVTFEcDKK7sFZzDo9v+WkBic5qhUjQgoEuqt3zUhuBOUI\n eYTCLBZZd4aADHIMjLjwphA+72fzDqB2EqCe0A+nrA33V4krHIKIwQo/c1QmBhyRi9dh\n 4MRV9KdQMP+KvhjZeLHYAd3jykpqEZ5Gf9T6spMvWqDaj2Hn1a2o1c8lhv8t1mM0l/5i\n nGoknMxFIrOizlGsdzsyEBQVIaiELy1n6XfMSQZPKJc26XGYAC0t8shxdeWpFyH+ZDJj\n 8Gxw==","X-Gm-Message-State":"AOJu0YxgpeGUFt2GkIiRcbeAeosOkYUaRNqUXVj9iY92qAQWb4D2YJl9\n 8in12qVZSEdnRdLt9/vMNJAJCYxQ3XEEMfFhWRNrLLvFWe4vcrn8tJ+tSU9HjaOUdGv47zEsIyJ\n v7BRpTqvfKsjbEZWvItDwl5KD8Bc6UNVdPU3k57O8YVrtRmY4G5LTzApcKvc3rio7/MzaFKLFHp\n /3RL1TjQxl+zB3CzomBQ9AYTEdkmV5huTwMKxVBk9t4WgD+AcL8PK898vpYUt5VdY5+QoWWOJGU\n I5L5+Ehuww3xUnjyFc=","X-Gm-Gg":"AeBDiet+zhmW5NnyIEFV46pSfvTK9iLJN0GvdqzCWmp+W+KK/qPXb1htOW4zW62HQDh\n QdfA6XRvEpp8eW4mmHdiaB7FTZxdnOTFnBPiLdc/0Im803gNgkDD60g5Fw9LLXvS38yP/qKpsbS\n 8TDDWu+wwuilxT7rs9mgVftz4TPZZmsXp4Muh3MNU5cAiSh3Nblq2fAwt4OEL/xzW+U1+Bq8/e9\n Bm9u0ewkXquksi4PrF7E0AWQg4g4PGRZFumkOfloMdn945h7PcInT6CEVRhTVmPRcbKu/Gc3aL+\n PXeZbPqZSX1TEXaFPd6nqhHztdiC5w+52lB/IgynT8v7i+CQ3k2LVTLhYiO9/5tCnfPZOwhttxu\n F9+79/V5yTsfP5nYmfZ1hV9EDNjfUVUL2sam0OtImsspA58+txNEz6GlW0trX9NORBf1y3FS7xq\n /9TSpZSyY4oR/Pv57ypvCshA+yVpqyN8rw","X-Received":["by 2002:a05:6512:2302:b0:5a3:e7dc:5b1f with SMTP id\n 2adb3069b0e04-5a4172e2d3fmr4970045e87.42.1776780216051;\n Tue, 21 Apr 2026 07:03:36 -0700 (PDT)","by 2002:a05:600c:34d3:b0:489:1cda:bbb7 with SMTP id\n 5b1f17b1804b1-4891cdabf13mr114004975e9.25.1776780213967;\n Tue, 21 Apr 2026 07:03:33 -0700 (PDT)","by 2002:a05:600c:34d3:b0:489:1cda:bbb7 with SMTP id\n 5b1f17b1804b1-4891cdabf13mr114004085e9.25.1776780213300;\n Tue, 21 Apr 2026 07:03:33 -0700 (PDT)"],"X-Relaying-Domain":"digits.schwarz","X-ExclaimerHostedSignatures-MessageProcessed":"true","X-ExclaimerProxyLatency":"9208085","X-ExclaimerImprintLatency":"5225654","X-ExclaimerImprintAction":"58c73bb1ef4e4eab9857e0cb15cc114e","Date":"Tue, 21 Apr 2026 16:03:31 +0200","To":"dev@openvswitch.org","Message-ID":"\n <4296b30178fb385ae8bcceae5b9a8a5061be62fa.1776780072.git.felix.huettner@digits.schwarz>","Mail-Followup-To":"dev@openvswitch.org","References":"\n <2d2ee49b763ef6b195ccf627869d7538db8aac19.1776780072.git.felix.huettner@digits.schwarz>","MIME-Version":"1.0","In-Reply-To":"\n <2d2ee49b763ef6b195ccf627869d7538db8aac19.1776780072.git.felix.huettner@digits.schwarz>","X-please-dont-add-a-signature":"thanks","X-Schwarz-Google-ToExclaimerByDomain":"1","Content-Disposition":"inline","X-Content-Filtered-By":"Mailman/MimeDel 2.1.30","Subject":"[ovs-dev] [PATCH v3 2/2] ovsdb-cs: Add coverage for updates.","X-BeenThere":"ovs-dev@openvswitch.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"<ovs-dev.openvswitch.org>","List-Unsubscribe":"<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>","List-Archive":"<http://mail.openvswitch.org/pipermail/ovs-dev/>","List-Post":"<mailto:ovs-dev@openvswitch.org>","List-Help":"<mailto:ovs-dev-request@openvswitch.org?subject=help>","List-Subscribe":"<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=subscribe>","From":"Felix Huettner via dev <ovs-dev@openvswitch.org>","Reply-To":"Felix Huettner <felix.huettner@digits.schwarz>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"ovs-dev-bounces@openvswitch.org","Sender":"\"dev\" <ovs-dev-bounces@openvswitch.org>"},"content":"This allows us to figure out how often we receive updates from upstream\ndbs. In addition we can see e.g. during a reconnection if we did clear\nthe database (e.g. because monitor_cond_since did not work).\n\nSigned-off-by: Felix Huettner <felix.huettner@digits.schwarz>\n---\nv2->v3: adressed nits from Ilja\n\n lib/ovsdb-cs.c | 13 +++++++++++++\n 1 file changed, 13 insertions(+)","diff":"diff --git a/lib/ovsdb-cs.c b/lib/ovsdb-cs.c\nindex df33a835d..e41958c36 100644\n--- a/lib/ovsdb-cs.c\n+++ b/lib/ovsdb-cs.c\n@@ -20,6 +20,7 @@\n \n #include <errno.h>\n \n+#include \"coverage.h\"\n #include \"hash.h\"\n #include \"jsonrpc.h\"\n #include \"openvswitch/dynamic-string.h\"\n@@ -39,6 +40,10 @@\n \n VLOG_DEFINE_THIS_MODULE(ovsdb_cs);\n \n+COVERAGE_DEFINE(cs_update);\n+COVERAGE_DEFINE(cs_update_with_clear);\n+COVERAGE_DEFINE(cs_update_from_monitor);\n+\n /* Connection state machine.\n  *\n  * When a JSON-RPC session connects, the CS layer sends a \"monitor_cond\"\n@@ -1568,6 +1573,14 @@ ovsdb_cs_db_add_update(struct ovsdb_cs_db *db,\n                        const struct json *table_updates, int version,\n                        bool clear, bool monitor_reply)\n {\n+    COVERAGE_INC(cs_update);\n+    if (clear) {\n+        COVERAGE_INC(cs_update_with_clear);\n+    }\n+    if (monitor_reply) {\n+        COVERAGE_INC(cs_update_from_monitor);\n+    }\n+\n     struct ovsdb_cs_event *event = ovsdb_cs_db_add_event(\n         db, OVSDB_CS_EVENT_TYPE_UPDATE);\n     event->update = (struct ovsdb_cs_update_event) {\n","prefixes":["ovs-dev","v3","2/2"]}