capture additional metaplex mints (#216)

* capture additional metaplex mints

* add downstream model tests

* add extra tests for downstream tables

* ignore transfer when source = destination

* add test cases

* temp exclude impacted nft models
This commit is contained in:
tarikceric 2023-01-25 13:30:02 -08:00 committed by GitHub
parent 2258fa4732
commit 8bee42b2b1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 46 additions and 5 deletions

View File

@ -44,6 +44,6 @@ jobs:
dbt run-operation run_sp_refresh_external_tables_full
dbt run -s models/silver/silver__transactions.sql models/silver/silver__blocks.sql models/silver/silver__votes.sql models/silver/silver___inner_instructions.sql models/silver/silver___instructions.sql models/silver/silver__events.sql models/silver/silver___all_undecoded_instructions_data.sql
dbt run-operation run_sp_refresh_external_tables_full
dbt run -s ./models --exclude models/core models/silver/silver__transactions.sql models/silver/silver__blocks.sql models/silver/silver__votes.sql models/silver/silver___inner_instructions.sql models/silver/silver___instructions.sql models/silver/silver__events.sql models/silver/silver___all_undecoded_instructions_data.sql tag:share models/streamline models/silver/silver__daily_signers.sql models/silver/silver__signers.sql
dbt run -s ./models --exclude models/core models/silver/silver__transactions.sql models/silver/silver__blocks.sql models/silver/silver__votes.sql models/silver/silver___inner_instructions.sql models/silver/silver___instructions.sql models/silver/silver__events.sql models/silver/silver___all_undecoded_instructions_data.sql tag:share models/streamline models/silver/silver__daily_signers.sql models/silver/silver__signers.sql models/silver/nfts/silver__nft_mint_price_generic.sql+
dbt run --var '{"UPDATE_SNOWFLAKE_TAGS":True}' -s ./models/core --exclude models/core/core__ez_signers.sql

View File

@ -0,0 +1,10 @@
program_id, payer, mint, mint_currency, mint_price
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,8gKR2HRvuKyFaHRopqodWh7xjGw4Tc5WfabRwDqgKTiM,5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG,So11111111111111111111111111111111111111111,0.011400481
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf,5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8,So11111111111111111111111111111111111111111,0.013683361
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf,5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,67JgSAJS4u7TzKhUunmbGwvPHK4BcDwv73BS2Am28Yvj,A3PFimLjQFwFt9mHWLuXWQwfpaBBpp2CEp6uTR6yccKr,So11111111111111111111111111111111111111111,0.011400481
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,8yGGqtYud82xsUF6LYQtbsXjuXcF5JrbZmpYFxQTARpx,4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ,So11111111111111111111111111111111111111111,0.016971201
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd,5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC,So11111111111111111111111111111111111111111,0.013683361
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd,5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb,AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf,So11111111111111111111111111111111111111111,0.013683361
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s,2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb,AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
1 program_id payer mint mint_currency mint_price
2 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 8gKR2HRvuKyFaHRopqodWh7xjGw4Tc5WfabRwDqgKTiM 5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG So11111111111111111111111111111111111111111 0.011400481
3 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf 5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8 So11111111111111111111111111111111111111111 0.013683361
4 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf 5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8 DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000
5 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 67JgSAJS4u7TzKhUunmbGwvPHK4BcDwv73BS2Am28Yvj A3PFimLjQFwFt9mHWLuXWQwfpaBBpp2CEp6uTR6yccKr So11111111111111111111111111111111111111111 0.011400481
6 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 8yGGqtYud82xsUF6LYQtbsXjuXcF5JrbZmpYFxQTARpx 4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ So11111111111111111111111111111111111111111 0.016971201
7 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd 5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC So11111111111111111111111111111111111111111 0.013683361
8 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd 5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000
9 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf So11111111111111111111111111111111111111111 0.013683361
10 metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s 2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000

View File

@ -20,3 +20,11 @@ Dq6H4jMXQkHEf3q3BocptwF7Nh6V9FZwABXuVRgRXtts,93oV7JEMxrzqZzcdqWtwoy2cfpmobBpWqcQ
Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN,3hNzvJcbjdhwt14cWkJMYUYFvNbVxLoS8cmrkqfAFVeM,So11111111111111111111111111111111111111111,0.00561672
Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN,3hNzvJcbjdhwt14cWkJMYUYFvNbVxLoS8cmrkqfAFVeM,GENEtH5amGSi8kHAtQoezp1XEXwZJ8vcuePYnXdKrMYz,10
Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN,GenoS3ck8xbDvYEZ8RxMG3Ln2qcyoAN8CTeZuaWgAoEA,So11111111111111111111111111111111111111111,0.0028536
4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ,8yGGqtYud82xsUF6LYQtbsXjuXcF5JrbZmpYFxQTARpx,So11111111111111111111111111111111111111111,0.016971201
5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG,8gKR2HRvuKyFaHRopqodWh7xjGw4Tc5WfabRwDqgKTiM,So11111111111111111111111111111111111111111,0.011400481
5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8,6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf,So11111111111111111111111111111111111111111,0.013683361
5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8,6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC,GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd,So11111111111111111111111111111111111111111,0.013683361
5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC,GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf,2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb,So11111111111111111111111111111111111111111,0.013683361
AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf,2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb,DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263,16250000
1 mint purchaser mint_currency mint_price
20 Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN 3hNzvJcbjdhwt14cWkJMYUYFvNbVxLoS8cmrkqfAFVeM So11111111111111111111111111111111111111111 0.00561672
21 Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN 3hNzvJcbjdhwt14cWkJMYUYFvNbVxLoS8cmrkqfAFVeM GENEtH5amGSi8kHAtQoezp1XEXwZJ8vcuePYnXdKrMYz 10
22 Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN GenoS3ck8xbDvYEZ8RxMG3Ln2qcyoAN8CTeZuaWgAoEA So11111111111111111111111111111111111111111 0.0028536
23 4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ 8yGGqtYud82xsUF6LYQtbsXjuXcF5JrbZmpYFxQTARpx So11111111111111111111111111111111111111111 0.016971201
24 5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG 8gKR2HRvuKyFaHRopqodWh7xjGw4Tc5WfabRwDqgKTiM So11111111111111111111111111111111111111111 0.011400481
25 5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8 6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf So11111111111111111111111111111111111111111 0.013683361
26 5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8 6fYqBU5Hanyx3SVE6trd4xXgwdKHdBK2yDPsM1Q8CHUf DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000
27 5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd So11111111111111111111111111111111111111111 0.013683361
28 5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC GwQ1d3oJDvAyhTTBUeUX9JW5dhjqYxYqzaG2HNkyYcWd DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000
29 AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf 2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb So11111111111111111111111111111111111111111 0.013683361
30 AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf 2jPtkhNbYP55Brb9bBPVwaRPFnMZHsu2YEeHHybFxwEb DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 16250000

View File

@ -8,6 +8,21 @@ models:
- MINT
- PAYER
- MINT_CURRENCY
- compare_model_subset:
name: silver__nft_mint_price_business_logic_test
compare_model: ref('testing__nft_mint_price')
compare_columns:
- program_id
- payer
- mint
- mint_currency
- round(mint_price,8)
model_condition: "where mint in ('5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG',
'5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8',
'A3PFimLjQFwFt9mHWLuXWQwfpaBBpp2CEp6uTR6yccKr',
'4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ',
'5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC',
'AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf')"
columns:
- name: BLOCK_TIMESTAMP
description: "block timestamp of the latest transaction with a mint price"

View File

@ -114,7 +114,9 @@ metaplex_events AS (
program_id = 'metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s'
AND succeeded
AND (
(ARRAY_SIZE(accounts) = 7
(ARRAY_SIZE(accounts) = 6
AND accounts [5] = '11111111111111111111111111111111')
OR (ARRAY_SIZE(accounts) = 7
AND accounts [5] = '11111111111111111111111111111111'
AND accounts [6] = 'SysvarRent111111111111111111111111111111111')
OR (ARRAY_SIZE(accounts) = 9
@ -148,7 +150,9 @@ metaplex_events AS (
i.value :programId :: STRING = 'metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s'
AND succeeded
AND (
(ARRAY_SIZE(accounts) = 7
(ARRAY_SIZE(accounts) = 6
AND accounts [5] = '11111111111111111111111111111111')
OR (ARRAY_SIZE(accounts) = 7
AND accounts [5] = '11111111111111111111111111111111'
AND accounts [6] = 'SysvarRent111111111111111111111111111111111')
OR (ARRAY_SIZE(accounts) = 9
@ -171,6 +175,8 @@ mint_price_events AS (
me.index,
i.index as inner_index,
'metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s' as program_id,
i.value:parsed:info:destination::string as temp_destination,
i.value:parsed:info:source::string as temp_source,
CASE
WHEN num_accounts in (14,17) THEN me.accounts [3] :: STRING
ELSE me.accounts [1] :: STRING
@ -192,7 +198,7 @@ mint_price_events AS (
FROM
metaplex_events me
LEFT JOIN TABLE(FLATTEN(inner_instruction :instructions)) i
group by 1,2,3,4,5,6,7,8,9,10
group by 1,2,3,4,5,6,7,8,9,10,11,12
),
pre_final as (
select
@ -204,6 +210,7 @@ pre_final as (
COALESCE(p.decimal, 9) as decimal
from mint_price_events e
LEFT OUTER JOIN base_ptb p on e.token_account = p.account
where (temp_destination <> temp_source) or (temp_destination is null) or (temp_source is null)
)
SELECT
p.mint,

View File

@ -23,7 +23,8 @@ models:
'FaC8SaDj6crwZA5JyucbKuTDbbTLbCSVpGbLVSXxaxJ4','BxGPRSEzHwEzX73Ep67a9u5xFc2BSuXSrAevqNMkzN8Z','HrbK1X3ooR2fBujtDSWeKQtbj1fUtptrEb7mWvsxeQQk',
'CmejwsHB1hcQPbY7y4EjYD5gxWJEXn9G4PkXLpLoTus1','JBzLjej5DEtVupwVtn6y1mnG4HFEkm5PVxQYFNYMJzhc','J5EFUxYPxAyx5oCUUgmCrESHjhmXuzrYsscoxRvVW5Vz',
'DCahWcCagbsW8HAqu4QMDaQZn212MrA7aN4yLNKYn3tY','58MAJPUgfSyehsKggYEeWjpNZaKw5qxnLNZ4EKeRicmq','Dq6H4jMXQkHEf3q3BocptwF7Nh6V9FZwABXuVRgRXtts',
'Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN')"
'Ar9mEJ7qJ1uAgkWduKGo3UYVbPMdKrmWxs5z2wgZgbgN','4CLQnbNKynn6qXF1S4woTxbiuPYREoEYbkXtvoYyzvxQ','5huRn5xdFZVi8TY2WEYyqimMiBJQPP1uQQcoFqNZb2oG',
'5AbpcVMnyxgK1UfZRrYDD5iiFWWBXUVnAqLifa9n7Bm8','5Awi9epmw6EYXzLnzkSu7qJKiZ4HnnDsJ3ix9Wxrt6DC', 'AXJFRmLT11RnuFEgYC35F9tktdL77xX8y1b4HEbXPJkf')"
columns:
- name: BLOCK_TIMESTAMP
description: "{{ doc('block_timestamp') }}"