Fixes
-
Issue #12 — Field Filter (
"type": "dimension") template tags in native SQL questions produced invalid SQL that referenced the raw numeric Metabase field ID (e.g.TABLE.5503) instead of the column name (TABLE.GRUPO), causingColumn unknown; TABLE.<id>errors. Blocked dashboard filter dropdowns entirely for native SQL questions.The
[:firebird :field]HoneySQL method now mirrors the existingtable-namefallback: when:source-aliasisn't in the opts map (as is the case for Field Filter dimensions, which don't route through the MBQL alias middleware), it looks up the field's real name viametabase.lib.metadata/fieldbefore falling back to stringifying the ID.Big thanks to @whamulti for the pinpointed root-cause diagnosis in the issue.
-
Issue #10 diagnostics & defensive TRIM — reporter confirmed the driver's metadata SQL returns 8 rows for their
COAtable when executed directly, but Metabase ends up with 0 Field records. Two changes:- Defensive
TRIM(rf.RDB$RELATION_NAME)indescribe-table's WHERE clause, robust to any CHAR-padding/charset weirdness on the JDBC parameter comparison. - Info-level logging — row count returned by the metadata join, first row shape, and final field count returned to Metabase. If the row count is > 0 but the final field count is 0, the log localizes exactly where the fields are being lost.
- Defensive
Compatibility
- Metabase 0.57+ (unchanged from 1.6.7).
- Firebird 3.x / 4.x / 5.x via Jaybird 6.0.3. For Firebird 1.5 – 2.5 use the legacy driver.
Install
Place firebird.metabase-driver.jar into your Metabase plugins/ directory and restart.