On Wed, Sep 23, 2020 at 10:21:47AM +0200, Jan Tluka wrote:
> Mon, Sep 21, 2020 at 08:49:49PM CEST, pgagne@redhat.com wrote:
> >From: Perry Gagne <pgagne@redhat.com>
> >
> >Had to exclude args since they might contain Device objects (ex. when creating a team device)
> >
> >I have a couple ideas for a more thorough approch here, but whated to commit this right away to unblock
> >testing since it might cause beaker jobs to fail.
> >
> >Signed-off-by: Perry Gagne <pgagne@redhat.com>
> >---
> > lnst/Controller/RecipeResults.py | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> >diff --git a/lnst/Controller/RecipeResults.py b/lnst/Controller/RecipeResults.py
> >index 941ea8d..c2e2c3e 100644
> >--- a/lnst/Controller/RecipeResults.py
> >+++ b/lnst/Controller/RecipeResults.py
> >@@ -183,6 +183,11 @@ class DeviceMethodCallResult(DeviceConfigResult):
> > ),
> > )
> >
> >+ def __getstate__(self):
> >+ state = super(DeviceMethodCallResult, self).__getstate__()
> >+ # Remove things that can't be pickled
> >+ state['_args'] = None # Could be device object (ex. port of team device).
> >+ return state
> >
> > class DeviceAttrSetResult(DeviceConfigResult):
> > def __init__(self, success, device, attr_name, value, old_value):
> >--
> >2.26.2
> >_______________________________________________
> >LNST-developers mailing list -- lnst-developers@lists.fedorahosted.org
> >To unsubscribe send an email to lnst-developers-leave@lists.fedorahosted.org
> >Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> >List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> >List Archives: https://lists.fedorahosted.org/archives/list/lnst-developers@lists.fedorahosted.org
>
> Hi Perry, have you tested this in a Beaker run? Does it resolve the issue in your runs?
>
> -Jan
> _______________________________________________
> LNST-developers mailing list -- lnst-developers@lists.fedorahosted.org
> To unsubscribe send an email to lnst-developers-leave@lists.fedorahosted.org
> Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives: https://lists.fedorahosted.org/archives/list/lnst-developers@lists.fedorahosted.org
Yeah, I'm a little worried about just simply blinding out the value of
an entire list of arguments due to a single item being unpicklable.
At the same time I think this could also appear in DeviceAttrSetResult.
Wouldn't it be better to just make the RemoteDevice class picklable
itself and leave it included?
-Ondrej