HI,
*Regards,*
*Shani Leviim*
On Tue, Apr 10, 2018 at 5:32 PM, Nir Soffer <nsoffer(a)redhat.com> wrote:
On Tue, Apr 10, 2018 at 5:21 PM Shani Leviim
<sleviim(a)redhat.com> wrote:
> Hi,
>
> Yes, I did clean the root directory but it didn't solve the issue.
> I'm currently running the tests on fedora27, using python version 2.1.14.
>
> Thanks to Dan's help, it seems that we found the root cause:
>
> I had 2 pickle files under /var/cache/vdsm/schema: vdsm-api.pickle and
> vdsm-events.pickle.
> Removing them and re-running the tests using make check was successfully
> completed.
>
How did you have cached schema under /var/run? This directory is owned by
root.
Are you running the tests as root?
No, I'm running the tests over my laptop using my user.
This sounds like a bug in the code using the pickled schema. The pickled
should not
be used if the timestamp of the pickle do not match the timestamp of the
source.
There's a suspect that there's a different encoding for python 2 and
python 3.
While I checnged "with open(pickle_path) as f:" to "with
open(pickle_path,'rb') as f: " (I was inspiered by [1]),
the make check seems to complete successfully.
[1]
https://stackoverflow.com/questions/28218466/unpickling-a-python-2-object...
Also in make check, we should not use host schema cache, but local
schema
cache
generated by running "make".
Nir