Releases: streamingfast/substreams-sink-sql
v4.6.4
Clickhouse & substreams-sink-sql from-proto
-
An
clickhouse_table_options
optionorder_by_fields
is required now when usingsubstreams-sink-sql from-proto
, for example you should go from:message Transfer { option (schema.table) = { name: "tranfers" }; string id = 1; string from = 2; string to = 3; }
To:
message Transfer { option (schema.table) = { name: "tranfers", clickhouse_table_options: { order_by_fields: [ { name: "id" } ] } }; string id = 1; string from = 2; string to = 3; }
The selected column will be used to as the
ORDER BY <column>
clause when generating the table schema usingReplacingMergeTree
. -
Fixed generated schema column
_blocks_.number
to be of typeUint64
. -
Fixed generated schema column
<table>._block_number_
on all tables to be of typeUInt64
.
v4.6.3
Breaking Changes
- Some system fields like
block_number
andblock_timestamp
have been rename with prefix and suffix '_' to prevent collision with user field.
Fixed
- Replaced hardcoded field names with dialect constants in PostgreSQL inserters for better consistency
- Updated
accumulator_inserter.go
to useDialectFieldBlockNumber
andDialectFieldBlockTimestamp
constants - Updated
row_inserter.go
to useDialectFieldBlockNumber
andDialectFieldBlockTimestamp
constants - Ensures all proto-related code uses centralized field name constants instead of hardcoded strings
- Updated
v4.6.2
Added
- Added flush retry mechanism with configurable retry count and incremental backoff delay
- New
--flush-retry-count
flag (default: 3) to set number of retry attempts for flush operations - New
--flush-retry-delay
flag (default: 1s) to set base delay for incremental retry backoff - Automatic retry on flush failures with exponential delay (1s, 2s, 3s, etc.)
- Improved error handling and logging for flush operations
- New
v4.6.1
- Added support for
--clickhouse-cluster
on allCREATE
statements. - Added support for specifying the output-module on the command-line in 'from-proto' mode, without requiring a "sink config" in the package.
ex:substreams-sink-sql from-proto psql://.. substreams.yaml map_my_data
- Fixed a bug causing a panic when the protobuf file containing the outputType is not the last file
KNOWN ISSUES:
from-proto
execution mode does not support 'repeated fields for native types' in protobuf definition,
ex:repeated string
orrepeated bytes
Onlyrepeated MyStruct
is supported for now.
v4.6.0
-
Added support for
Upsert
operation in Postgres, Clickhouse isn't supported right now. -
Improved batch block flush logic to flush after a certain number of blocks instead of taking by modulo.
-
Fixed cursor loading on Clickhouse.
-
Fixed a bug with not flushing rows on stream completion.
-
Added
--clickhouse-cluster
flag. If non-empty the sink will apply aON CLUSTER <cluster>
clause when setting up tables and replace table engines with theirReplicated
counterparts. -
Added flushed block number and time drift metrics.
v4.5.0
v4.4.0
v4.3.0
- Added a check for non-existent columns in Clickhouse
- Added support for
Nullable
types in Clickhouse. - Bump substreams to
v0.11.1
- Bump substreams-sink to
v0.5.0
v4.2.2
- Fix major bug when receiving empty
MapOutput
v4.2.1
DO NOT USE THIS VERSION USE ANYTHING >= v.4.2.2
- Bump substreams to v1.10.3 to support new manifest data like
protobuf:excludePaths