[petsc-dev] Is ./configure --help broken?

Satish Balay balay at mcs.anl.gov
Fri Mar 16 08:40:34 CDT 2018


On Fri, 16 Mar 2018, Matthew Knepley wrote:

> On Fri, Mar 16, 2018 at 9:26 AM, Satish Balay <balay at mcs.anl.gov> wrote:
> 
> > On Fri, 16 Mar 2018, Matthew Knepley wrote:
> >
> > > This works for me. Do you want to put it in your branch, or should I
> > check
> > > it in?
> > >
> > >    Matt
> > >
> > > diff --git a/config/BuildSystem/RDict.py b/config/BuildSystem/RDict.py
> > > index 2dc745f..efc8b81 100755
> > > --- a/config/BuildSystem/RDict.py
> > > +++ b/config/BuildSystem/RDict.py
> > > @@ -218,7 +218,7 @@ Arg class, which wraps the usual value.'''
> > >              print
> > > '-----------------------------------------------------------
> > ------------'
> > >              pass
> > >        dict.__setitem__(self, key, value)
> > > -      self.save()
> > > +      self.save(force = 0)
> > >      else:
> > >        return self.send(key, value)
> > >      return
> >
> > How about reducing the number of times save is called - i.e try
> > calling it only once at the end. Would that work?
> >
> > diff --git a/config/BuildSystem/RDict.py b/config/BuildSystem/RDict.py
> > index 2dc745f1aa..98a2a16a29 100755
> > --- a/config/BuildSystem/RDict.py
> > +++ b/config/BuildSystem/RDict.py
> > @@ -195,7 +195,7 @@ Arg class, which wraps the usual value.'''
> >      else:
> >        self.writeLogLine('__getitem__: Setting local type for '+key)
> >        dict.__setitem__(self, key, nargs.Arg(key))
> > -      self.save()
> > +      #self.save()
> >      self.writeLogLine('__getitem__: Setting local value for '+key)
> >      return dict.__getitem__(self, key).getValue()
> >
> > @@ -218,7 +218,7 @@ Arg class, which wraps the usual value.'''
> >              print '-----------------------------
> > ------------------------------------------'
> >              pass
> >        dict.__setitem__(self, key, value)
> > -      self.save()
> > +      #self.save()
> >      else:
> >        return self.send(key, value)
> >      return
> > @@ -232,14 +232,14 @@ Arg class, which wraps the usual value.'''
> >          dict.__setitem__(self, key, nargs.Arg(key))
> >      dict.__getitem__(self, key).setValue(value)
> >      self.writeLogLine('__setitem__: Set value for '+key+' to
> > '+str(dict.__getitem__(self, key)))
> > -    self.save()
> > +    #self.save()
> >      return
> >
> >    def __delitem__(self, key):
> >      '''Checks for the key locally, and if not found consults the parent.
> > Deletes the Arg completely.'''
> >      if dict.has_key(self, key):
> >        dict.__delitem__(self, key)
> > -      self.save()
> > +      #self.save()
> >      elif not self.parent is None:
> >        self.send(key)
> >      return
> > @@ -248,7 +248,7 @@ Arg class, which wraps the usual value.'''
> >      '''Clears both the local and parent dictionaries'''
> >      if dict.__len__(self):
> >        dict.clear(self)
> > -      self.save()
> > +      #self.save()
> >      if not self.parent is None:
> >        self.send()
> >      return
> >
> > My simple 'configure --prefix && make && make install' test appears to
> > work with the above change - but don't know if the random crashes in
> > nightlybuilds will come back or not..
> 
> 
> I do not want to do that until its rewritten. There is already a save call
> at the end which was not working.

I suspect the issue is with the skip timmer with save(force=0) sometimes interfering with the safe(force=1) call at the end.

Hence my attempt to eliminate save(force=0) calls..

Satish


More information about the petsc-dev mailing list