From 97e2d5f603c68e224e87a0e723f3bcf61ab81353 Mon Sep 17 00:00:00 2001 From: Dustin Brickwood Date: Wed, 16 May 2018 10:21:08 -0400 Subject: [PATCH] added boolean for isContract --- shyftDb/postgres_setup/create_tables.psql | 1 + shyftdb/shyft_database_util.go | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/shyftDb/postgres_setup/create_tables.psql b/shyftDb/postgres_setup/create_tables.psql index c4f5e0cb43..80afba9790 100644 --- a/shyftDb/postgres_setup/create_tables.psql +++ b/shyftDb/postgres_setup/create_tables.psql @@ -25,6 +25,7 @@ CREATE TABLE IF NOT EXISTS txs ( gas numeric, txFee numeric, nonce numeric, + isContract bool, data bytea ); diff --git a/shyftdb/shyft_database_util.go b/shyftdb/shyft_database_util.go index 0e86b8ec31..af3475d4d6 100644 --- a/shyftdb/shyft_database_util.go +++ b/shyftdb/shyft_database_util.go @@ -197,18 +197,21 @@ func WriteTransactions(sqldb *sql.DB, tx *types.Transaction, blockHash common.Ha gas := txData.Gas data := txData.Data to := txData.To + var isContract bool if (to == nil){ var retNonce string - sqlStatement := `INSERT INTO txs(txhash, from_addr, blockhash, blockNumber, amount, gasprice, gas, txfee, nonce, data) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10)) RETURNING nonce` - qerr := sqldb.QueryRow(sqlStatement, txHash, from, blockHasher, blockNumber, amount, gasPrice, gas, txFee, nonce, data).Scan(&retNonce) + isContract = true + sqlStatement := `INSERT INTO txs(txhash, from_addr, blockhash, blockNumber, amount, gasprice, gas, txfee, nonce, isContract, data) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10), ($11)) RETURNING nonce` + qerr := sqldb.QueryRow(sqlStatement, txHash, from, blockHasher, blockNumber, amount, gasPrice, gas, txFee, nonce, isContract, data).Scan(&retNonce) if qerr != nil { panic(qerr) } } else { var retNonce string - sqlStatement := `INSERT INTO txs(txhash, from_addr, to_addr, blockhash, blockNumber, amount, gasprice, gas, txfee, nonce, data) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10), ($11)) RETURNING nonce` - qerr := sqldb.QueryRow(sqlStatement, txHash, from, to.Hex(), blockHasher, blockNumber, amount, gasPrice, gas, txFee, nonce, data).Scan(&retNonce) + isContract = false + sqlStatement := `INSERT INTO txs(txhash, from_addr, to_addr, blockhash, blockNumber, amount, gasprice, gas, txfee, nonce, isContract, data) VALUES(($1), ($2), ($3), ($4), ($5), ($6), ($7), ($8), ($9), ($10), ($11), ($12)) RETURNING nonce` + qerr := sqldb.QueryRow(sqlStatement, txHash, from, to.Hex(), blockHasher, blockNumber, amount, gasPrice, gas, txFee, nonce, isContract, data).Scan(&retNonce) if qerr != nil { panic(qerr) @@ -319,14 +322,14 @@ func WriteFromBalance(sqldb *sql.DB, tx *types.Transaction) error { switch { case err == sql.ErrNoRows: fmt.Println("NO ROWS RAN") - //i, err := strconv.Atoi(accountNonceRec) - //if err != nil { - // fmt.Println(err) - //} + i, err := strconv.Atoi(accountNonceRec) + if err != nil { + fmt.Println(err) + } //fmt.Println("accountnonce", i) //fmt.Println(reflect.TypeOf(i)) sqlStatement := `INSERT INTO accounts(addr, balance, txCountAccount) VALUES(($1), ($2), ($3)) RETURNING addr` - insertErr := sqldb.QueryRow(sqlStatement, toAddr, amount, accountNonceRec).Scan(&toAddr) + insertErr := sqldb.QueryRow(sqlStatement, toAddr, amount, i).Scan(&toAddr) if insertErr != nil { panic(insertErr) }