Releases: streamingfast/substreams-sink-sql
Releases · streamingfast/substreams-sink-sql
v4.0.0-rc.1
Fixes
- Fix an issue preventing the
setup
command from running on a clickhouse backend because of the reorg settings.
v4.0.0-beta
Highlights
- This release brings support for managing reorgs in Postgres database, enabled by default when
--undo-buffer-size
to 0.
Breaking changes
-
A change in your SQL schema may be required to keep existing substreams:SQL integrations working:
- The presence of a primary key (single key or composite) is now MANDATORY on every table.
- The
sf.substreams.sink.database.v1.TableChange
message, generated inside substreams, must now exactly match its primary key with the one in the SQL schema. - You will need to re-run
setup
on your existing PostgreSQL databases to add thesubstreams_history
table. You can use the new--system-tables-only
flag to perform only that.
-
Since reorgs management is not yet supported on Clickhouse, users will have to set
--undo-buffer-size
to a non-zero value (12
was the previous default)
protodefs-v1.0.5
Added run_interval_seconds
to DBTConfig to allow user to define how regularly the dbt run
command is executed.
protodefs-v1.0.4
Added support for rest_frontend
field in protobuf definition.
This is aimed at this backend implementation: https://github.com/semiotic-ai/sql-wrapper (only clickhouse is supported at the moment)
Example:
schema: "./schema.sql"
engine: clickhouse
rest_frontend
enabled: false
v3.0.5
- Fixed regression:
run
command was incorrectly only processing blocks staying behind the "FinalBlocks" cliff.
v3.0.4
- Fixed support for tables with primary keys misaligned with
database_changes
's keys (fixing Clickhouse use case)
v3.0.3
protodefs-v1.0.3
Added support for selecting engine postgres
or clickhouse
to sinkconfig protobuf definition
example:
schema: "./schema.sql"
wire_protocol_access: true
engine: clickhouse
pgweb_frontend
enabled: false
v3.0.2
- Fixed default endpoint sfor networks 'goerli' and 'mumbai'
- Added
--postgraphile
flag tosetup
, which will add a @Skip comment on cursor table so Postgraphile doesn't try to serve cursors (it resulted in a name collision with Postgraphile internal names) - Fixed a bug with Clickhouse driver where different integer sizes need explicit conversion
protodefs-v1.0.2
SPKG with protobuf definition for sf.substreams.sink.sql.v1 "Service":
syntax = "proto3";
package sf.substreams.sink.sql.v1;
option go_package = "github.com/streamingfast/substreams-sink-sql/pb;pbsql";
import "sf/substreams/options.proto";
message Service {
// Containing both create table statements and index creation statements.
string schema = 1 [ (sf.substreams.options).load_from_file = true ];
optional DBTConfig dbt_config = 2;
bool wire_protocol_access = 3;
HasuraFrontend hasura_frontend = 4;
PostgraphileFrontend postgraphile_frontend = 5;
PGWebFrontend pgweb_frontend = 6;
}
message DBTConfig {
bytes files = 1 [ (sf.substreams.options).zip_from_folder = true ];
}
message HasuraFrontend {
bool enabled = 1;
}
message PostgraphileFrontend {
bool enabled = 1;
}
message PGWebFrontend {
bool enabled = 1;
}