Ticket #235 (closed enhancement: fixed)
Frameworkd blocks while
| Reported by: | beniwtv@… | Owned by: | mickey |
|---|---|---|---|
| Priority: | minor | Milestone: | milestone5 |
| Component: | framework/oeventsd | Version: | milestone4 |
| Keywords: | Cc: |
Description
I have a simple python script, which is executed by the oeventsd daemon when a IdleState?() occurs (defined via rules.yaml).
Within the script, I would like to ask frameworkd about some states of the battery, but the d-bus call fails with:
"dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply?: Did not receive a reply." cli-frameworkd also gets no replies if this happens.
My guess is that frameworkd waits for the command to finish, and thus can't receive any d-bus calls.
I tried adding a & after the command to no avail. After the timeout, frameworkd continues as expected, and other clients, such as cli-frameworkd get replies again.
We need a way for frameworkd to execute commands in the background to prevent blocking the whole thing if a command takes longer than expected.
Benedikt
Change History
comment:1 Changed 3 years ago by mickey
- Status changed from new to assigned
- Owner changed from jluebbe to mickey
- Milestone set to milestone5
comment:2 Changed 3 years ago by mickey
- Status changed from assigned to closed
- Resolution set to fixed
The CommandAction? will now spawn processes asynchronous as of [41216b7057ec7b3aa751caaacf0f7328a49f29f5].

I agree.