@@ -53,7 +53,7 @@ enum MsgOrExit<T> {
5353enum SchedulerMessage {
5454 Schedule {
5555 id : ScheduledFunctionId ,
56- function_name : Box < str > ,
56+ function_name : Arc < str > ,
5757 /// The timestamp we'll tell the reducer it is.
5858 effective_at : Timestamp ,
5959 /// The actual instant we're scheduling for.
@@ -103,7 +103,8 @@ impl SchedulerStarter {
103103 // Find all Scheduled tables
104104 for st_scheduled_row in self . db . iter ( & tx, ST_SCHEDULED_ID ) ? {
105105 let table_id = st_scheduled_row. read_col ( StScheduledFields :: TableId ) ?;
106- let function_name = st_scheduled_row. read_col :: < Box < str > > ( StScheduledFields :: ReducerName ) ?;
106+ let function_name =
107+ Arc :: < str > :: from ( st_scheduled_row. read_col :: < Box < str > > ( StScheduledFields :: ReducerName ) ?) ;
107108 let ( id_column, at_column) = self
108109 . db
109110 . table_scheduled_id_and_at ( & tx, table_id) ?
@@ -210,7 +211,7 @@ impl Scheduler {
210211 schedule_at : ScheduleAt ,
211212 id_column : ColId ,
212213 at_column : ColId ,
213- function_name : Box < str > ,
214+ function_name : Arc < str > ,
214215 fn_start : Timestamp ,
215216 ) -> Result < ( ) , ScheduleError > {
216217 // if `Timestamp::now()` is properly monotonic, use it; otherwise, use
@@ -279,7 +280,7 @@ struct SchedulerActor {
279280enum QueueItem {
280281 Id {
281282 id : ScheduledFunctionId ,
282- function_name : Box < str > ,
283+ function_name : Arc < str > ,
283284 at : Timestamp ,
284285 } ,
285286 VolatileNonatomicImmediate {
0 commit comments