ROW_TIMESTAMP not recognised as valid Snowflake SQL in CREATE/ALTER table commands
Author: Tom-PowlesCreated Sep 11, 2026Updated Sep 11, 2026
Labelsbugsnowflake
Search before asking
- I searched the issues and found no similar issues.
What Happened
Using the ROW_TIMESTAMP = TRUE/FALSE in a CREATE TABLE statement is identified as an error: "Found unparsable section: 'ROW_TIMESTAMP = TRUE;'".
Using ROW_TIMESTAMP_DEFAULT = TRUE/FALSE in CREATE SCHEMA statement also raises the same error.
Expected Behaviour
ROW_TIMESTAMP and ROW_TIMESTAMP_DEFAULT should not be identified as linting errors when used correctly.
Observed Behaviour
Given the example SQL query in query.sql:
CREATE OR REPLACE TABLE dummy_table (
id NUMBER NOT NULL,
name STRING,
) ROW_TIMESTAMP = TRUE;Running sqlfluff lint query.sql --dialect snowflake returns FAIL:
L: 5 | P: 3 | PRS | Line 5, Position 3: Found unparsable section:
| 'ROW_TIMESTAMP = TRUE;'How to reproduce
Run sqlfluff lint query.sql --dialect snowflake on the attached query.sql file.
Dialect
Snowflake
Version
SQLFluff 4.3.0 Python 3.14.7
Configuration
[sqlfluff]
# Set the dialect to Snowflake
dialect = snowflake
max_line_length = 140
large_file_skip_byte_limit = 0
# depth limit is introduced in v4.1.2
max_parse_depth = 500
# CPU processes to use while linting (-1 means all CPUs minus one)
processes = -1
templater = jinja
# CP02: Exclude unquoted identifier capitalization consistency checks
# LT12: Ignore "Query produces an unknown number of result column" warnings
# RF04: Ignore "Keywords should not be used as identifiers" warnings
# ST07: Permit "USING"
exclude_rules = ambiguous.column_count, structure.column_order, LT12, L029, CP02, RF04, AM04, ST09, LT02, ST07, ST11, LT01, ST02, ST05, AM05
sql_file_exts = .sql,.sql.j2,.dml,.ddl
[sqlfluff:templater:jinja]
# Enable Jinja templating
enabled = True
[sqlfluff:templater:jinja:context]
# Specify default values for Jinja variables to prevent linting errors
DB_SUFFIX = MAIN
BATCH_S3_PATH = MAIN.20260301
[sqlfluff:indentation]
# Snowflake typically uses 4 spaces
indent_unit = space
tab_space_size = 4
implicit_indents = allow
# Aliasing rules
[sqlfluff:rules:aliasing.length]
min_alias_length = 2
# Capitalisation rules
[sqlfluff:rules:capitalisation.keywords]
capitalisation_policy = upper
[sqlfluff:rules:capitalisation.identifiers]
extended_capitalisation_policy = consistent
[sqlfluff:rules:capitalisation.functions]
extended_capitalisation_policy = upper
[sqlfluff:rules:capitalisation.literals]
capitalisation_policy = consistent
[sqlfluff:rules:capitalisation.types]
extended_capitalisation_policy = upper
# Convention rules
[sqlfluff:rules:convention.not_equal]
preferred_not_equal_style = c_style
# Special characters in references
[sqlfluff:rules:references.special_chars]
additional_allowed_characters = $Are you willing to work on and submit a PR to address the issue?
- Yes I am willing to submit a PR!
Code of Conduct
- I agree to follow this project's Code of Conduct
Source: sqlfluff/sqlfluff