[Lunar-bugs] [Lunar Linux 0000277]: mquery() related bug

Lunar bug reports list lunar-bugs at lunar-linux.org
Tue Mar 18 19:15:23 CET 2008


The following issue has been RESOLVED. 
====================================================================== 
http://bugs.lunar-linux.org/view.php?id=277 
====================================================================== 
Reported By:                ratler
Assigned To:                sofar
====================================================================== 
Project:                    Lunar Linux
Issue ID:                   277
Category:                   theedge
Reproducibility:            always
Severity:                   major
Priority:                   high
Status:                     resolved
Moonbase Version:           20070827.07 
Core Tools:                 Theedge 
Core Tools Version:         20070623 
Resolution:                 fixed
Fixed in Version:           
====================================================================== 
Date Submitted:             09-04-2007 11:25 CEST
Last Modified:              03-18-2008 19:15 CET
====================================================================== 
Summary:                    mquery() related bug
Description: 
The problem reveil it self in two ways. One is that you sometime notice in
the output during a lin that grep couldn't find /tmp/xxxxx file but then
continues as nothing happend.

The second problem is a lot more alarming though. If you do lin -cr on a
module that use MQUERY those OPTS will not be passed on properly to $OPTS
during that lin. It will however write the correct options to
/etc/lunar/local/depends/$MODULE. So the next time you do lin -c (without
-r) $MODULE it will actually pick up your MQUERY settings properly. 

Apache2 is a great module to test this with, simply run lin -cr apache2
and make some random choices. Then abort the lin after the ./configure
step and examine config.log and you will notice that the options are
missing. Then run lin -c apache2 again and do the above steps again and
the options are there.

I have located where the problem occur in /sbin/lin in this section of the
code:

  # different approaches for multiple modules (start up downloads first)
  # and single modules (plain install)
  if [ -z "$SINGLE_MODULE" ] ; then

    if [ -z "$TEMP_DOWNLOAD_PIDS" ] ; then
      export TEMP_DOWNLOAD_PIDS=$(temp_create "download-pids")
      export TEMP_PREPAREDDEPS=$(temp_create "prepared-depends")
      export TEMP_CONFIGOPTS=$(temp_create "configopts")
    fi

----- snip -----
    
If you move the line  "export TEMP_CONFIGOPTS=$(temp_create "configopts")"
outside that if-statement everything work just fine. But since I'm not
entirely sure where the correct place for that line would be I will leave
it for you to fix (sofar) ;)

======================================================================
Relationships       ID      Summary
----------------------------------------------------------------------
related to          0000338 lin -r <MODULE> doesn't take acco...
====================================================================== 

---------------------------------------------------------------------- 
 ratler - 03-12-08 07:49  
---------------------------------------------------------------------- 
This diff solves the issue. 
When you see 
grep: /tmp/lunar.lin.19392..JosQX19420: No such file or directory
during a lin this is related to this bug. And it only happen in rare
conditions where a optional dependency isn't installed and when mquery()
is used if I remember correctly.

Index: sbin/lin
===================================================================
--- sbin/lin    (revision 27009)
+++ sbin/lin    (working copy)
@@ -86,9 +86,10 @@
     if [ -z "$TEMP_DOWNLOAD_PIDS" ] ; then
       export TEMP_DOWNLOAD_PIDS=$(temp_create "download-pids")
       export TEMP_PREPAREDDEPS=$(temp_create "prepared-depends")
-      export TEMP_CONFIGOPTS=$(temp_create "configopts")
     fi
 
+    export TEMP_CONFIGOPTS=$(temp_create "configopts")
+
     # pass 1 : run full dependency checking
     # This pass does configuration and dependency identification.
     if ! DEPS_ONLY=--deps build_depends $MODULES ; then 

---------------------------------------------------------------------- 
 ratler - 03-18-08 19:15  
---------------------------------------------------------------------- 
Auke commited the fix as of r27014. 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
09-04-07 11:25  ratler         New Issue                                    
09-04-07 11:25  ratler         Status                   new => assigned     
09-04-07 11:25  ratler         Assigned To               => sofar           
09-04-07 11:25  ratler         Moonbase Version          => 20070827.07     
09-04-07 11:25  ratler         Core Tools                => Theedge         
09-04-07 11:25  ratler         Core Tools Version        => 20070623        
03-12-08 07:44  ratler         Relationship added       related to 0000338  
03-12-08 07:49  ratler         Note Added: 0000775                          
03-18-08 19:15  ratler         Status                   assigned => resolved
03-18-08 19:15  ratler         Resolution               open => fixed       
03-18-08 19:15  ratler         Note Added: 0000778                          
======================================================================



More information about the Lunar-bugs mailing list