Hi Richard,

Thanks for tracking this down. H2 isn't one of our officially supported
databases (Postgres, MySQL and Derby are), but you're right that H2 2.5.250
now reserves VALUE, and a few Roller tables: roller_properties among them
use VALUE as a column name, so reads fail. Your ;NON_KEYWORDS=VALUE
workaround is the right call, and it covers all of the affected tables at
once since it un-reserves the word for the whole connection.

We're adding a note about it to the install guide (in apache/roller#183). A
proper column rename is the cleaner long-term fix, but since it touches
every database dialect we'll save that for a future schema-version bump
rather than the 6.1.x line.

Best,
Dave

On Mon, Sep 07, 2026 10:25 PM, Richard via dev <[email protected]>
wrote:

> While testing the latest 6.1.6 RC1, I upgraded one of my Roller storage
> instances to the latest release of the H2 database (H2 2.5.250).  H2
> 2.5.250 is stricter with SQL standards than previous versions and this
> newer version considers the term VALUE a reserved word for column
> names.
>
> The table "PUBLIC".ROLLER_PROPERTIES has NAME AND VALUE for columns and
> so Roller will fail when trying to read the table.  Interestingly, H2's
> backup/restore tools allow the table to be recreated in the latest
> version "as is" but will produce an error when querying the VALUE
> column (preventing Roller from starting).
>
> Fortunately, H2 provides a workaround: the ";NON_KEYWORDS=VALUE" can be
> appended to the JDBC URL and all works well thereafter with Roller.
>
> Posting this just in case H2 is included in any tests.
>
> Best,
> Richard
>

Reply via email to