[RFE] reusable agent unix socket connections for charms: python bindings
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Triaged
|
Low
|
Unassigned |
Bug Description
Some charms can get quite heavy in terms of agent socket usage.
E.g. this https:/
[pid 13985] connect(5, {sa_family=
Since all of that communication happens via hook tool binaries we can easily add 202 fork(2)s and execve(2)s.
It seems that the ecosystem is at a stage where most of the charms are written in python 2 or 3 (or utilize https:/
It would be good to avoid all of that overhead and have a python library that could be used in charm-helpers that would provide an API that would only utilize a single unix socket connection to the juju agent during the runtime of a given charm hook execution.
Changed in juju: | |
status: | New → Triaged |
importance: | Undecided → Wishlist |
I don't think it would be particularly hard. The existing API on the socket
is essentially just passing the []string of CLI args. It should mostly be
just a change to charmhelpers to maintain a socket connection and send the
requests.
That said, it may not be possible to pipeline the requests today. It might
require reconnecting to issue a new request. But it would avoid to fork
overhead
John
=:->
On Mon, May 14, 2018, 01:35 Tim Penhey <email address hidden> wrote:
> ** Changed in: juju /bugs.launchpad .net/bugs/ 1770703 /bugs.launchpad .net/juju/ +bug/1770703/ +subscriptions
> Status: New => Triaged
>
> ** Changed in: juju
> Importance: Undecided => Wishlist
>
> --
> You received this bug notification because you are subscribed to juju.
> Matching subscriptions: juju bugs
> https:/
>
> Title:
> [RFE] reusable agent unix socket connections for charms: python
> bindings
>
> To manage notifications about this bug go to:
> https:/
>