[Scons-users] scons-local-2.5.1 build and clean shows random failure

Hua Yanghao huayanghao at gmail.com
Fri Jul 21 18:28:20 EDT 2017


hua at grass:~ $ python --version
Python 2.7.13
hua at grass:~ $ lsb_release -a
LSB Version: core-9.20160110ubuntu5-amd64:core-9.20160110ubuntu5-noarch:security-9.20160110ubuntu5-amd64:security-9.20160110ubuntu5-noarch
Distributor ID: Ubuntu
Description: Ubuntu 17.04
Release: 17.04
Codename: zesty
hua at grass:~ $

I attached the taskmastertrace log here.

--tree=prune shows the same result:
hua at grass:~/git/usw $ tools/scons -j8 --tree=prune -c
--taskmastertrace=test.log config=linux64_full.py
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Cleaning targets ...
scons: done cleaning targets.

scons: *** Found dependency cycle(s):
  Internal Error: no cycle found for node output/linux64_full
(<SCons.Node.FS.Dir object at 0x55d1fef0ffe0>) in state pending

File "/home/hua/git/usw/tools/scons-local-2.5.1/SCons/Taskmaster.py",
line 1043, in cleanup

On Sat, Jul 22, 2017 at 12:03 AM, Bill Deegan <bill at baddogconsulting.com> wrote:
> Which version of Python?
> What operating system? (mac, linux, windows?)
>
> Do you have any custom Builders?
>
> Try using
> --taskmastertrace=file
>
> Prints trace information to the specified file about how the internal
> Taskmaster object evaluates and controls the order in which Nodes are built.
> A file name of - may be used to specify the standard output.
>
> And pastebin the output.
>
> Also anything unusual in --tree=prune ?
>
> -Bill
>
>
> On Fri, Jul 21, 2017 at 5:17 PM, Hua Yanghao <huayanghao at gmail.com> wrote:
>>
>> Dear Scons User,
>> I am recently experiencing some random failures in both scons build
>> and scons clean (-c).
>>
>> Unfortunately the project has more than 2000 .c/.h files and I cannot
>> create a minimal project to reproduce this issue.
>>
>> Error message: (scons -c)
>> Removed output/linux64_full/libusw.a
>> Removed output/linux64_full/cmdlist.txt
>> scons: done cleaning targets.
>>
>> scons: *** Found dependency cycle(s):
>>   Internal Error: no cycle found for node output/linux64_full
>> (<SCons.Node.FS.Dir object at 0x5630bcf78c60>) in state pending
>>
>> File "/home/hua/git/usw/tools/scons-local-2.5.1/SCons/Taskmaster.py",
>> line 1043, in cleanup
>>
>> End of error message.
>>
>> This issue can be reproduced one out of five runs, could happen in
>> both scons build and scons clean.
>> This issue happens *only* with parallel builds (-j8), and cannot
>> reproduce with single thread build.
>> The project uses scons VariantDir() and many custom builders.
>>
>> In file SCons/Taskmaster.py, if I simply add a "return" on line 1033,
>> the problem cannot be reproduced anymore, and builds are fine all the
>> time (checked many dozens of times):
>> 1033         return # <--------- This line "fixed" the issue ;-)
>> 1034         desc = 'Found dependency cycle(s):\n'
>> 1035         for node, cycle in nclist:
>> 1036             if cycle:
>> 1037                 desc = desc + "  " + " -> ".join(map(str, cycle)) +
>> "\n"
>> 1038             else:
>> 1039                 desc = desc + \
>> 1040                     "  Internal Error: no cycle found for node %s
>> (%s) in state %s\n" %  \
>> 1041                     (node, repr(node), StateString[node.get_state()])
>> 1042
>> 1043         raise SCons.Errors.UserError(desc)
>>
>> Does anyone had similar experience? Is scons over-checking something
>> and made a false alarm?
>> I am about to promote scons to a much wider audience but this issue
>> really makes me a little bit nervous.
>>
>> Thanks a lot for your help,
>> Yanghao
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
>
>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.log
Type: text/x-log
Size: 333043 bytes
Desc: not available
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20170722/1c2a0875/attachment-0001.bin>


More information about the Scons-users mailing list