@@ -319,6 +319,19 @@ impl FromRow<StackStxOp> for StackStxOp {
319
319
let stacked_ustx = u128:: from_str_radix ( & stacked_ustx_str, 10 )
320
320
. expect ( "CORRUPTION: bad u128 written to sortdb" ) ;
321
321
let num_cycles = row. get_unwrap ( "num_cycles" ) ;
322
+ let signing_key_str_opt: Option < String > = row. get ( "signer_key" ) ?;
323
+ let signer_key = match signing_key_str_opt {
324
+ Some ( key_str) => serde_json:: from_str ( & key_str) . ok ( ) ,
325
+ None => None ,
326
+ } ;
327
+ let max_amount_str_opt: Option < String > = row. get ( "max_amount" ) ?;
328
+ let max_amount = match max_amount_str_opt {
329
+ Some ( max_amount_str) => u128:: from_str_radix ( & max_amount_str, 10 )
330
+ . map_err ( |_| db_error:: ParseError )
331
+ . ok ( ) ,
332
+ None => None ,
333
+ } ;
334
+ let auth_id = row. get ( "auth_id" ) ?;
322
335
323
336
Ok ( StackStxOp {
324
337
txid,
@@ -329,6 +342,9 @@ impl FromRow<StackStxOp> for StackStxOp {
329
342
reward_addr,
330
343
stacked_ustx,
331
344
num_cycles,
345
+ signer_key,
346
+ max_amount,
347
+ auth_id,
332
348
} )
333
349
}
334
350
}
@@ -702,6 +718,9 @@ const SORTITION_DB_SCHEMA_8: &'static [&'static str] = &[
702
718
block_hash TEXT NOT NULL,
703
719
block_height INTEGER NOT NULL
704
720
);"# ,
721
+ r#"ALTER TABLE stack_stx ADD signer_key TEXT DEFAULT NULL;"# ,
722
+ r#"ALTER TABLE stack_stx ADD max_amount TEXT DEFAULT NULL;"# ,
723
+ r#"ALTER TABLE stack_stx ADD auth_id INTEGER DEFAULT NULL;"# ,
705
724
r#"
706
725
-- table definition for `vote-for-aggregate-key` burn op
707
726
CREATE TABLE vote_for_aggregate_key (
@@ -5372,9 +5391,12 @@ impl<'a> SortitionHandleTx<'a> {
5372
5391
& op. reward_addr . to_db_string ( ) ,
5373
5392
& op. stacked_ustx . to_string ( ) ,
5374
5393
& op. num_cycles ,
5394
+ & serde_json:: to_string ( & op. signer_key ) . unwrap ( ) ,
5395
+ & serde_json:: to_string ( & op. max_amount ) . unwrap ( ) ,
5396
+ & op. auth_id ,
5375
5397
] ;
5376
5398
5377
- self . execute ( "REPLACE INTO stack_stx (txid, vtxindex, block_height, burn_header_hash, sender_addr, reward_addr, stacked_ustx, num_cycles) VALUES (?1, ?2, ?3, ?4, ?5, ?6, ?7, ?8)" , args) ?;
5399
+ self . execute ( "REPLACE INTO stack_stx (txid, vtxindex, block_height, burn_header_hash, sender_addr, reward_addr, stacked_ustx, num_cycles, signer_key, max_amount, auth_id ) VALUES (?1, ?2, ?3, ?4, ?5, ?6, ?7, ?8, ?9, ?10, ?11 )" , args) ?;
5378
5400
5379
5401
Ok ( ( ) )
5380
5402
}
@@ -10085,6 +10107,9 @@ pub mod tests {
10085
10107
reward_addr: PoxAddress :: Standard ( StacksAddress :: new( 4 , Hash160 ( [ 4u8 ; 20 ] ) ) , None ) ,
10086
10108
stacked_ustx: 456 ,
10087
10109
num_cycles: 6 ,
10110
+ signer_key: Some ( StacksPublicKeyBuffer ( [ 0x02 ; 33 ] ) ) ,
10111
+ max_amount: Some ( u128 :: MAX ) ,
10112
+ auth_id: Some ( 0u32 ) ,
10088
10113
10089
10114
txid: Txid ( [ 0x02 ; 32 ] ) ,
10090
10115
vtxindex: 2 ,
@@ -10177,6 +10202,9 @@ pub mod tests {
10177
10202
reward_addr: PoxAddress :: Standard ( StacksAddress :: new( 4 , Hash160 ( [ 4u8 ; 20 ] ) ) , None ) ,
10178
10203
stacked_ustx: 456 ,
10179
10204
num_cycles: 6 ,
10205
+ signer_key: None ,
10206
+ max_amount: None ,
10207
+ auth_id: None ,
10180
10208
10181
10209
txid: Txid ( [ 0x02 ; 32 ] ) ,
10182
10210
vtxindex: 2 ,
0 commit comments