[Bug 269966] net/vnstat: no longer works after databases/sqlite3 disabled DQS

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 05 Mar 2023 00:48:10 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269966

            Bug ID: 269966
           Summary: net/vnstat: no longer works after databases/sqlite3
                    disabled DQS
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: freebsd@kumba.dev
                CC: pavelivolkov@gmail.com, sunpoet@FreeBSD.org
                CC: pavelivolkov@gmail.com, sunpoet@FreeBSD.org

After databases/sqlite3 was updated in binary packages to 3.41 and DQS was
defaulted to off (Bug #269798), the net/vnstat binary package no longer works
with an existing database:

> # vnstat
> Database updated: 2023-03-04 19:15:00
> 
>    em2 since 2022-04-02
> 
>           rx:  39.51 GB      tx:  37.82 GB      total:  77.33 GB
> 
>    monthly
>                      rx      |     tx      |    total    |   avg. rate
>      ------------------------+-------------+-------------+---------------
> Error: Failed to get interface id from database (1): no such column: em2
> Error: Failed to fetch month data.

I've looked around, but not knowing sqlite3 terribly well (at least from a C
standpoint), I do not see how I can fix vnstat to re-enable DQS itself.  vnstat
does not make any calls to sqlite3_db_config(), and I don't know enough about
the rest of the sqlite3 API to find another function to pass the
SQLITE_DBCONFIG_DQS_DDL & SQLITE_DBCONFIG_DQS_DML flags to (see Bug #269889,
comment 6).

I've looked at manually building databases/sqlite3 from ports (per UPDATING),
but despite deselecting TCL support, it keeps trying to drag TCL in as a build
dependency.  As far as I know, if TCL is disabled, it shouldn't be needed as a
dependency.  I feel this is a possible bug in the port's Makefile.  I know
there's a TCL "flavor", but if I am building the default flavor, TCL should be
disabled, right?

-- 
You are receiving this mail because:
You are the assignee for the bug.