Skip to content

Commit ee3cf7a

Browse files
Add name parameter to sleep (#136)
1 parent 7fa75d0 commit ee3cf7a

File tree

4 files changed

+7
-6
lines changed

4 files changed

+7
-6
lines changed

python/restate/context.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@ def run_typed(self,
404404
"""
405405

406406
@abc.abstractmethod
407-
def sleep(self, delta: timedelta) -> RestateDurableSleepFuture:
407+
def sleep(self, delta: timedelta, name: Optional[str] = None) -> RestateDurableSleepFuture:
408408
"""
409409
Suspends the current invocation for the given duration
410410
"""

python/restate/server_context.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -626,10 +626,10 @@ def run_typed(
626626
self.run_coros_to_execute[handle] = lambda : self.create_run_coroutine(handle, func, options.serde, options.max_attempts, options.max_retry_duration)
627627
return self.create_future(handle, options.serde)
628628

629-
def sleep(self, delta: timedelta) -> RestateDurableSleepFuture:
629+
def sleep(self, delta: timedelta, name: Optional[str] = None) -> RestateDurableSleepFuture:
630630
# convert timedelta to milliseconds
631631
millis = int(delta.total_seconds() * 1000)
632-
handle = self.vm.sys_sleep(millis)
632+
handle = self.vm.sys_sleep(millis, name)
633633
update_restate_context_is_replaying(self.vm)
634634
return self.create_sleep_future(handle) # type: ignore
635635

python/restate/vm.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,9 +293,9 @@ def sys_clear_all_state(self):
293293
"""Clear the state associated with the given name."""
294294
self.vm.sys_clear_all_state()
295295

296-
def sys_sleep(self, millis: int):
296+
def sys_sleep(self, millis: int, name: typing.Optional[str] = None):
297297
"""Ask to sleep for a given duration"""
298-
return self.vm.sys_sleep(millis)
298+
return self.vm.sys_sleep(millis, name)
299299

300300
def sys_call(self,
301301
service: str,

src/lib.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -439,14 +439,15 @@ impl PyVM {
439439
fn sys_sleep(
440440
mut self_: PyRefMut<'_, Self>,
441441
millis: u64,
442+
name: Option<String>
442443
) -> Result<PyNotificationHandle, PyVMError> {
443444
let now = SystemTime::now()
444445
.duration_since(SystemTime::UNIX_EPOCH)
445446
.expect("Duration since unix epoch cannot fail");
446447
self_
447448
.vm
448449
.sys_sleep(
449-
String::default(),
450+
name.unwrap_or_default(),
450451
now + Duration::from_millis(millis),
451452
Some(now),
452453
)

0 commit comments

Comments
 (0)