94
}
95
96
>
func (s *historyNodeSuite) TestInsertSelect_Single() {
history_node.go
97
>
pageSize := 100
98
>
99
>
shardID := rand.Int31()
100
>
treeID := primitives.NewUUID()
101
>
branchID := primitives.NewUUID()
102
>
nodeID := int64(1)
103
>
prevTransactionID := rand.Int63()
104
>
transactionID := rand.Int63()
105
>
106
>
node := s.newRandomNodeRow(shardID, treeID, branchID, nodeID, prevTransactionID, transactionID)
107
>
result, err := s.store.InsertIntoHistoryNode(newExecutionContext(), &node)
108
>
s.NoError(err)
109
>
rowsAffected, err := result.RowsAffected()
110
>
s.NoError(err)
111
>
s.Equal(1, int(rowsAffected))
112
>
113
>
selectFilter := sqlplugin.HistoryNodeSelectFilter{
114
>
ShardID: shardID,
115
>
TreeID: treeID,
116
>
BranchID: branchID,
117
>
MinNodeID: nodeID,
118
>
MinTxnID: sql.MinTxnID,
119
>
MaxNodeID: math.MaxInt64,
120
>
PageSize: pageSize,
121
>
}
122
>
rows, err := s.store.RangeSelectFromHistoryNode(newExecutionContext(), selectFilter)
123
>
s.NoError(err)
124
>
// NOTE: TxnID is *= -1 within InsertIntoHistoryNode
125
>
node.TxnID = -node.TxnID
126
>
for index := range rows {
127
>
rows[index].ShardID = shardID
128
>
rows[index].TreeID = treeID
129
>
rows[index].BranchID = branchID
130
>
}
131
>
s.Equal([]sqlplugin.HistoryNodeRow{node}, rows)
132
}
133