Re: [sqlite] Triggers for generated columns?

2019-12-02 Thread Stephen F. Booth
Hi Keith, Thanks for the reply. On Mon, Dec 2, 2019 at 6:31 PM Keith Medcalf wrote: > Well, of course the trigger did not fire. You created an AFTER UPDATE > trigger, but only did an insert. So of course one would not expect the > trigger to fire. You're right- this was a copy/paste error

[sqlite] Triggers for generated columns?

2019-12-02 Thread Stephen F. Booth
I have been trying out generated column support in the 3.31.0 prerelease. Thank you for adding such a useful feature! When I create a trigger for an update of a generated column the trigger is successfully created but it never fires. I could not find any mention in the draft documentation of

[sqlite] API request: sqlite3_vconfig() and sqlite3_db_vconfig()

2019-10-06 Thread Stephen F. Booth
Hello, I have a request for two API additions: sqlite3_vconfig() and sqlite3_db_vconfig(). The naming convention is borrowed from vprintf() and friends. The functions would be identical to sqlite3_config() and sqlite3_db_config() except they would take a va_list instead of variadic arguments.

Re: [sqlite] Query performance slower in 3.25

2018-09-30 Thread Stephen F. Booth
On Sat, Sep 29, 2018 at 5:33 PM Richard Hipp wrote: > On 9/29/18, Stephen F. Booth wrote: > > A query that ran fine under SQLite 3.24 is substantially slower in 3.25: > > Thanks for the data sent off-list > > Your work-around is to add a plus sign "+" b

[sqlite] Query performance slower in 3.25

2018-09-29 Thread Stephen F. Booth
A query that ran fine under SQLite 3.24 is substantially slower in 3.25: SQLite version 3.24.0 2018-06-04 19:24:41 > .timer on > select a.id from a join c on a.id = case when c.b_a_name is not null then c.b_a_id else c.a_id end where a.id in (select a_fts.rowid from a_fts where a_fts match 'r*'

[sqlite] fts5CreateTokenizer pUserData destruction in case of failure

2017-11-25 Thread Stephen F. Booth
I have been working on a custom FTS5 tokenizer using SQLite 3.21.0. I noticed that in fts5CreateTokenizer() if the call to sqlite3_malloc() fails SQLITE_NOMEM is returned, however xDestroy (if present) is not called. A similar situation is handled differently in sqlite3_bind_pointer(); in that