From mikeb at redhat.com Mon Jun 1 05:06:30 2009 From: mikeb at redhat.com (Mike Bonnet) Date: Mon, 01 Jun 2009 01:06:30 -0400 Subject: How to remove the large directory after build ? In-Reply-To: <426c385a0905301905u3cee67d1m98e2e099559fd4d4@mail.gmail.com> References: <426c385a0905301905u3cee67d1m98e2e099559fd4d4@mail.gmail.com> Message-ID: <4A2361D6.4050501@redhat.com> ?? wrote: > Hello,everybody! > > My koji server has setup ok. but the mock dir is more and more large. How to > remove it ? > I mean if koji has this feature,I doesn't to do it myself. Is anyone can > help me ? > > my mock directory info : > ------------------------------------ > 651M gtes11.2-build-10-9 > 18M gtes11.2-build-13-10 > 5.6M gtes11.2-build-15-15 > 549M gtes11.2-build-1-6 > 5.5M gtes11.2-build-16-15 > 18M gtes11.2-build-18-18 > 18M gtes11.2-build-19-18 > 579M gtes11.2-build-21-20 > 560M gtes11.2-build-22-20 > 3.5G gtes11.2-build-23-26 > 548M gtes11.2-build-2-6 > 567M gtes11.2-build-3-6 > 583M gtes11.2-build-5-9 > 562M gtes11.2-build-6-9 > 670M gtes11.2-build-9-9 > 6.2M gtes11.3-build-24-28 > 6.1M gtes11.3-build-25-28 > 637M gtes11.3-build-26-30 > 609M gtes11.3-build-28-30 > 3.5G gtes11.3-build-30-30 > 3.0G gtes11.3-build-31-30 > 1.8G gtes11.3-build-32-32 > 1.8G gtes11.3-build-34-32 > 583M gtes11.3-build-35-33 > 562M gtes11.3-build-37-33 > 888M gtes11.3-build-39-34 > 852M gtes11.3-build-40-34 > 408M moblin2-build-41-38 > 417M moblin2-build-42-39 > ================================== kojid manages the cleanup up the /var/lib/mock directory for builds it runs. Buildroots for successful builds will be cleaned up almost immediately. Buildroots for unsuccessful builds will be cleaned up after 4 hours, to give you a chance to debug the failure or copy relevant data out of the buildroot for later analysis. From lixiao-a at 163.com Mon Jun 1 09:12:44 2009 From: lixiao-a at 163.com (lixiao-a) Date: Mon, 1 Jun 2009 17:12:44 +0800 (CST) Subject: No child processes Message-ID: <25854944.369191243847564799.JavaMail.coremail@bj163app21.163.com> I have copied four virtual machines to the server from my PC,but it shows this error.425 build (dist-kylin, system-config-network-1.3.99-TJ.src.rpm): open (kojid) -> FAILED: Fault: Please help me. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikem at redhat.com Mon Jun 1 20:10:34 2009 From: mikem at redhat.com (Mike McLean) Date: Mon, 01 Jun 2009 16:10:34 -0400 Subject: No child processes In-Reply-To: <25854944.369191243847564799.JavaMail.coremail@bj163app21.163.com> References: <25854944.369191243847564799.JavaMail.coremail@bj163app21.163.com> Message-ID: <4A2435BA.2060201@redhat.com> lixiao-a wrote: > File "/usr/sbin/kojid", line 2009, in handler > broot.init()\n File "/usr/sbin/kojid", line 467, in init > rv = self.mock([\'--init\'])\n File "/usr/sbin/kojid", line 389, in mock > status = os.waitpid(pid, os.WNOHANG) > OSError: [Errno 10] No child processes\n' It looks like the mock subprocess is dying before kojid can wait on it. Normally mock should never exit that fast, though we should probably handle that error a little more informatively. Try running mock manually on your build system to see if you can replicate the error that way. You might also try running kojid in the foreground (--fg option) in order to see the output from mock. From lijian.gnu at gmail.com Tue Jun 2 02:15:28 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Tue, 2 Jun 2009 10:15:28 +0800 Subject: How to remove the large directory after build ? In-Reply-To: <4A2361D6.4050501@redhat.com> References: <426c385a0905301905u3cee67d1m98e2e099559fd4d4@mail.gmail.com> <4A2361D6.4050501@redhat.com> Message-ID: <426c385a0906011915i37501191qc7e024951e597d1d@mail.gmail.com> Now ,the directory is: ----------------------------------------- [root at localhost mock]# du -hs * 651M gtes11.2-build-10-9 18M gtes11.2-build-13-10 5.6M gtes11.2-build-15-15 549M gtes11.2-build-1-6 5.5M gtes11.2-build-16-15 18M gtes11.2-build-18-18 18M gtes11.2-build-19-18 579M gtes11.2-build-21-20 560M gtes11.2-build-22-20 3.5G gtes11.2-build-23-26 548M gtes11.2-build-2-6 567M gtes11.2-build-3-6 583M gtes11.2-build-5-9 562M gtes11.2-build-6-9 670M gtes11.2-build-9-9 6.2M gtes11.3-build-24-28 6.1M gtes11.3-build-25-28 637M gtes11.3-build-26-30 609M gtes11.3-build-28-30 3.5G gtes11.3-build-30-30 3.0G gtes11.3-build-31-30 1.8G gtes11.3-build-32-32 1.8G gtes11.3-build-34-32 583M gtes11.3-build-35-33 562M gtes11.3-build-37-33 888M gtes11.3-build-39-34 852M gtes11.3-build-40-34 408M moblin2-build-41-38 417M moblin2-build-42-39 539M moblin2-build-43-39 ========================== My builder is ok: -------------------------------------------------------------------------------- [root at localhost mock]# koji list-hosts Hostname Enb Rdy Load/Cap Arches Last Update kojibuilder1 N N 0.0/2.0 i386,x86_64 2009-05-25 19:08:25 kojibuilder2 Y Y 0.0/2.0 ia64 2009-05-29 14:18:59 kojibuilder3 Y Y 0.0/2.0 x86_64,i386 2009-06-02 10:09:00 ============================================================== Why ? Because I use a special disk space,and I use Selinux, So I modified the /var/lib/mock to /dist/mock on kojihub and kojiweb and kojibuilder3 host. but the kojibuilder2's mock directory is /var/lib/mock ,a link to /dist/mock on it's host. the kojihub and kojiweb and kojibuilder3's /mnt/koji directory is modified to /data/koji also . but the other kojibuilder*'s directory is /mnt/koji by nfs mount. Why ? It isn't change or removed after 1 days. Thanks! 2009/6/1 Mike Bonnet > ?? wrote: > >> Hello,everybody! >> >> My koji server has setup ok. but the mock dir is more and more large. How >> to >> remove it ? >> I mean if koji has this feature,I doesn't to do it myself. Is anyone can >> help me ? >> >> my mock directory info : >> ------------------------------------ >> 651M gtes11.2-build-10-9 >> 18M gtes11.2-build-13-10 >> 5.6M gtes11.2-build-15-15 >> 549M gtes11.2-build-1-6 >> 5.5M gtes11.2-build-16-15 >> 18M gtes11.2-build-18-18 >> 18M gtes11.2-build-19-18 >> 579M gtes11.2-build-21-20 >> 560M gtes11.2-build-22-20 >> 3.5G gtes11.2-build-23-26 >> 548M gtes11.2-build-2-6 >> 567M gtes11.2-build-3-6 >> 583M gtes11.2-build-5-9 >> 562M gtes11.2-build-6-9 >> 670M gtes11.2-build-9-9 >> 6.2M gtes11.3-build-24-28 >> 6.1M gtes11.3-build-25-28 >> 637M gtes11.3-build-26-30 >> 609M gtes11.3-build-28-30 >> 3.5G gtes11.3-build-30-30 >> 3.0G gtes11.3-build-31-30 >> 1.8G gtes11.3-build-32-32 >> 1.8G gtes11.3-build-34-32 >> 583M gtes11.3-build-35-33 >> 562M gtes11.3-build-37-33 >> 888M gtes11.3-build-39-34 >> 852M gtes11.3-build-40-34 >> 408M moblin2-build-41-38 >> 417M moblin2-build-42-39 >> ================================== >> > > kojid manages the cleanup up the /var/lib/mock directory for builds it > runs. Buildroots for successful builds will be cleaned up almost > immediately. Buildroots for unsuccessful builds will be cleaned up after 4 > hours, to give you a chance to debug the failure or copy relevant data out > of the buildroot for later analysis. > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikem at redhat.com Tue Jun 2 22:18:10 2009 From: mikem at redhat.com (Mike McLean) Date: Tue, 02 Jun 2009 18:18:10 -0400 Subject: How to remove the large directory after build ? In-Reply-To: <426c385a0906011915i37501191qc7e024951e597d1d@mail.gmail.com> References: <426c385a0905301905u3cee67d1m98e2e099559fd4d4@mail.gmail.com> <4A2361D6.4050501@redhat.com> <426c385a0906011915i37501191qc7e024951e597d1d@mail.gmail.com> Message-ID: <4A25A522.7000900@redhat.com> ?? wrote: > Now ,the directory is: > ----------------------------------------- > [root at localhost mock]# du -hs * > 651M gtes11.2-build-10-9 > 18M gtes11.2-build-13-10 > 5.6M gtes11.2-build-15-15 > 549M gtes11.2-build-1-6 > 5.5M gtes11.2-build-16-15 > 18M gtes11.2-build-18-18 > 18M gtes11.2-build-19-18 Due to a potentially dangerous bug in rpmlib [1], kojid removes the mockdir directories in two stages. First the buildroot (e.g. gtes11.2-build-16-15/root)is cleared of content, but the directory itself (as well the mock results dir) remains. This clearing occurs almost immediately after most builds, but is delayed four hours for failed builds. After 24 hours, the entire mock directory for the chroot is removed. This allows any stray rpm transactions plenty of time to exit. This may seem like an extreme wait, but the consequences of triggering the rpm bug are very, very bad. [1] https://bugzilla.redhat.com/show_bug.cgi?id=192153 It appears that at least some of these directories (e.g. the 18M ones) are still in that 24 hour wait. As for the others, I cannot be sure from this small amount of data. ... > Why ? Because I use a special disk space,and I use Selinux, So I modified > the /var/lib/mock to /dist/mock on kojihub and kojiweb and kojibuilder3 > host. but the kojibuilder2's mock directory is /var/lib/mock ,a link to > /dist/mock on it's host. > > the kojihub and kojiweb and kojibuilder3's /mnt/koji directory is modified > to /data/koji also . but the other kojibuilder*'s directory is /mnt/koji by > nfs mount. > > Why ? It isn't change or removed after 1 days. As pointed out above, it is normal for koji's mock directories to survive (in a stripped form) for up to 24 hours. If the problem persists, I recommend cranking up the debugging on kojid and watching the logs (look for lines containing rootdir or buildroot). From lijian.gnu at gmail.com Wed Jun 3 02:21:46 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Wed, 3 Jun 2009 10:21:46 +0800 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! Message-ID: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> My koji server have kojihub,kojiweb,kojira,kojid, When I modified the server ip from 172.16.70.249 to 172.16.70.33 . I modified the kojira,kojid,kojihub,kojiweb's ip info . But the yum also use 172.16.70.249 . I already "koji regen-repo" also. --------------------------- /usr/bin/yum --installroot /dist/mock/moblin2-build-55-45/root/ groupinstall build ... udev i586 136-22.1.moblin2 build 337 k unzip i586 5.52-12.119.moblin2 build 138 k usleep i586 1-1.43.moblin2 build 5.7 k util-linux-ng i586 2.14.1-11.26.moblin2 build 2.0 M zlib i586 1.2.3-29.4.moblin2 build 48 k Transaction Summary ============================================================================= Install 105 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 84 M http://172.16.70.249/packages/bash/3.2/29.3.moblin2/i586/bash-3.2-29.3.moblin2.i586.rpm: [Errno 4] IOError: Trying other mirror. http://172.16.70.249/packages/less/418/9.14.moblin2/i586/less-418-9.14.moblin2.i586.rpm: [Errno 4] IOError: Trying other mirror. ========================== Did anyone can help me ? Thanks for you help! -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From lijian.gnu at gmail.com Wed Jun 3 05:24:48 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Wed, 3 Jun 2009 13:24:48 +0800 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! In-Reply-To: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> References: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> Message-ID: <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> I've solv this probole. the /usr/sbin/kojid have following code: ---------------------------------- 2584 #cmd.append('--update') 2585 #if options.createrepo_skip_stat: 2586 # cmd.append('--skip-stat') ============================== I commented it , so the createrepo run as follow (see createrepo.log): ------------------------------- $ /usr/bin/createrepo -vd -o /tmp/koji/tasks/273/273/repo \ -i /data/koji/repos/moblin2-build/49/i386/pkglist \ -u http://172.16.70.33/packages \ -g /data/koji/repos/moblin2-build/49/groups/comps.xml \ /data/koji/packages/ ======================= The above command has no "--update --skip_stat",and now looks like ok! I'll recomment the three lines later. Thanks, 2009/6/3 ?? > My koji server have kojihub,kojiweb,kojira,kojid, When I modified the > server ip from 172.16.70.249 to 172.16.70.33 . I modified the > kojira,kojid,kojihub,kojiweb's ip info . But the yum also use 172.16.70.249 > . I already "koji regen-repo" also. > > --------------------------- > /usr/bin/yum --installroot /dist/mock/moblin2-build-55-45/root/ > groupinstall build > ... > udev i586 136-22.1.moblin2 build 337 > k > unzip i586 5.52-12.119.moblin2 build > 138 k > usleep i586 1-1.43.moblin2 build 5.7 > k > util-linux-ng i586 2.14.1-11.26.moblin2 build > 2.0 M > zlib i586 1.2.3-29.4.moblin2 build > 48 k > > Transaction Summary > > ============================================================================= > Install 105 Package(s) > Update 0 Package(s) > Remove 0 Package(s) > > Total download size: 84 M > > http://172.16.70.249/packages/bash/3.2/29.3.moblin2/i586/bash-3.2-29.3.moblin2.i586.rpm: > [Errno 4] IOError: '\xe6\xb2\xa1\xe6\x9c\x89\xe5\x88\xb0\xe4\xb8\xbb\xe6\x9c\xba\xe7\x9a\x84\xe8\xb7\xaf\xe7\x94\xb1')> > Trying other mirror. > > http://172.16.70.249/packages/less/418/9.14.moblin2/i586/less-418-9.14.moblin2.i586.rpm: > [Errno 4] IOError: '\xe6\x93\x8d\xe4\xbd\x9c\xe5\xb7\xb2\xe7\xbb\x8f\xe5\x9c\xa8\xe8\xbf\x9b\xe8\xa1\x8c')> > Trying other mirror. > > ========================== > > Did anyone can help me ? Thanks for you help! > > > -- > ?? > msn lijian.gnu at gmail.com > > -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixiao-a at 163.com Wed Jun 3 10:02:38 2009 From: lixiao-a at 163.com (lixiao-a) Date: Wed, 3 Jun 2009 18:02:38 +0800 (CST) Subject: Fedora-buildsys-list Digest, Vol 52, Issue 2 In-Reply-To: <20090602160010.303B361B867@hormel.redhat.com> References: <20090602160010.303B361B867@hormel.redhat.com> Message-ID: <33289263.364721244023358700.JavaMail.coremail@bj163app33.163.com> Thanks for your help ,but I still have the problem.I copied the virtual machines to a new PC.so the yum depository still visit the old IP.So the mock buildroot init has error.How to make it visit the new IP?Could you help me? -------------- next part -------------- An HTML attachment was scrubbed... URL: From lijian.gnu at gmail.com Wed Jun 3 10:55:57 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Wed, 3 Jun 2009 18:55:57 +0800 Subject: Fedora-buildsys-list Digest, Vol 52, Issue 2 In-Reply-To: <33289263.364721244023358700.JavaMail.coremail@bj163app33.163.com> References: <20090602160010.303B361B867@hormel.redhat.com> <33289263.364721244023358700.JavaMail.coremail@bj163app33.163.com> Message-ID: <426c385a0906030355i66d8ea2ata6d6786f9f58d41d@mail.gmail.com> I just solved this problem, and I send to maillist. You can search it! 2009/6/3 lixiao-a > Thanks for your help ,but I still have the problem.I copied the virtual > machines to a new PC.so the yum depository still visit the old IP.So the > mock buildroot init has error.How to make it visit the new IP?Could you help > me? > > > ------------------------------ > ?????????? > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikem at redhat.com Wed Jun 3 16:25:16 2009 From: mikem at redhat.com (Mike McLean) Date: Wed, 03 Jun 2009 12:25:16 -0400 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! In-Reply-To: <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> References: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> Message-ID: <4A26A3EC.30501@redhat.com> ?? wrote: > I've solv this probole. the /usr/sbin/kojid have following code: > ---------------------------------- > 2584 #cmd.append('--update') > 2585 #if options.createrepo_skip_stat: > 2586 # cmd.append('--skip-stat') > ============================== > > I commented it , so the createrepo run as follow (see createrepo.log): It seems a little silly to comment out code that can be disabled with a configuration option (createrepo_skip_stat). Of course, there is no option to disable the --update. When I need to force the system to regenerate repos from scratch I just expire them in the db. This works because kojid will only recycle repodata from a repo in the READY state. Anyway, to expire all current repos, I'd use this sql command: - update repo set state = 2 where state in (0, 1); You'll also need to cancel any newRepo tasks that were running beforehand. From lijian.gnu at gmail.com Thu Jun 4 01:59:37 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Thu, 4 Jun 2009 09:59:37 +0800 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! In-Reply-To: <4A26A3EC.30501@redhat.com> References: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> <4A26A3EC.30501@redhat.com> Message-ID: <426c385a0906031859g167d15f8uee0c41443af2b6c8@mail.gmail.com> Good,the method you give is simple.I'll test later.My repo table in sql now is following,Did you can tell me what's mean about state=3 ? and state=1 ,and state=2 ? Thank you very much ! I have draw a koji illustrative diagram , can you give me some advices? http://workplace.turbolinux.com.cn/attachments/120/koji%E5%8E%9F%E7%90%86%E5%9B%BE.png ** I've write many docs about install koji server and use koji,all is chinese. Can I put it on koji wiki ? https://fedoraproject.org/wiki/Talk:Koji ---------------------------------------------------- koji=> SELECT * from repo; id | create_event | tag_id | state ----+--------------+--------+------- 5 | 3848 | 2 | 3 6 | 3849 | 2 | 3 8 | 3860 | 1 | 3 7 | 3857 | 2 | 3 9 | 3861 | 2 | 3 10 | 3883 | 2 | 3 11 | 3899 | 2 | 3 12 | 3901 | 2 | 3 13 | 3982 | 2 | 3 14 | 4021 | 2 | 3 15 | 4044 | 2 | 3 16 | 4073 | 2 | 3 17 | 4117 | 2 | 3 18 | 4151 | 2 | 3 19 | 4160 | 2 | 3 20 | 4162 | 2 | 3 21 | 4189 | 2 | 3 22 | 4200 | 2 | 3 23 | 4305 | 2 | 3 24 | 4382 | 2 | 3 25 | 4431 | 2 | 3 27 | 4455 | 4 | 3 28 | 4457 | 4 | 3 29 | 4463 | 4 | 3 30 | 4494 | 4 | 3 31 | 4509 | 4 | 3 32 | 4511 | 4 | 3 33 | 4521 | 4 | 3 34 | 4531 | 4 | 3 40 | 7335 | 5 | 2 41 | 7348 | 3 | 2 42 | 7349 | 5 | 2 35 | 4540 | 4 | 3 43 | 7350 | 6 | 2 45 | 7356 | 6 | 2 46 | 7369 | 6 | 2 44 | 7355 | 4 | 2 47 | 7372 | 6 | 2 48 | 7373 | 4 | 2 49 | 7376 | 6 | 2 52 | 7392 | 6 | 2 56 | 7401 | 6 | 2 50 | 7379 | 4 | 2 51 | 7386 | 2 | 1 26 | 4441 | 2 | 3 53 | 7394 | 6 | 2 54 | 7396 | 6 | 2 57 | 7405 | 6 | 2 59 | 7424 | 4 | 1 55 | 7400 | 6 | 2 36 | 7290 | 6 | 3 37 | 7292 | 6 | 3 38 | 7318 | 6 | 3 39 | 7323 | 6 | 3 58 | 7410 | 6 | 2 61 | 7443 | 6 | 1 60 | 7441 | 6 | 2 (57 rows) ================================ 2009/6/4 Mike McLean > ?? wrote: > >> I've solv this probole. the /usr/sbin/kojid have following code: >> ---------------------------------- >> 2584 #cmd.append('--update') >> 2585 #if options.createrepo_skip_stat: >> 2586 # cmd.append('--skip-stat') >> ============================== >> >> I commented it , so the createrepo run as follow (see createrepo.log): >> > > It seems a little silly to comment out code that can be disabled with a > configuration option (createrepo_skip_stat). Of course, there is no option > to disable the --update. > > When I need to force the system to regenerate repos from scratch I just > expire them in the db. This works because kojid will only recycle repodata > from a repo in the READY state. Anyway, to expire all current repos, I'd use > this sql command: > - update repo set state = 2 where state in (0, 1); > You'll also need to cancel any newRepo tasks that were running beforehand. > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From mikem at redhat.com Thu Jun 4 18:29:20 2009 From: mikem at redhat.com (Mike McLean) Date: Thu, 04 Jun 2009 14:29:20 -0400 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! In-Reply-To: <426c385a0906031859g167d15f8uee0c41443af2b6c8@mail.gmail.com> References: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> <4A26A3EC.30501@redhat.com> <426c385a0906031859g167d15f8uee0c41443af2b6c8@mail.gmail.com> Message-ID: <4A281280.9040504@redhat.com> ?? wrote: > Good,the method you give is simple.I'll test later.My repo table in sql now > is following,Did you can tell me what's mean about state=3 ? and state=1 > ,and state=2 ? from koji/__init__.py: REPO_STATES = Enum(( 'INIT', 'READY', 'EXPIRED', 'DELETED', 'PROBLEM', )) So 0 = INIT, 1 = READY, 2 = EXPIRED, 3 = DELETED > Thank you very much ! I have draw a koji illustrative diagram , can you give > me some advices? > > http://workplace.turbolinux.com.cn/attachments/120/koji%E5%8E%9F%E7%90%86%E5%9B%BE.png This link prompts me for a password From dan at danny.cz Thu Jun 4 20:34:34 2009 From: dan at danny.cz (Dan =?ISO-8859-1?Q?Hor=E1k?=) Date: Thu, 04 Jun 2009 22:34:34 +0200 Subject: lower N-V-R used in buildroot Message-ID: <1244147674.3999.213.camel@eagle.danny.cz> Hi, in koji for Fedora/s390x I have 2 builds for wxGTK package https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 wxGTK-2.8.9-4.fc11 wxGTK-2.8.10-1.fc11 the higher NVR build is older but the lower NVR is used in the buildroot used to build a package (like wxPython) that requires wxGTK https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 Could someone explain me what's wrong? Thanks Dan From skvidal at fedoraproject.org Thu Jun 4 20:43:27 2009 From: skvidal at fedoraproject.org (Seth Vidal) Date: Thu, 4 Jun 2009 16:43:27 -0400 (EDT) Subject: lower N-V-R used in buildroot In-Reply-To: <1244147674.3999.213.camel@eagle.danny.cz> References: <1244147674.3999.213.camel@eagle.danny.cz> Message-ID: On Thu, 4 Jun 2009, Dan Hor?k wrote: > Hi, > > in koji for Fedora/s390x I have 2 builds for wxGTK package > > https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 > > wxGTK-2.8.9-4.fc11 > wxGTK-2.8.10-1.fc11 > > the higher NVR build is older > > but the lower NVR is used in the buildroot used to build a package (like > wxPython) that requires wxGTK > > https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 > https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 > > Could someone explain me what's wrong? you're sure no changes to the epoch between 2.8.9 and 2.8.10? Can you provide the output of yum -d 10 resolvedep "wxGTK-devel >= 2.8.9" finally, what ver of yum? -sv From notting at redhat.com Thu Jun 4 20:50:47 2009 From: notting at redhat.com (Bill Nottingham) Date: Thu, 4 Jun 2009 16:50:47 -0400 Subject: lower N-V-R used in buildroot In-Reply-To: <1244147674.3999.213.camel@eagle.danny.cz> References: <1244147674.3999.213.camel@eagle.danny.cz> Message-ID: <20090604205046.GB29048@nostromo.devel.redhat.com> Dan Hor?k (dan at danny.cz) said: > Hi, > > in koji for Fedora/s390x I have 2 builds for wxGTK package > > https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 > > wxGTK-2.8.9-4.fc11 > wxGTK-2.8.10-1.fc11 > > the higher NVR build is older > > but the lower NVR is used in the buildroot used to build a package (like > wxPython) that requires wxGTK > > https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 > https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 > > Could someone explain me what's wrong? I think buildroot goes by "latest package tagged", not "latest NVR". Bill From mikeb at redhat.com Thu Jun 4 20:50:59 2009 From: mikeb at redhat.com (Mike Bonnet) Date: Thu, 04 Jun 2009 16:50:59 -0400 Subject: lower N-V-R used in buildroot In-Reply-To: <1244147674.3999.213.camel@eagle.danny.cz> References: <1244147674.3999.213.camel@eagle.danny.cz> Message-ID: <4A2833B3.7020703@redhat.com> Dan Hor?k wrote: > Hi, > > in koji for Fedora/s390x I have 2 builds for wxGTK package > > https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 > > wxGTK-2.8.9-4.fc11 > wxGTK-2.8.10-1.fc11 > > the higher NVR build is older > > but the lower NVR is used in the buildroot used to build a package (like > wxPython) that requires wxGTK > > https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 > https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 > > Could someone explain me what's wrong? Koji uses the "latest" package in a tag to populate the repodata/buildroots, where "latest" equals "most recently tagged". $ koji --server http://s390.koji.fedoraproject.org/kojihub list-tag-history --tag dist-f11 --package wxGTK Sun Apr 5 11:52:54 2009: Tagged wxGTK-2.8.10-1.fc11 with dist-f11 [still active] Thu Apr 9 19:08:22 2009: Tagged wxGTK-2.8.9-4.fc11 with dist-f11 [still active] wxGTK-2.8.9-4.fc11 was tagged most recently, so it's considered the "latest". To fix the issue, either untag wxGTK-2.8.9-4.fc11 or untag-and-retag wxGTK-2.8.10-1.fc11 (which would then become the "latest"). This behavior is intentional and useful, but it can cause unexpected behavior like this if you don't realize how Koji populates buildroots. From paul at city-fan.org Thu Jun 4 20:51:22 2009 From: paul at city-fan.org (Paul Howarth) Date: Thu, 4 Jun 2009 21:51:22 +0100 Subject: lower N-V-R used in buildroot In-Reply-To: <1244147674.3999.213.camel@eagle.danny.cz> References: <1244147674.3999.213.camel@eagle.danny.cz> Message-ID: <20090604215122.47d1c762@metropolis.intra.city-fan.org> On Thu, 04 Jun 2009 22:34:34 +0200 Dan Hor?k wrote: > Hi, > > in koji for Fedora/s390x I have 2 builds for wxGTK package > > https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 > > wxGTK-2.8.9-4.fc11 > wxGTK-2.8.10-1.fc11 > > the higher NVR build is older > > but the lower NVR is used in the buildroot used to build a package > (like wxPython) that requires wxGTK > > https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 > https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 > > Could someone explain me what's wrong? Doesn't koji use the latest (newest) build for a tag, regardless of NVR? I'd think the 2.8.9 build would have to be untagged for dist-f11 so that your 2.8.10 build could be used. Paul. From skvidal at fedoraproject.org Thu Jun 4 20:51:17 2009 From: skvidal at fedoraproject.org (Seth Vidal) Date: Thu, 4 Jun 2009 16:51:17 -0400 (EDT) Subject: lower N-V-R used in buildroot In-Reply-To: <4A2833B3.7020703@redhat.com> References: <1244147674.3999.213.camel@eagle.danny.cz> <4A2833B3.7020703@redhat.com> Message-ID: On Thu, 4 Jun 2009, Mike Bonnet wrote: > > Koji uses the "latest" package in a tag to populate the repodata/buildroots, > where "latest" equals "most recently tagged". > > $ koji --server http://s390.koji.fedoraproject.org/kojihub list-tag-history > --tag dist-f11 --package wxGTK > Sun Apr 5 11:52:54 2009: Tagged wxGTK-2.8.10-1.fc11 with dist-f11 [still > active] > Thu Apr 9 19:08:22 2009: Tagged wxGTK-2.8.9-4.fc11 with dist-f11 [still > active] > > wxGTK-2.8.9-4.fc11 was tagged most recently, so it's considered the "latest". > To fix the issue, either untag wxGTK-2.8.9-4.fc11 or untag-and-retag > wxGTK-2.8.10-1.fc11 (which would then become the "latest"). > > This behavior is intentional and useful, but it can cause unexpected behavior > like this if you don't realize how Koji populates buildroots. > ah ha - that would explain what was going on.. Thanks, -sv From dan at danny.cz Thu Jun 4 20:58:35 2009 From: dan at danny.cz (Dan =?ISO-8859-1?Q?Hor=E1k?=) Date: Thu, 04 Jun 2009 22:58:35 +0200 Subject: lower N-V-R used in buildroot In-Reply-To: <4A2833B3.7020703@redhat.com> References: <1244147674.3999.213.camel@eagle.danny.cz> <4A2833B3.7020703@redhat.com> Message-ID: <1244149115.3999.216.camel@eagle.danny.cz> Mike Bonnet p??e v ?t 04. 06. 2009 v 16:50 -0400: > Dan Hor?k wrote: > > Hi, > > > > in koji for Fedora/s390x I have 2 builds for wxGTK package > > > > https://s390.koji.fedoraproject.org/koji/packageinfo?packageID=7367 > > > > wxGTK-2.8.9-4.fc11 > > wxGTK-2.8.10-1.fc11 > > > > the higher NVR build is older > > > > but the lower NVR is used in the buildroot used to build a package (like > > wxPython) that requires wxGTK > > > > https://s390.koji.fedoraproject.org/koji/buildrootinfo?buildrootID=32535 > > https://s390.koji.fedoraproject.org/koji/taskinfo?taskID=74417 > > > > Could someone explain me what's wrong? > > Koji uses the "latest" package in a tag to populate the repodata/buildroots, where "latest" equals "most recently tagged". > > $ koji --server http://s390.koji.fedoraproject.org/kojihub list-tag-history --tag dist-f11 --package wxGTK > Sun Apr 5 11:52:54 2009: Tagged wxGTK-2.8.10-1.fc11 with dist-f11 [still active] > Thu Apr 9 19:08:22 2009: Tagged wxGTK-2.8.9-4.fc11 with dist-f11 [still active] > > wxGTK-2.8.9-4.fc11 was tagged most recently, so it's considered the "latest". To fix the issue, either untag wxGTK-2.8.9-4.fc11 or untag-and-retag wxGTK-2.8.10-1.fc11 (which would then become the "latest"). > > This behavior is intentional and useful, but it can cause unexpected behavior like this if you don't realize how Koji populates buildroots. Thanks, that's explains all. Dan From lijian.gnu at gmail.com Fri Jun 5 08:37:20 2009 From: lijian.gnu at gmail.com (=?GB2312?B?wO69qA==?=) Date: Fri, 5 Jun 2009 16:37:20 +0800 Subject: When I modified the koji server'ip from one to another, the yum use the old ip already! In-Reply-To: <4A281280.9040504@redhat.com> References: <426c385a0906021921i790ffae9y9437e29238b89012@mail.gmail.com> <426c385a0906022224g63d7582bke126643384a73636@mail.gmail.com> <4A26A3EC.30501@redhat.com> <426c385a0906031859g167d15f8uee0c41443af2b6c8@mail.gmail.com> <4A281280.9040504@redhat.com> Message-ID: <426c385a0906050137t11254702gcfcc3b9cbb43611c@mail.gmail.com> Thanks for your help. Sorry about the wrong url.It's our internal service. I put it here now: chinese description images: http://lh6.ggpht.com/_7pYSaZNGn90/SijV4bEsPiI/AAAAAAAAAFI/8nu2aSZfbcc/s400/koji%E5%8E%9F%E7%90%86%E5%9B%BE.png English description images: http://lh6.ggpht.com/_7pYSaZNGn90/SijXT9kmo2I/AAAAAAAAAFM/2W0kLoYuBps/koji-example-en.png 2009/6/5 Mike McLean > ?? wrote: > > Good,the method you give is simple.I'll test later.My repo table in sql > now > > is following,Did you can tell me what's mean about state=3 ? and state=1 > > ,and state=2 ? > > from koji/__init__.py: > REPO_STATES = Enum(( > 'INIT', > 'READY', > 'EXPIRED', > 'DELETED', > 'PROBLEM', > )) > > So 0 = INIT, 1 = READY, 2 = EXPIRED, 3 = DELETED > > > Thank you very much ! I have draw a koji illustrative diagram , can you > give > > me some advices? > > > > > http://workplace.turbolinux.com.cn/attachments/120/koji%E5%8E%9F%E7%90%86%E5%9B%BE.png > > This link prompts me for a password > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- ?? msn lijian.gnu at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugs.michael at gmx.net Fri Jun 5 11:55:11 2009 From: bugs.michael at gmx.net (Michael Schwendt) Date: Fri, 5 Jun 2009 13:55:11 +0200 Subject: NewRepo headache Message-ID: <20090605135511.59dc4d3a@faldor.intranet> $ koji latest-pkg dist-f12 mcs Build Tag Built by ---------------------------------------- -------------------- ---------------- mcs-0.7.1-4.fc12 dist-f12 mschwendt $ koji latest-pkg dist-f12-build mcs Build Tag Built by ---------------------------------------- -------------------- ---------------- mcs-0.7.1-4.fc12 dist-f12 mschwendt Additionally, I've waited for the NewRepo task to complete. And still the next build fails due to an unresolvable dep as it only is seeing the previous mcs package release. Is that due to mock related caches or what? How to _reliably_ wait for a new package to become available in the buildroot? From jiteshs at marvell.com Fri Jun 5 13:46:07 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Fri, 5 Jun 2009 19:16:07 +0530 Subject: mergerepos issue Message-ID: <1244209567.30358.6.camel@localhost.localdomain> Hi all, I have attached an external repo to one of my build tags. After attaching the repo, I issued a "koji regen-repo ". This is what I get: 1348/2199 - kde-l10n-Walloon-4.2.2-1.fc11.noarch 1349/2199 - kde-l10n-Lithuanian-4.2.2-1.fc11.noarch 1350/2199 - 1:perl-Error-0.17015-2.fc11.noarch Traceback (most recent call last): File "/usr/libexec/kojid/mergerepos", line 241, in main(sys.argv[1:]) File "/usr/libexec/kojid/mergerepos", line 236, in main merge.write_metadata() File "/usr/libexec/kojid/mergerepos", line 216, in write_metadata mdgen.doPkgMetadata() File "/usr/lib/python2.5/site-packages/createrepo/__init__.py", line 364, in doPkgMetadata self.writeMetadataDocs(packages) File "/usr/lib/python2.5/site-packages/createrepo/__init__.py", line 527, in writeMetadataDocs self.primaryfile.write(po.xml_dump_primary_metadata()) File "/usr/lib/python2.5/site-packages/yum/packages.py", line 1015, in xml_dump_primary_metadata msg += misc.to_unicode(self._dump_format_items()) File "/usr/lib/python2.5/site-packages/yum/packages.py", line 894, in _dump_format_items msg += self._dump_pco('provides') File "/usr/lib/python2.5/site-packages/yum/packages.py", line 919, in _dump_pco msg += pcostring UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 28: ordinal not in range(128) Unicode error? I don't get it! Any pointers? Regards, Jitesh From mikeb at redhat.com Fri Jun 5 13:54:45 2009 From: mikeb at redhat.com (Mike Bonnet) Date: Fri, 05 Jun 2009 09:54:45 -0400 Subject: NewRepo headache In-Reply-To: <20090605135511.59dc4d3a@faldor.intranet> References: <20090605135511.59dc4d3a@faldor.intranet> Message-ID: <4A2923A5.9050809@redhat.com> Michael Schwendt wrote: > $ koji latest-pkg dist-f12 mcs > Build Tag Built by > ---------------------------------------- -------------------- ---------------- > mcs-0.7.1-4.fc12 dist-f12 mschwendt > > $ koji latest-pkg dist-f12-build mcs > Build Tag Built by > ---------------------------------------- -------------------- ---------------- > mcs-0.7.1-4.fc12 dist-f12 mschwendt > > Additionally, I've waited for the NewRepo task to complete. > And still the next build fails due to an unresolvable dep as it only > is seeing the previous mcs package release. Is that due to mock related > caches or what? > > How to _reliably_ wait for a new package to become available in > the buildroot? koji wait-repo --target dist-f12 --build mcs-0.7.1-4.fc12 From jiteshs at marvell.com Fri Jun 5 15:05:34 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Fri, 5 Jun 2009 20:35:34 +0530 Subject: mergerepos issue In-Reply-To: <1244209567.30358.6.camel@localhost.localdomain> References: <1244209567.30358.6.camel@localhost.localdomain> Message-ID: <1244214334.2555.5.camel@localhost.localdomain> Aaah .. some RPMs have unicode in their 'provides' tag which causes this problem. Temporarily, I have removed those from the external repo and it works fine :) Jitesh On Fri, 2009-06-05 at 06:46 -0700, Jitesh Shah wrote: > Hi all, > I have attached an external repo to one of my build tags. After > attaching the repo, I issued a "koji regen-repo ". This is what I > get: > > 1348/2199 - kde-l10n-Walloon-4.2.2-1.fc11.noarch > 1349/2199 - kde-l10n-Lithuanian-4.2.2-1.fc11.noarch > 1350/2199 - 1:perl-Error-0.17015-2.fc11.noarch > Traceback (most recent call last): > File "/usr/libexec/kojid/mergerepos", line 241, in > main(sys.argv[1:]) > File "/usr/libexec/kojid/mergerepos", line 236, in main > merge.write_metadata() > File "/usr/libexec/kojid/mergerepos", line 216, in write_metadata > mdgen.doPkgMetadata() > File "/usr/lib/python2.5/site-packages/createrepo/__init__.py", line 364, in doPkgMetadata > self.writeMetadataDocs(packages) > File "/usr/lib/python2.5/site-packages/createrepo/__init__.py", line 527, in writeMetadataDocs > self.primaryfile.write(po.xml_dump_primary_metadata()) > File "/usr/lib/python2.5/site-packages/yum/packages.py", line 1015, in xml_dump_primary_metadata > msg += misc.to_unicode(self._dump_format_items()) > File "/usr/lib/python2.5/site-packages/yum/packages.py", line 894, in _dump_format_items > msg += self._dump_pco('provides') > File "/usr/lib/python2.5/site-packages/yum/packages.py", line 919, in _dump_pco > msg += pcostring > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 28: ordinal not in range(128) > > Unicode error? > I don't get it! > Any pointers? > > Regards, > Jitesh > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list From skvidal at fedoraproject.org Fri Jun 5 15:16:56 2009 From: skvidal at fedoraproject.org (Seth Vidal) Date: Fri, 5 Jun 2009 11:16:56 -0400 (EDT) Subject: mergerepos issue In-Reply-To: <1244214334.2555.5.camel@localhost.localdomain> References: <1244209567.30358.6.camel@localhost.localdomain> <1244214334.2555.5.camel@localhost.localdomain> Message-ID: On Fri, 5 Jun 2009, Jitesh Shah wrote: > Aaah .. some RPMs have unicode in their 'provides' tag which causes this > problem. Temporarily, I have removed those from the external repo and it > works fine :) I bet the provides did not have unicode but had random other encoding. -sv From jiteshs at marvell.com Sat Jun 6 10:52:14 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Sat, 6 Jun 2009 03:52:14 -0700 Subject: mergerepos issue In-Reply-To: References: <1244209567.30358.6.camel@localhost.localdomain> <1244214334.2555.5.camel@localhost.localdomain>, Message-ID: <91A41E78C4F4444BBD1EB4198A7B9C4F5DC05B6B24@SC-VEXCH2.marvell.com> aah... may be.. I just assumed it was unicode because it wasn't ASCII ... ignorance :) Regards, Jitesh PS: Mailing from a crappy mail client. Please ignore any formatting issues. ________________________________________ From: fedora-buildsys-list-bounces at redhat.com [fedora-buildsys-list-bounces at redhat.com] On Behalf Of Seth Vidal [skvidal at fedoraproject.org] Sent: Friday, June 05, 2009 8:46 PM To: Discussion of Fedora build system Subject: Re: mergerepos issue On Fri, 5 Jun 2009, Jitesh Shah wrote: > Aaah .. some RPMs have unicode in their 'provides' tag which causes this > problem. Temporarily, I have removed those from the external repo and it > works fine :) I bet the provides did not have unicode but had random other encoding. -sv -- Fedora-buildsys-list mailing list Fedora-buildsys-list at redhat.com https://www.redhat.com/mailman/listinfo/fedora-buildsys-list From jiteshs at marvell.com Sat Jun 6 11:37:09 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Sat, 6 Jun 2009 04:37:09 -0700 Subject: mergerepos issue In-Reply-To: <91A41E78C4F4444BBD1EB4198A7B9C4F5DC05B6B24@SC-VEXCH2.marvell.com> References: <1244209567.30358.6.camel@localhost.localdomain> <1244214334.2555.5.camel@localhost.localdomain>, , <91A41E78C4F4444BBD1EB4198A7B9C4F5DC05B6B24@SC-VEXCH2.marvell.com> Message-ID: <91A41E78C4F4444BBD1EB4198A7B9C4F5DC05B6B27@SC-VEXCH2.marvell.com> Would just like to add that createrepo/yum seem to handle the unicode/random encoding pretty well. Jitesh ________________________________________ From: fedora-buildsys-list-bounces at redhat.com [fedora-buildsys-list-bounces at redhat.com] On Behalf Of Jitesh Shah [jiteshs at marvell.com] Sent: Saturday, June 06, 2009 4:22 PM To: Discussion of Fedora build system Subject: RE: mergerepos issue aah... may be.. I just assumed it was unicode because it wasn't ASCII ... ignorance :) Regards, Jitesh PS: Mailing from a crappy mail client. Please ignore any formatting issues. ________________________________________ From: fedora-buildsys-list-bounces at redhat.com [fedora-buildsys-list-bounces at redhat.com] On Behalf Of Seth Vidal [skvidal at fedoraproject.org] Sent: Friday, June 05, 2009 8:46 PM To: Discussion of Fedora build system Subject: Re: mergerepos issue On Fri, 5 Jun 2009, Jitesh Shah wrote: > Aaah .. some RPMs have unicode in their 'provides' tag which causes this > problem. Temporarily, I have removed those from the external repo and it > works fine :) I bet the provides did not have unicode but had random other encoding. -sv -- Fedora-buildsys-list mailing list Fedora-buildsys-list at redhat.com https://www.redhat.com/mailman/listinfo/fedora-buildsys-list -- Fedora-buildsys-list mailing list Fedora-buildsys-list at redhat.com https://www.redhat.com/mailman/listinfo/fedora-buildsys-list From jiteshs at marvell.com Wed Jun 17 07:01:08 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Wed, 17 Jun 2009 12:31:08 +0530 Subject: How is average calculated? Message-ID: <1245222068.32718.10.camel@localhost.localdomain> Hi, I was wondering how the average load on a builder is calculated? I have a builder which is simply refuses to take tasks (not even one) [jitesh at fedora-arm ~]$ koji list-tasks | grep armbuilder39 (and there are about 9 tasks still queued. The other builders are busy, so they are in the FREE state) which means the builder isn't processing any task, right? now, here is kojid tail of that builder.. 2009-06-17 08:54:07,628 [INFO] koji.build.TaskManager: Not ready for task 2009-06-17 08:54:28,466 [INFO] koji.build.TaskManager: Load average 6.09 > 4.00 2009-06-17 08:54:30,365 [INFO] koji.build.TaskManager: Not ready for task 2009-06-17 08:54:50,136 [INFO] koji.build.TaskManager: Load average 6.00 > 4.00 2009-06-17 08:54:51,268 [INFO] koji.build.TaskManager: Not ready for task 2009-06-17 08:55:11,708 [INFO] koji.build.TaskManager: Load average 5.75 > 4.00 2009-06-17 08:55:13,622 [INFO] koji.build.TaskManager: Not ready for task 2009-06-17 08:55:34,318 [INFO] koji.build.TaskManager: Load average 5.85 > 4.00 2009-06-17 08:55:36,339 [INFO] koji.build.TaskManager: Not ready for task 2009-06-17 08:55:56,769 [INFO] koji.build.TaskManager: Load average 5.68 > 4.00 2009-06-17 08:55:58,507 [INFO] koji.build.TaskManager: Not ready for task How does it end up calculating 5.5+ load average when it is not even executing a single task? Regards, Jitesh From paul at city-fan.org Wed Jun 17 08:18:34 2009 From: paul at city-fan.org (Paul Howarth) Date: Wed, 17 Jun 2009 09:18:34 +0100 Subject: How is average calculated? In-Reply-To: <1245222068.32718.10.camel@localhost.localdomain> References: <1245222068.32718.10.camel@localhost.localdomain> Message-ID: <4A38A6DA.7040000@city-fan.org> On 17/06/09 08:01, Jitesh Shah wrote: > Hi, > I was wondering how the average load on a builder is calculated? > I have a builder which is simply refuses to take tasks (not even one) > > [jitesh at fedora-arm ~]$ koji list-tasks | grep armbuilder39 > > (and there are about 9 tasks still queued. The other builders are busy, > so they are in the FREE state) > > which means the builder isn't processing any task, right? > > now, here is kojid tail of that builder.. > 2009-06-17 08:54:07,628 [INFO] koji.build.TaskManager: Not ready for task > 2009-06-17 08:54:28,466 [INFO] koji.build.TaskManager: Load average 6.09> 4.00 > 2009-06-17 08:54:30,365 [INFO] koji.build.TaskManager: Not ready for task > 2009-06-17 08:54:50,136 [INFO] koji.build.TaskManager: Load average 6.00> 4.00 > 2009-06-17 08:54:51,268 [INFO] koji.build.TaskManager: Not ready for task > 2009-06-17 08:55:11,708 [INFO] koji.build.TaskManager: Load average 5.75> 4.00 > 2009-06-17 08:55:13,622 [INFO] koji.build.TaskManager: Not ready for task > 2009-06-17 08:55:34,318 [INFO] koji.build.TaskManager: Load average 5.85> 4.00 > 2009-06-17 08:55:36,339 [INFO] koji.build.TaskManager: Not ready for task > 2009-06-17 08:55:56,769 [INFO] koji.build.TaskManager: Load average 5.68> 4.00 > 2009-06-17 08:55:58,507 [INFO] koji.build.TaskManager: Not ready for task > > How does it end up calculating 5.5+ load average when it is not even > executing a single task? Load average is a function of the system as a whole, not just koji. http://en.wikipedia.org/wiki/Load_(computing) The builder must be busy doing something else. Paul. From jiteshs at marvell.com Wed Jun 17 09:39:07 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Wed, 17 Jun 2009 15:09:07 +0530 Subject: How is average calculated? In-Reply-To: <4A38A6DA.7040000@city-fan.org> References: <1245222068.32718.10.camel@localhost.localdomain> <4A38A6DA.7040000@city-fan.org> Message-ID: <1245231547.3077.1.camel@localhost.localdomain> aah! /me kills unnecessary processes on the builder it picked up new tasks! Thank you, Jitesh On Wed, 2009-06-17 at 01:18 -0700, Paul Howarth wrote: > On 17/06/09 08:01, Jitesh Shah wrote: > > Hi, > > I was wondering how the average load on a builder is calculated? > > I have a builder which is simply refuses to take tasks (not even one) > > > > [jitesh at fedora-arm ~]$ koji list-tasks | grep armbuilder39 > > > > (and there are about 9 tasks still queued. The other builders are busy, > > so they are in the FREE state) > > > > which means the builder isn't processing any task, right? > > > > now, here is kojid tail of that builder.. > > 2009-06-17 08:54:07,628 [INFO] koji.build.TaskManager: Not ready for task > > 2009-06-17 08:54:28,466 [INFO] koji.build.TaskManager: Load average 6.09> 4.00 > > 2009-06-17 08:54:30,365 [INFO] koji.build.TaskManager: Not ready for task > > 2009-06-17 08:54:50,136 [INFO] koji.build.TaskManager: Load average 6.00> 4.00 > > 2009-06-17 08:54:51,268 [INFO] koji.build.TaskManager: Not ready for task > > 2009-06-17 08:55:11,708 [INFO] koji.build.TaskManager: Load average 5.75> 4.00 > > 2009-06-17 08:55:13,622 [INFO] koji.build.TaskManager: Not ready for task > > 2009-06-17 08:55:34,318 [INFO] koji.build.TaskManager: Load average 5.85> 4.00 > > 2009-06-17 08:55:36,339 [INFO] koji.build.TaskManager: Not ready for task > > 2009-06-17 08:55:56,769 [INFO] koji.build.TaskManager: Load average 5.68> 4.00 > > 2009-06-17 08:55:58,507 [INFO] koji.build.TaskManager: Not ready for task > > > > How does it end up calculating 5.5+ load average when it is not even > > executing a single task? > > Load average is a function of the system as a whole, not just koji. > > http://en.wikipedia.org/wiki/Load_(computing) > > The builder must be busy doing something else. > > Paul. > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list From lijian.gnu at gmail.com Fri Jun 19 03:54:37 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Fri, 19 Jun 2009 11:54:37 +0800 Subject: Delete a build from a tag, How to do ? Message-ID: Hello, everyone I want to delete a build from a tag, How should I do ? example, the tag tms2.0 have following build: ------------------------------------------------- b43-fwcutter-011-5.tms2 michaelw 2009-06-19 09:52:18 complete ================================================================= I first try to delete the build from tms2.0 tag by following cmd: ---------------- # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] ================================================== Did a use a wrong api ? or did I can delete a build from a tag use kojihub api ? Must to direct do on postgresql ? Any help i'll appreciate ! Thanks, From steve at traylen.net Fri Jun 19 07:25:45 2009 From: steve at traylen.net (Steve Traylen) Date: Fri, 19 Jun 2009 09:25:45 +0200 Subject: Delete a build from a tag, How to do ? In-Reply-To: References: Message-ID: On Fri, Jun 19, 2009 at 5:54 AM, Jian Lee wrote: > > Hello, everyone > > I want to delete a build from a tag, How should I do ? > > example, the tag tms2.0 have following build: > > ------------------------------------------------- > b43-fwcutter-011-5.tms2 ?michaelw ?2009-06-19 ?09:52:18 ?complete > ================================================================= > > I first try to delete the build from tms2.0 tag by following cmd: > > ---------------- > # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 > GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] > ================================================== Jian, You can untag a build from tag. i.e koji untag-pkg tms2.0 b43-fwcutter-011-5 and then your command may work. Steve > > Did a use a wrong api ? or did I can delete a build from a tag use > kojihub api ? Must to direct do on postgresql ? > > Any help i'll appreciate ! > > Thanks, > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- Steve Traylen From jiteshs at marvell.com Fri Jun 19 09:17:55 2009 From: jiteshs at marvell.com (Jitesh Shah) Date: Fri, 19 Jun 2009 14:47:55 +0530 Subject: Delete a build from a tag, How to do ? In-Reply-To: References: Message-ID: <1245403075.18013.4.camel@localhost.localdomain> Hi, On Thu, 2009-06-18 at 20:54 -0700, Jian Lee wrote: > Hello, everyone > > I want to delete a build from a tag, How should I do ? > > example, the tag tms2.0 have following build: > > ------------------------------------------------- > b43-fwcutter-011-5.tms2 michaelw 2009-06-19 09:52:18 complete > ================================================================= > > I first try to delete the build from tms2.0 tag by following cmd: > > ---------------- > # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 > GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] > ================================================== > > Did a use a wrong api ? or did I can delete a build from a tag use > kojihub api ? Must to direct do on postgresql ? deleteBuild will still keep some data in the database. If the reason for deleting the build is so that you can build/import it again, then try using "resetBuild". It will remove all the files and rpm data and mark the build as "cancelled". (Although a quick looks suggests that it removes entries from buildroot too. So, use with care) Do correct me if I am wrong. Regards, Jitesh From mikeb at redhat.com Fri Jun 19 12:20:52 2009 From: mikeb at redhat.com (Mike Bonnet) Date: Fri, 19 Jun 2009 08:20:52 -0400 Subject: Delete a build from a tag, How to do ? In-Reply-To: <1245403075.18013.4.camel@localhost.localdomain> References: <1245403075.18013.4.camel@localhost.localdomain> Message-ID: <4A3B82A4.30700@redhat.com> Jitesh Shah wrote: > Hi, > > > On Thu, 2009-06-18 at 20:54 -0700, Jian Lee wrote: >> Hello, everyone >> >> I want to delete a build from a tag, How should I do ? >> >> example, the tag tms2.0 have following build: >> >> ------------------------------------------------- >> b43-fwcutter-011-5.tms2 michaelw 2009-06-19 09:52:18 complete >> ================================================================= >> >> I first try to delete the build from tms2.0 tag by following cmd: >> >> ---------------- >> # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 >> GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] >> ================================================== >> >> Did a use a wrong api ? or did I can delete a build from a tag use >> kojihub api ? Must to direct do on postgresql ? > > deleteBuild will still keep some data in the database. If the reason for > deleting the build is so that you can build/import it again, then try > using "resetBuild". It will remove all the files and rpm data and mark > the build as "cancelled". > > (Although a quick looks suggests that it removes entries from buildroot > too. So, use with care) > > Do correct me if I am wrong. You're correct, resetBuild is a *very* big hammer, only to be used in exceptional circumstances (I can probably count the number of times I've used it on one hand). deleteBuild is also only meant for use by the koji-gc script, and should really never be called manually. That's why neither of these methods are exposed via the koji cmd-line. If you're going to use them, think very hard about what you're doing, why you're doing it, and proceed with caution. From lijian.gnu at gmail.com Sat Jun 20 06:00:52 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Sat, 20 Jun 2009 14:00:52 +0800 Subject: Delete a build from a tag, How to do ? In-Reply-To: <4A3B82A4.30700@redhat.com> (Mike Bonnet's message of "Fri, 19 Jun 2009 08:20:52 -0400") References: <1245403075.18013.4.camel@localhost.localdomain> <4A3B82A4.30700@redhat.com> Message-ID: Mike Bonnet writes: Thanks for all of your help ! I'll try it monday , recently I'll working on merge new moblin development env to our old moblin development env, use the koji is very efficiency. > Jitesh Shah wrote: >> Hi, >> >> >> On Thu, 2009-06-18 at 20:54 -0700, Jian Lee wrote: >>> Hello, everyone >>> >>> I want to delete a build from a tag, How should I do ? >>> >>> example, the tag tms2.0 have following build: >>> >>> ------------------------------------------------- >>> b43-fwcutter-011-5.tms2 michaelw 2009-06-19 09:52:18 complete >>> ================================================================= >>> >>> I first try to delete the build from tms2.0 tag by following cmd: >>> >>> ---------------- >>> # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 >>> GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] >>> ================================================== >>> >>> Did a use a wrong api ? or did I can delete a build from a tag use >>> kojihub api ? Must to direct do on postgresql ? >> >> deleteBuild will still keep some data in the database. If the reason for >> deleting the build is so that you can build/import it again, then try >> using "resetBuild". It will remove all the files and rpm data and mark >> the build as "cancelled". >> >> (Although a quick looks suggests that it removes entries from buildroot >> too. So, use with care) >> >> Do correct me if I am wrong. > > You're correct, resetBuild is a *very* big hammer, only to be used in > exceptional circumstances (I can probably count the number of times > I've used it on one hand). deleteBuild is also only meant for use by > the koji-gc script, and should really never be called manually. > That's why neither of these methods are exposed via the koji cmd-line. > If you're going to use them, think very hard about what you're doing, > why you're doing it, and proceed with caution. > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- Jian Lee MSN : lijian.gnu at gmail.com From lijian.gnu at gmail.com Tue Jun 23 02:34:56 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Tue, 23 Jun 2009 10:34:56 +0800 Subject: How to remove the large directory after build ? In-Reply-To: <4A25A522.7000900@redhat.com> (Mike McLean's message of "Tue, 02 Jun 2009 18:18:10 -0400") References: <426c385a0905301905u3cee67d1m98e2e099559fd4d4@mail.gmail.com> <4A2361D6.4050501@redhat.com> <426c385a0906011915i37501191qc7e024951e597d1d@mail.gmail.com> <4A25A522.7000900@redhat.com> Message-ID: <63eny8xb.fsf@gmail.com> Mike McLean writes: There were much work to do recently, I haven't resolved this question. I just remove those large rootdir manually. It's too silly. :) I've see the kojid source code : ----------------------------------------------------------------------------------------- 741 #note: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=192153) 742 #If rpmlib is installing in this chroot, removing it entirely 743 #can lead to a world of hurt. 744 #We remove the rootdir contents but leave the rootdir unless it 745 #is really old 746 if age > 3600*24: 747 #dir untouched for a day 748 self.logger.info("Removing buildroot: %s" % desc) 749 if topdir and safe_rmtree(topdir, unmount=True, strict=False) != 0: 750 continue 751 #also remove the config 752 try: 753 os.unlink(data['cfg']) 754 except OSError, e: 755 self.logger.warn("%s: can't remove config: %s" % (desc, e)) 756 elif age > 120: 757 if rootdir: 758 try: 759 flist = os.listdir(rootdir) 760 except OSError, e: 761 self.logger.warn("%s: can't list rootdir: %s" % (desc, e)) 762 continue 763 if flist: 764 self.logger.info("%s: clearing rootdir" % desc) 765 for fn in flist: 766 safe_rmtree("%s/%s" % (rootdir,fn), unmount=True, strict=False) 767 else: 768 self.logger.debug("Recent buildroot: %s: %i seconds" % (desc,age)) ============================================================================================== The 3600*24 must be mean 24 hours, but the 120 mean what ? and , There are code following: ----------------------------------- 801 # see if there's a dir for the buildroot 802 vardir = "/var/lib/mock/%s" % name 803 #XXX 804 buildroots[id] = {} 805 buildroots[id]['name'] = name 806 buildroots[id]['cfg'] = fn 807 buildroots[id]['dir'] = None 808 if os.path.isdir(vardir): 809 buildroots[id]['dir'] = vardir 810 return buildroots =============================================================== I've not use the /var/lib/mock, and I's not a link to /dist/mock. My kojid.conf have following configure: -------------------------------- ; The directory root where work data can be found from the koji hub topdir=/data/koji ; The directory root for temporary storage workdir=/tmp/koji ; The directory root for mock mockdir=/dist/mock ; The user to run as when doing builds mockuser=kojibuilder ============================================== Is the /var/lib/mock must exits and point to the mockdir ? And wheather the kojid remove chrootdir use mockuser privilige ? Thanks, > ?? wrote: >> Now ,the directory is: >> ----------------------------------------- >> [root at localhost mock]# du -hs * >> 651M gtes11.2-build-10-9 >> 18M gtes11.2-build-13-10 >> 5.6M gtes11.2-build-15-15 >> 549M gtes11.2-build-1-6 >> 5.5M gtes11.2-build-16-15 >> 18M gtes11.2-build-18-18 >> 18M gtes11.2-build-19-18 > > Due to a potentially dangerous bug in rpmlib [1], kojid removes the > mockdir directories in two stages. > > First the buildroot (e.g. gtes11.2-build-16-15/root)is cleared of > content, but the directory itself (as well the mock results dir) > remains. This clearing occurs almost immediately after most builds, > but is delayed four hours for failed builds. > > After 24 hours, the entire mock directory for the chroot is removed. > This allows any stray rpm transactions plenty of time to exit. This > may seem like an extreme wait, but the consequences of triggering the > rpm bug are very, very bad. > > [1] https://bugzilla.redhat.com/show_bug.cgi?id=192153 > > It appears that at least some of these directories (e.g. the 18M ones) > are still in that 24 hour wait. As for the others, I cannot be sure > from this small amount of data. > > ... >> Why ? Because I use a special disk space,and I use Selinux, So I modified >> the /var/lib/mock to /dist/mock on kojihub and kojiweb and kojibuilder3 >> host. but the kojibuilder2's mock directory is /var/lib/mock ,a link to >> /dist/mock on it's host. >> >> the kojihub and kojiweb and kojibuilder3's /mnt/koji directory is modified >> to /data/koji also . but the other kojibuilder*'s directory is /mnt/koji by >> nfs mount. >> >> Why ? It isn't change or removed after 1 days. > > As pointed out above, it is normal for koji's mock directories to > survive (in a stripped form) for up to 24 hours. If the problem > persists, I recommend cranking up the debugging on kojid and watching > the logs (look for lines containing rootdir or buildroot). > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- Jian Lee MSN : lijian.gnu at gmail.com From lijian.gnu at gmail.com Tue Jun 23 02:40:44 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Tue, 23 Jun 2009 10:40:44 +0800 Subject: How the koji test kojibuilder* is alive ? Message-ID: <1vpby8nn.fsf@gmail.com> I've found that if a kojibuilder* is dead, The kojihub can't found that. -------------------------------- root at jianlee:~/work/koji# koji list-hosts Hostname Enb Rdy Load/Cap Arches Last Update kojibuilder1 N N 0.0/2.0 i386,x86_64 2009-06-19 10:39:12 kojibuilder2 Y Y 0.0/2.0 ia64 2009-06-17 10:41:20 kojibuilder3 Y Y 0.0/2.0 x86_64,i386 2009-06-23 10:30:32 ================================================================================== the kojibuilder2 is ia64 machine, it's last updata time is "2009-06-17 10:41:20". It's must dead now. but why the Rdy is "Y" yet ? Thanks, -- Jian Lee MSN : lijian.gnu at gmail.com From mikem at redhat.com Tue Jun 23 20:31:39 2009 From: mikem at redhat.com (Mike McLean) Date: Tue, 23 Jun 2009 16:31:39 -0400 Subject: How the koji test kojibuilder* is alive ? In-Reply-To: <1vpby8nn.fsf@gmail.com> References: <1vpby8nn.fsf@gmail.com> Message-ID: <4A413BAB.5030705@redhat.com> On 06/22/2009 10:40 PM, Jian Lee wrote: > I've found that if a kojibuilder* is dead, The kojihub can't found that. > > -------------------------------- > root at jianlee:~/work/koji# koji list-hosts > Hostname Enb Rdy Load/Cap Arches Last Update > kojibuilder1 N N 0.0/2.0 i386,x86_64 2009-06-19 10:39:12 > kojibuilder2 Y Y 0.0/2.0 ia64 2009-06-17 10:41:20 > kojibuilder3 Y Y 0.0/2.0 x86_64,i386 2009-06-23 10:30:32 > ================================================================================== > > the kojibuilder2 is ia64 machine, it's last updata time is "2009-06-17 > 10:41:20". It's must dead now. but why the Rdy is "Y" yet ? Because the last time the host updated it set its ready status to true. This value is only set to false when the host is up and running but too busy to take a job. From lijian.gnu at gmail.com Wed Jun 24 01:42:43 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Wed, 24 Jun 2009 09:42:43 +0800 Subject: How the koji test kojibuilder* is alive ? In-Reply-To: <4A413BAB.5030705@redhat.com> (Mike McLean's message of "Tue, 23 Jun 2009 16:31:39 -0400") References: <1vpby8nn.fsf@gmail.com> <4A413BAB.5030705@redhat.com> Message-ID: Mike McLean writes: I know that if kojibuilder* doesn't talk to kojihub, the kojihub counldn't know if the kojibuilder* is alive. Maybe the kojihub can programming to find the kojibuilder*. Thanks, > On 06/22/2009 10:40 PM, Jian Lee wrote: >> I've found that if a kojibuilder* is dead, The kojihub can't found that. >> >> -------------------------------- >> root at jianlee:~/work/koji# koji list-hosts >> Hostname Enb Rdy Load/Cap Arches Last Update >> kojibuilder1 N N 0.0/2.0 i386,x86_64 2009-06-19 10:39:12 >> kojibuilder2 Y Y 0.0/2.0 ia64 2009-06-17 10:41:20 >> kojibuilder3 Y Y 0.0/2.0 x86_64,i386 2009-06-23 10:30:32 >> ================================================================================== >> >> the kojibuilder2 is ia64 machine, it's last updata time is "2009-06-17 >> 10:41:20". It's must dead now. but why the Rdy is "Y" yet ? > > Because the last time the host updated it set its ready status to > true. This value is only set to false when the host is up and running > but too busy to take a job. > > -- > Fedora-buildsys-list mailing list > Fedora-buildsys-list at redhat.com > https://www.redhat.com/mailman/listinfo/fedora-buildsys-list > -- Jian Lee MSN : lijian.gnu at gmail.com From lijian.gnu at gmail.com Wed Jun 24 02:09:28 2009 From: lijian.gnu at gmail.com (Jian Lee) Date: Wed, 24 Jun 2009 10:09:28 +0800 Subject: Delete a build from a tag, How to do ? In-Reply-To: (Steve Traylen's message of "Fri, 19 Jun 2009 09:25:45 +0200") References: Message-ID: I've use you command, it's ok: ------------------------------------------ [root at build ~]# koji untag-pkg tms2.0 system-config-language-1.3.2-6.1.moblin2 [root at build ~]# koji call deleteBuild system-config-language-1.3.2-6.1.moblin2 tms2.0 GenericError: Cannot delete build, tagged: [{'id': 11, 'name': 'moblin2-devel'}] [root at build ~]# koji untag-pkg moblin2-devel system-config-language-1.3.2-6.1.moblin2 [root at build ~]# koji call deleteBuild system-config-language-1.3.2-6.1.moblin2 tms2.0 True ================================================== And the pkgs remove also : ----------------------- [root at build ~]# ll /data/koji/packages/system-config-language/1.3.2/ total 8 drwxr-xr-x 5 apache apache 4096 Jun 9 17:15 6.1.tms2 ============================================================ I'll try other peope's ideal, Thanks, Steve Traylen writes: > On Fri, Jun 19, 2009 at 5:54 AM, Jian Lee wrote: >> >> Hello, everyone >> >> I want to delete a build from a tag, How should I do ? >> >> example, the tag tms2.0 have following build: >> >> ------------------------------------------------- >> b43-fwcutter-011-5.tms2 ?michaelw ?2009-06-19 ?09:52:18 ?complete >> ================================================================= >> >> I first try to delete the build from tms2.0 tag by following cmd: >> >> ---------------- >> # koji call deleteBuild b43-fwcutter-011-5.tms2 tms2.0 >> GenericError: Cannot delete build, tagged: [{'id': 10, 'name': 'tms2.0'}] >> ================================================== > Jian, > > You can untag a build from tag. i.e > > koji untag-pkg tms2.0 b43-fwcutter-011-5 > > and then your command may work. > Steve > >> >> Did a use a wrong api ? or did I can delete a build from a tag use >> kojihub api ? Must to direct do on postgresql ? >> >> Any help i'll appreciate ! >> >> Thanks, >> >> -- >> Fedora-buildsys-list mailing list >> Fedora-buildsys-list at redhat.com >> https://www.redhat.com/mailman/listinfo/fedora-buildsys-list >> -- Jian Lee MSN : lijian.gnu at gmail.com