[OmniOS-discuss] pkglint: Python 2.7 MemoryError

Andries Annema an3s.annema at gmail.com
Mon Sep 4 18:17:36 UTC 2017

Finally found the time to solve this issue. And actually, it is a little 
embarrassing. Category "user error".

Anyway, for the record, here is the cause and the solution.

While I did give the VM 1, 2 and even 4 GB of RAM to play with, I tend 
to deploy my zones with a memory cap.
In this case, I had this zone set to only use 256MB which was clearly 
too little. But, when I increased RAM to the VM, I forgot to also 
increase the memory cap on the zone.... D'oh!
Increased it to 512MB and bam! No "MemoryError" anymore whatsoever.


On 2017-07-13 19:41, Andries Annema wrote:
> Hi guys,
> I've got a freshly installed r151022 VM here (under VMWare 
> Workstation) to fiddle around a bit. Very clean, no extra packages 
> installed yet, not even NFS- or SMB-shares. Only two non-global zones: 
> one to host a repository and one as build environment for some 
> packages I use myself.
> I have done all this on r151014 machines (VM/test as well as 
> physical/production) as well, but have never bumped into the error I'm 
> getting now.
> Not sure if it is package-specific or more of a general error - I 
> assume the latter - but for completeness sake, I'm trying to put 
> Znapzend 0.17.0 into a neat IPS packages.
> .configure, gmake, gmake install, as well as creating the SMF method 
> and manifest files, and the IPS package manifest go just like I got 
> before on r151014, but now on r151022 the "pkglint" process fails.
> This is what it throws at me:
> ==begin quote==
> builder at vm09ngz02build:/tank/build/1_scratch$ sudo pkglint -c 
> ./lint-cache -r http://<ip-of-local-ips-repo> znapzend.p5m.3.res
> Lint engine setup...
> Ignoring -r option, existing image found.
> Lint setup 3                               1485/1838Traceback (most 
> recent call last):
>   File "/usr/bin/pkglint", line 317, in <module>
>     __ret = main_func()
>   File "/usr/bin/pkglint", line 148, in main_func
>     release=opts.release)
>   File "/usr/lib/python2.7/vendor-packages/pkg/lint/engine.py", line 
> 607, in setup
>     checker.startup(self)
>   File 
> "/usr/lib/python2.7/vendor-packages/pkg/lint/pkglint_action.py", line 
> 174, in startup
>     seed_dict(manifest, "path", self.ref_paths)
>   File 
> "/usr/lib/python2.7/vendor-packages/pkg/lint/pkglint_action.py", line 
> 126, in seed_dict
>     for action in mf_gen(atype):
>   File 
> "/usr/lib/python2.7/vendor-packages/pkg/lint/pkglint_action.py", line 
> 123, in mf_gen
>     for a in mf.gen_actions():
>   File "/usr/lib/python2.7/vendor-packages/pkg/manifest.py", line 
> 1898, in gen_actions
>   File "/usr/lib/python2.7/vendor-packages/pkg/manifest.py", line 
> 1563, in __load
>     self.set_content(excludes=self.excludes, pathname=self.pathname)
>   File "/usr/lib/python2.7/vendor-packages/pkg/manifest.py", line 
> 1052, in set_content
>     self.add_action(action, excludes)
>   File "/usr/lib/python2.7/vendor-packages/pkg/manifest.py", line 
> 1094, in add_action
>     self.actions.append(action)
> MemoryError
> Error:
> This is an internal error in pkg(5) version 1493165709.  Please log a
> Service Request about this issue including the information above and this
> message.
> ==end quote==
> Any ideas? Am I doing something wrong or is there a bug in Python 2.7 
> or even pkg(5)?
> Assuming it simply had not enough memory to get the job done, I tried 
> increasing the VM's assigned memory from 1 to 2, even to 4GB. But that 
> didn't help.
> This proves I'm still a novice on compiling and maintaining 
> packages... *sigh*
> Anyway, any hints appreciated! Tnx.
> Regards,
> Andries

More information about the OmniOS-discuss mailing list