← Back to team overview

dolfin team mailing list archive

Re: buildbot failure in linux_64

 

2008/12/3 Anders Logg <logg@xxxxxxxxx>:
> On Wed, Dec 03, 2008 at 06:55:22PM +0100, Anders Logg wrote:
>> On Wed, Dec 03, 2008 at 06:04:16PM +0100, Anders Logg wrote:
>> > On Wed, Dec 03, 2008 at 05:29:14PM +0100, Martin Sandve Alnæs wrote:
>> > > 2008/12/3 Anders Logg <logg@xxxxxxxxx>:
>> > > > On Wed, Dec 03, 2008 at 03:18:35PM +0100, buildbot@xxxxxxxxxx wrote:
>> > > >> The Buildbot has detected a new failure of linux_64.
>> > > >> Full details are available at:
>> > > >>  http://fenics.org:8010/dolfin/linux_64/builds/1082
>> > > >>
>> > > >> Buildbot URL: http://fenics.org:8010/dolfin/
>> > > >>
>> > > >> Buildslave for this Build: x64-linux
>> > > >>
>> > > >> Build Reason:
>> > > >> Build Source Stamp: HEAD
>> > > >> Blamelist: Anders Logg
>> > > >>
>> > > >> BUILD FAILED: failed test
>> > > >>
>> > > >> sincerely,
>> > > >>  -The Buildbot
>> > > >>
>> > > >> _______________________________________________
>> > > >> DOLFIN-dev mailing list
>> > > >> DOLFIN-dev@xxxxxxxxxx
>> > > >> http://www.fenics.org/mailman/listinfo/dolfin-dev
>> > > >
>> > > > Should be fixed now. I removed the extra test added to
>> > > > Coefficient::attach.
>> > > >
>> > > > Don't know yet why the extra test breaks (probably in the call to
>> > > > Function::in).
>>
>> It broke on the call to create_function_space(). See comment added to
>> Coefficient::attach.
>
> Sorry, I was too fast. I made a fix that worked only for some tests
> but not for all.
>
> I've now realized that the current (old) implementation is correct, at
> least if we want to insist that one should be able to define a
> Constant without a FunctionSpace.
>
> The logic is now as follows:
>
> If a Function is attached to a Form, and that Function does not have a
> FunctionSpace (so it is likely a Constant), then an appropriate
> FunctionSpace will be created and attached to the Function.
>
> Note the following:
>
> 1. A FunctionSpace will only be attached if there is no previous
> FunctionSpace attached, so if you use your Function in two different
> Forms, the FunctionSpace will not be touched the second time.
>
> 2. It will probably not be touched the first time either since you
> have probably initialized your Function with a FunctionSpace.
>
> 3. Assembler will check that the FunctionSpace is correct for each
> coefficient, by calling Form::check(), so if something is wrong you
> will know.
>
> --
> Anders

Same as before then. The problem will only occur if you use a
single Constant instance as a coefficient in multiple function spaces.
I still think it's inconsistent and nonintuitive, but I guess it is rare
enough to ignore as long as you get proper error message...

--
Martin


References