SchemaCrawler
SchemaCrawler copied to clipboard
Generated columns with `stored` in sqlite are not marked as generated
Description
It seems like generated columns with stored in sqlite are not marked as generated.
How to Reproduce
create the following schema with sqlite:
create table foo(
id integer primary key,
bar int not null generated always as (id + 1) stored
);
Then, on that column .isGenerated is false. Without the stored keyword, it is true.
Relevant log output
No response
SchemaCrawler Version
16.21.1
Java Version
21
Operating System and Version
NixOS unstable
Relational Database System and Version
sqlite
JDBC Driver and Version
org.xerial:sqlite-jdbc::3.46.0.0
@fdietze This is not a SchemaCrawler issue, since SchemaCrawler simply reports the information that the SQLite JDBC driver provides.
See JDBC3DatabaseMetaData. It only checks for a value of "2", when according to the SQLite documentation, it should be checking for both 2 and 3.
I created issue https://github.com/xerial/sqlite-jdbc/issues/1132 to make the fix.
@fdietze Here is the PR I submitted: https://github.com/xerial/sqlite-jdbc/pull/1133
That was quick. Thank you so much for your work!
@fdietze The SQLite JDBC driver team has merged the PR. Once they release, I will release a new version of SchemaCrawler.
@fdietze Please use SchemaCrawler v16.22.1
You are amazing, thank you so much!