Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
nebula
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
exchain
nebula
Commits
496d7ef4
Commit
496d7ef4
authored
Aug 18, 2023
by
Hamdi Allam
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use contigious blocks of memory in database
parent
34e26391
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
28 additions
and
28 deletions
+28
-28
blocks.go
indexer/database/blocks.go
+8
-8
bridge_messages.go
indexer/database/bridge_messages.go
+4
-4
bridge_transactions.go
indexer/database/bridge_transactions.go
+4
-4
bridge_transfers.go
indexer/database/bridge_transfers.go
+8
-8
contract_events.go
indexer/database/contract_events.go
+4
-4
No files found.
indexer/database/blocks.go
View file @
496d7ef4
...
...
@@ -82,11 +82,11 @@ type BlocksView interface {
type
BlocksDB
interface
{
BlocksView
StoreL1BlockHeaders
([]
*
L1BlockHeader
)
error
StoreL2BlockHeaders
([]
*
L2BlockHeader
)
error
StoreL1BlockHeaders
([]
L1BlockHeader
)
error
StoreL2BlockHeaders
([]
L2BlockHeader
)
error
StoreLegacyStateBatches
([]
*
LegacyStateBatch
)
error
StoreOutputProposals
([]
*
OutputProposal
)
error
StoreLegacyStateBatches
([]
LegacyStateBatch
)
error
StoreOutputProposals
([]
OutputProposal
)
error
}
/**
...
...
@@ -103,17 +103,17 @@ func newBlocksDB(db *gorm.DB) BlocksDB {
// L1
func
(
db
*
blocksDB
)
StoreL1BlockHeaders
(
headers
[]
*
L1BlockHeader
)
error
{
func
(
db
*
blocksDB
)
StoreL1BlockHeaders
(
headers
[]
L1BlockHeader
)
error
{
result
:=
db
.
gorm
.
Create
(
&
headers
)
return
result
.
Error
}
func
(
db
*
blocksDB
)
StoreLegacyStateBatches
(
stateBatches
[]
*
LegacyStateBatch
)
error
{
func
(
db
*
blocksDB
)
StoreLegacyStateBatches
(
stateBatches
[]
LegacyStateBatch
)
error
{
result
:=
db
.
gorm
.
Create
(
stateBatches
)
return
result
.
Error
}
func
(
db
*
blocksDB
)
StoreOutputProposals
(
outputs
[]
*
OutputProposal
)
error
{
func
(
db
*
blocksDB
)
StoreOutputProposals
(
outputs
[]
OutputProposal
)
error
{
result
:=
db
.
gorm
.
Create
(
outputs
)
return
result
.
Error
}
...
...
@@ -179,7 +179,7 @@ func (db *blocksDB) OutputProposal(index *big.Int) (*OutputProposal, error) {
// L2
func
(
db
*
blocksDB
)
StoreL2BlockHeaders
(
headers
[]
*
L2BlockHeader
)
error
{
func
(
db
*
blocksDB
)
StoreL2BlockHeaders
(
headers
[]
L2BlockHeader
)
error
{
result
:=
db
.
gorm
.
Create
(
&
headers
)
return
result
.
Error
}
...
...
indexer/database/bridge_messages.go
View file @
496d7ef4
...
...
@@ -47,10 +47,10 @@ type BridgeMessagesView interface {
type
BridgeMessagesDB
interface
{
BridgeMessagesView
StoreL1BridgeMessages
([]
*
L1BridgeMessage
)
error
StoreL1BridgeMessages
([]
L1BridgeMessage
)
error
MarkRelayedL1BridgeMessage
(
common
.
Hash
,
uuid
.
UUID
)
error
StoreL2BridgeMessages
([]
*
L2BridgeMessage
)
error
StoreL2BridgeMessages
([]
L2BridgeMessage
)
error
MarkRelayedL2BridgeMessage
(
common
.
Hash
,
uuid
.
UUID
)
error
}
...
...
@@ -70,7 +70,7 @@ func newBridgeMessagesDB(db *gorm.DB) BridgeMessagesDB {
* Arbitrary Messages Sent from L1
*/
func
(
db
bridgeMessagesDB
)
StoreL1BridgeMessages
(
messages
[]
*
L1BridgeMessage
)
error
{
func
(
db
bridgeMessagesDB
)
StoreL1BridgeMessages
(
messages
[]
L1BridgeMessage
)
error
{
result
:=
db
.
gorm
.
Create
(
&
messages
)
return
result
.
Error
}
...
...
@@ -109,7 +109,7 @@ func (db bridgeMessagesDB) MarkRelayedL1BridgeMessage(messageHash common.Hash, r
* Arbitrary Messages Sent from L2
*/
func
(
db
bridgeMessagesDB
)
StoreL2BridgeMessages
(
messages
[]
*
L2BridgeMessage
)
error
{
func
(
db
bridgeMessagesDB
)
StoreL2BridgeMessages
(
messages
[]
L2BridgeMessage
)
error
{
result
:=
db
.
gorm
.
Create
(
&
messages
)
return
result
.
Error
}
...
...
indexer/database/bridge_transactions.go
View file @
496d7ef4
...
...
@@ -53,9 +53,9 @@ type BridgeTransactionsView interface {
type
BridgeTransactionsDB
interface
{
BridgeTransactionsView
StoreL1TransactionDeposits
([]
*
L1TransactionDeposit
)
error
StoreL1TransactionDeposits
([]
L1TransactionDeposit
)
error
StoreL2TransactionWithdrawals
([]
*
L2TransactionWithdrawal
)
error
StoreL2TransactionWithdrawals
([]
L2TransactionWithdrawal
)
error
MarkL2TransactionWithdrawalProvenEvent
(
common
.
Hash
,
uuid
.
UUID
)
error
MarkL2TransactionWithdrawalFinalizedEvent
(
common
.
Hash
,
uuid
.
UUID
,
bool
)
error
}
...
...
@@ -76,7 +76,7 @@ func newBridgeTransactionsDB(db *gorm.DB) BridgeTransactionsDB {
* Transactions deposited from L1
*/
func
(
db
*
bridgeTransactionsDB
)
StoreL1TransactionDeposits
(
deposits
[]
*
L1TransactionDeposit
)
error
{
func
(
db
*
bridgeTransactionsDB
)
StoreL1TransactionDeposits
(
deposits
[]
L1TransactionDeposit
)
error
{
result
:=
db
.
gorm
.
Create
(
&
deposits
)
return
result
.
Error
}
...
...
@@ -98,7 +98,7 @@ func (db *bridgeTransactionsDB) L1TransactionDeposit(sourceHash common.Hash) (*L
* Transactions withdrawn from L2
*/
func
(
db
*
bridgeTransactionsDB
)
StoreL2TransactionWithdrawals
(
withdrawals
[]
*
L2TransactionWithdrawal
)
error
{
func
(
db
*
bridgeTransactionsDB
)
StoreL2TransactionWithdrawals
(
withdrawals
[]
L2TransactionWithdrawal
)
error
{
result
:=
db
.
gorm
.
Create
(
&
withdrawals
)
return
result
.
Error
}
...
...
indexer/database/bridge_transfers.go
View file @
496d7ef4
...
...
@@ -68,8 +68,8 @@ type BridgeTransfersView interface {
type
BridgeTransfersDB
interface
{
BridgeTransfersView
StoreL1BridgeDeposits
([]
*
L1BridgeDeposit
)
error
StoreL2BridgeWithdrawals
([]
*
L2BridgeWithdrawal
)
error
StoreL1BridgeDeposits
([]
L1BridgeDeposit
)
error
StoreL2BridgeWithdrawals
([]
L2BridgeWithdrawal
)
error
}
/**
...
...
@@ -88,7 +88,7 @@ func newBridgeTransfersDB(db *gorm.DB) BridgeTransfersDB {
* Tokens Bridged (Deposited) from L1
*/
func
(
db
*
bridgeTransfersDB
)
StoreL1BridgeDeposits
(
deposits
[]
*
L1BridgeDeposit
)
error
{
func
(
db
*
bridgeTransfersDB
)
StoreL1BridgeDeposits
(
deposits
[]
L1BridgeDeposit
)
error
{
result
:=
db
.
gorm
.
Create
(
&
deposits
)
return
result
.
Error
}
...
...
@@ -122,7 +122,7 @@ func (db *bridgeTransfersDB) L1BridgeDepositWithFilter(filter BridgeTransfer) (*
}
type
L1BridgeDepositsResponse
struct
{
Deposits
[]
*
L1BridgeDepositWithTransactionHashes
Deposits
[]
L1BridgeDepositWithTransactionHashes
Cursor
string
HasNextPage
bool
}
...
...
@@ -150,7 +150,7 @@ l1_transaction_deposits.l2_transaction_hash`)
filteredQuery
:=
depositsQuery
.
Where
(
&
Transaction
{
FromAddress
:
address
})
.
Order
(
"l1_bridge_deposits.transaction_source_hash DESC"
)
.
Limit
(
limit
+
1
)
deposits
:=
[]
*
L1BridgeDepositWithTransactionHashes
{}
deposits
:=
[]
L1BridgeDepositWithTransactionHashes
{}
result
:=
filteredQuery
.
Scan
(
&
deposits
)
if
result
.
Error
!=
nil
{
if
errors
.
Is
(
result
.
Error
,
gorm
.
ErrRecordNotFound
)
{
...
...
@@ -183,7 +183,7 @@ l1_transaction_deposits.l2_transaction_hash`)
* Tokens Bridged (Withdrawn) from L2
*/
func
(
db
*
bridgeTransfersDB
)
StoreL2BridgeWithdrawals
(
withdrawals
[]
*
L2BridgeWithdrawal
)
error
{
func
(
db
*
bridgeTransfersDB
)
StoreL2BridgeWithdrawals
(
withdrawals
[]
L2BridgeWithdrawal
)
error
{
result
:=
db
.
gorm
.
Create
(
&
withdrawals
)
return
result
.
Error
}
...
...
@@ -217,7 +217,7 @@ func (db *bridgeTransfersDB) L2BridgeWithdrawalWithFilter(filter BridgeTransfer)
}
type
L2BridgeWithdrawalsResponse
struct
{
Withdrawals
[]
*
L2BridgeWithdrawalWithTransactionHashes
Withdrawals
[]
L2BridgeWithdrawalWithTransactionHashes
Cursor
string
HasNextPage
bool
}
...
...
@@ -247,7 +247,7 @@ finalized_l1_contract_events.transaction_hash AS finalized_l1_transaction_hash`)
filteredQuery
:=
withdrawalsQuery
.
Where
(
&
Transaction
{
FromAddress
:
address
})
.
Order
(
"l2_bridge_withdrawals.timestamp DESC"
)
.
Limit
(
limit
+
1
)
withdrawals
:=
[]
*
L2BridgeWithdrawalWithTransactionHashes
{}
withdrawals
:=
[]
L2BridgeWithdrawalWithTransactionHashes
{}
result
:=
filteredQuery
.
Scan
(
&
withdrawals
)
if
result
.
Error
!=
nil
{
if
errors
.
Is
(
result
.
Error
,
gorm
.
ErrRecordNotFound
)
{
...
...
indexer/database/contract_events.go
View file @
496d7ef4
...
...
@@ -90,8 +90,8 @@ type ContractEventsView interface {
type
ContractEventsDB
interface
{
ContractEventsView
StoreL1ContractEvents
([]
*
L1ContractEvent
)
error
StoreL2ContractEvents
([]
*
L2ContractEvent
)
error
StoreL1ContractEvents
([]
L1ContractEvent
)
error
StoreL2ContractEvents
([]
L2ContractEvent
)
error
}
/**
...
...
@@ -108,7 +108,7 @@ func newContractEventsDB(db *gorm.DB) ContractEventsDB {
// L1
func
(
db
*
contractEventsDB
)
StoreL1ContractEvents
(
events
[]
*
L1ContractEvent
)
error
{
func
(
db
*
contractEventsDB
)
StoreL1ContractEvents
(
events
[]
L1ContractEvent
)
error
{
result
:=
db
.
gorm
.
Create
(
&
events
)
return
result
.
Error
}
...
...
@@ -175,7 +175,7 @@ func (db *contractEventsDB) L1LatestContractEventWithFilter(filter ContractEvent
// L2
func
(
db
*
contractEventsDB
)
StoreL2ContractEvents
(
events
[]
*
L2ContractEvent
)
error
{
func
(
db
*
contractEventsDB
)
StoreL2ContractEvents
(
events
[]
L2ContractEvent
)
error
{
result
:=
db
.
gorm
.
Create
(
&
events
)
return
result
.
Error
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment