update migrations; update go modules
This commit is contained in:
parent
60bfc1c045
commit
5cad354eac
69
db/migrations/00013_potgraphile_triggers.sql
Normal file
69
db/migrations/00013_potgraphile_triggers.sql
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
-- +goose Up
|
||||||
|
-- +goose StatementBegin
|
||||||
|
CREATE FUNCTION eth.graphql_subscription() returns TRIGGER as $$
|
||||||
|
declare
|
||||||
|
table_name text = TG_ARGV[0];
|
||||||
|
attribute text = TG_ARGV[1];
|
||||||
|
id text;
|
||||||
|
begin
|
||||||
|
execute 'select $1.' || quote_ident(attribute)
|
||||||
|
using new
|
||||||
|
into id;
|
||||||
|
perform pg_notify('postgraphile:' || table_name,
|
||||||
|
json_build_object(
|
||||||
|
'__node__', json_build_array(
|
||||||
|
table_name,
|
||||||
|
id
|
||||||
|
)
|
||||||
|
)::text
|
||||||
|
);
|
||||||
|
return new;
|
||||||
|
end;
|
||||||
|
$$ language plpgsql;
|
||||||
|
-- +goose StatementEnd
|
||||||
|
|
||||||
|
CREATE TRIGGER header_cids_ai
|
||||||
|
after INSERT ON eth.header_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('header_cids', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER receipt_cids_ai
|
||||||
|
after INSERT ON eth.receipt_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('receipt_cids', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER state_accounts_ai
|
||||||
|
after INSERT ON eth.state_accounts
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('state_accounts', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER state_cids_ai
|
||||||
|
after INSERT ON eth.state_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('state_cids', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER storage_cids_ai
|
||||||
|
after INSERT ON eth.storage_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('storage_cids', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER transaction_cids_ai
|
||||||
|
after INSERT ON eth.transaction_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('transaction_cids', 'id');
|
||||||
|
|
||||||
|
CREATE TRIGGER uncle_cids_ai
|
||||||
|
after INSERT ON eth.uncle_cids
|
||||||
|
for each row
|
||||||
|
execute procedure eth.graphql_subscription('uncle_cids', 'id');
|
||||||
|
|
||||||
|
-- +goose Down
|
||||||
|
DROP TRIGGER uncle_cids_ai ON eth.uncle_cids;
|
||||||
|
DROP TRIGGER transaction_cids_ai ON eth.transaction_cids;
|
||||||
|
DROP TRIGGER storage_cids_ai ON eth.storage_cids;
|
||||||
|
DROP TRIGGER state_cids_ai ON eth.state_cids;
|
||||||
|
DROP TRIGGER state_accounts_ai ON eth.state_accounts;
|
||||||
|
DROP TRIGGER receipt_cids_ai ON eth.receipt_cids;
|
||||||
|
DROP TRIGGER header_cids_ai ON eth.header_cids;
|
||||||
|
|
||||||
|
DROP FUNCTION eth.graphql_subscription();
|
@ -25,8 +25,6 @@ CREATE INDEX tx_dst_index ON eth.transaction_cids USING btree (dst);
|
|||||||
|
|
||||||
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
||||||
|
|
||||||
CREATE INDEX tx_data_index ON eth.transaction_cids USING btree (tx_data);
|
|
||||||
|
|
||||||
-- receipt indexes
|
-- receipt indexes
|
||||||
CREATE INDEX rct_tx_id_index ON eth.receipt_cids USING btree (tx_id);
|
CREATE INDEX rct_tx_id_index ON eth.receipt_cids USING btree (tx_id);
|
||||||
|
|
||||||
@ -107,7 +105,6 @@ DROP INDEX eth.rct_cid_index;
|
|||||||
DROP INDEX eth.rct_tx_id_index;
|
DROP INDEX eth.rct_tx_id_index;
|
||||||
|
|
||||||
-- transaction indexes
|
-- transaction indexes
|
||||||
DROP INDEX eth.tx_data_index;
|
|
||||||
DROP INDEX eth.tx_src_index;
|
DROP INDEX eth.tx_src_index;
|
||||||
DROP INDEX eth.tx_dst_index;
|
DROP INDEX eth.tx_dst_index;
|
||||||
DROP INDEX eth.tx_mh_index;
|
DROP INDEX eth.tx_mh_index;
|
||||||
|
@ -23,6 +23,34 @@ SET row_security = off;
|
|||||||
CREATE SCHEMA eth;
|
CREATE SCHEMA eth;
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: graphql_subscription(); Type: FUNCTION; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE FUNCTION eth.graphql_subscription() RETURNS trigger
|
||||||
|
LANGUAGE plpgsql
|
||||||
|
AS $_$
|
||||||
|
declare
|
||||||
|
table_name text = TG_ARGV[0];
|
||||||
|
attribute text = TG_ARGV[1];
|
||||||
|
id text;
|
||||||
|
begin
|
||||||
|
execute 'select $1.' || quote_ident(attribute)
|
||||||
|
using new
|
||||||
|
into id;
|
||||||
|
perform pg_notify('postgraphile:' || table_name,
|
||||||
|
json_build_object(
|
||||||
|
'__node__', json_build_array(
|
||||||
|
table_name,
|
||||||
|
id
|
||||||
|
)
|
||||||
|
)::text
|
||||||
|
);
|
||||||
|
return new;
|
||||||
|
end;
|
||||||
|
$_$;
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Name: canonical_header(bigint); Type: FUNCTION; Schema: public; Owner: -
|
-- Name: canonical_header(bigint); Type: FUNCTION; Schema: public; Owner: -
|
||||||
--
|
--
|
||||||
@ -858,13 +886,6 @@ CREATE INDEX timestamp_index ON eth.header_cids USING brin ("timestamp");
|
|||||||
CREATE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
CREATE INDEX tx_cid_index ON eth.transaction_cids USING btree (cid);
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Name: tx_data_index; Type: INDEX; Schema: eth; Owner: -
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE INDEX tx_data_index ON eth.transaction_cids USING btree (tx_data);
|
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Name: tx_dst_index; Type: INDEX; Schema: eth; Owner: -
|
-- Name: tx_dst_index; Type: INDEX; Schema: eth; Owner: -
|
||||||
--
|
--
|
||||||
@ -900,6 +921,55 @@ CREATE INDEX tx_mh_index ON eth.transaction_cids USING btree (mh_key);
|
|||||||
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
CREATE INDEX tx_src_index ON eth.transaction_cids USING btree (src);
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: header_cids header_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER header_cids_ai AFTER INSERT ON eth.header_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('header_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: receipt_cids receipt_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER receipt_cids_ai AFTER INSERT ON eth.receipt_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('receipt_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: state_accounts state_accounts_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER state_accounts_ai AFTER INSERT ON eth.state_accounts FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('state_accounts', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: state_cids state_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER state_cids_ai AFTER INSERT ON eth.state_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('state_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: storage_cids storage_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER storage_cids_ai AFTER INSERT ON eth.storage_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('storage_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: transaction_cids transaction_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER transaction_cids_ai AFTER INSERT ON eth.transaction_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('transaction_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: uncle_cids uncle_cids_ai; Type: TRIGGER; Schema: eth; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TRIGGER uncle_cids_ai AFTER INSERT ON eth.uncle_cids FOR EACH ROW EXECUTE FUNCTION eth.graphql_subscription('uncle_cids', 'id');
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Name: header_cids header_cids_mh_key_fkey; Type: FK CONSTRAINT; Schema: eth; Owner: -
|
-- Name: header_cids header_cids_mh_key_fkey; Type: FK CONSTRAINT; Schema: eth; Owner: -
|
||||||
--
|
--
|
||||||
|
6
go.mod
6
go.mod
@ -17,10 +17,8 @@ require (
|
|||||||
github.com/sirupsen/logrus v1.6.0
|
github.com/sirupsen/logrus v1.6.0
|
||||||
github.com/spf13/cobra v1.0.0
|
github.com/spf13/cobra v1.0.0
|
||||||
github.com/spf13/viper v1.7.0
|
github.com/spf13/viper v1.7.0
|
||||||
github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha
|
github.com/vulcanize/ipld-eth-indexer v0.6.0-alpha
|
||||||
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha
|
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha
|
||||||
)
|
)
|
||||||
|
|
||||||
replace github.com/ethereum/go-ethereum v1.9.11 => /Users/iannorden/go/src/github.com/ethereum/go-ethereum
|
replace github.com/ethereum/go-ethereum v1.9.11 => github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.8
|
||||||
|
|
||||||
replace github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha => /Users/iannorden/go/src/github.com/vulcanize/ipld-eth-indexer
|
|
||||||
|
4
go.sum
4
go.sum
@ -935,10 +935,14 @@ github.com/viant/assertly v0.4.8/go.mod h1:aGifi++jvCrUaklKEKT0BU95igDNaqkvz+49u
|
|||||||
github.com/viant/toolbox v0.24.0/go.mod h1:OxMCG57V0PXuIP2HNQrtJf2CjqdmbrOx5EkMILuUhzM=
|
github.com/viant/toolbox v0.24.0/go.mod h1:OxMCG57V0PXuIP2HNQrtJf2CjqdmbrOx5EkMILuUhzM=
|
||||||
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.5 h1:U+BqhjRLR22e9OEm8cgWC3Eq3bh8G6azjNpXeenfCG4=
|
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.5 h1:U+BqhjRLR22e9OEm8cgWC3Eq3bh8G6azjNpXeenfCG4=
|
||||||
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.5/go.mod h1:7oC0Ni6dosMv5pxMigm6s0hN8g4haJMBnqmmo0D9YfQ=
|
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.5/go.mod h1:7oC0Ni6dosMv5pxMigm6s0hN8g4haJMBnqmmo0D9YfQ=
|
||||||
|
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.8 h1:7TK52k55uvSl+1SCKYYFelzH1NrpvEcDrpeU9nUDIpI=
|
||||||
|
github.com/vulcanize/go-ethereum v1.9.11-statediff-0.0.8/go.mod h1:7oC0Ni6dosMv5pxMigm6s0hN8g4haJMBnqmmo0D9YfQ=
|
||||||
github.com/vulcanize/ipld-eth-indexer v0.2.0-alpha h1:+XVaC7TsA0K278YWpfqdrNxwgC6hY6fBaN8w2/e1Lts=
|
github.com/vulcanize/ipld-eth-indexer v0.2.0-alpha h1:+XVaC7TsA0K278YWpfqdrNxwgC6hY6fBaN8w2/e1Lts=
|
||||||
github.com/vulcanize/ipld-eth-indexer v0.2.0-alpha/go.mod h1:SuMBscFfcBHYlQuzDDd4by+R0S3gaAFjrOU+uQfAefE=
|
github.com/vulcanize/ipld-eth-indexer v0.2.0-alpha/go.mod h1:SuMBscFfcBHYlQuzDDd4by+R0S3gaAFjrOU+uQfAefE=
|
||||||
github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha h1:DXZ/hF65uegvh70YZTcPM6InMUxGkWxee6awyLcrhDg=
|
github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha h1:DXZ/hF65uegvh70YZTcPM6InMUxGkWxee6awyLcrhDg=
|
||||||
github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha/go.mod h1:SuMBscFfcBHYlQuzDDd4by+R0S3gaAFjrOU+uQfAefE=
|
github.com/vulcanize/ipld-eth-indexer v0.4.0-alpha/go.mod h1:SuMBscFfcBHYlQuzDDd4by+R0S3gaAFjrOU+uQfAefE=
|
||||||
|
github.com/vulcanize/ipld-eth-indexer v0.6.0-alpha h1:CNZfwHokF3tcYKCsWKoyRqmyDh1quw0v/e5Jf2dD7uc=
|
||||||
|
github.com/vulcanize/ipld-eth-indexer v0.6.0-alpha/go.mod h1:6eYAh+NiZyfpexdhLm9ZMCPspvJd0IE5k8+lGoaZtUQ=
|
||||||
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha h1:Y7j0Hw1jgVVOg+eUGUr7OgH+gOBID0DwbsfZV1KoL7I=
|
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha h1:Y7j0Hw1jgVVOg+eUGUr7OgH+gOBID0DwbsfZV1KoL7I=
|
||||||
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha/go.mod h1:OuqE4r2LGWAtDVx3s1yaAzDcwy+LEAqrWaE1L8UfrGY=
|
github.com/vulcanize/pg-ipfs-ethdb v0.0.1-alpha/go.mod h1:OuqE4r2LGWAtDVx3s1yaAzDcwy+LEAqrWaE1L8UfrGY=
|
||||||
github.com/wangjia184/sortedset v0.0.0-20160527075905-f5d03557ba30/go.mod h1:YkocrP2K2tcw938x9gCOmT5G5eCD6jsTz0SZuyAqwIE=
|
github.com/wangjia184/sortedset v0.0.0-20160527075905-f5d03557ba30/go.mod h1:YkocrP2K2tcw938x9gCOmT5G5eCD6jsTz0SZuyAqwIE=
|
||||||
|
Loading…
Reference in New Issue
Block a user