[elephant-devel] strange bug related to psets

Ryszard Szopa ryszard.szopa at gmail.com
Sat May 10 17:13:07 UTC 2008


On Sat, May 10, 2008 at 4:25 PM, Ian Eslick <eslick at media.mit.edu> wrote:
> This happens in your application, or only in the tests?

Until now I have spotted it only in my unit tests.

> Can you give me the
> exact sequence and state you use to reproduce? Do you have a fresh lisp &
> fresh DB?  Does it still show up if you close the store, open a fresh one,
> and try again?  There is likely to be some state somewhere and identifying
> the environmental dependencies should help us localize where that is.

My unit test works like this.

1. Remove all the files in the directory "test/store"
2. Open a bdb store located in "test/store" using `with-store'
3. Create a bunch of persistent objects (they have psets as slot-values).
4. Run some tests (this is the test for a query facility, so I query
the db and see if I get the right objects back).
5. Close the store.

The first time I run the test, everything is OK. The problem arises at
point 4 during the second and subsequent runs (this may mean that it
doesn't matter whether the store is fresh, but only whether the lisp
image is fresh).

Note that at the time the persistent classes are defined, there's a
different store open (located in the directory "store"), and in point
2 I use with-store to open the test store.

As I said, if between point 2 and 3 I call a few times (make-pset),
the error doesn't occur.

I put quite a lot of effort into isolating the exact code that causes
the error, unsuccessfully.

Cheers,

    -- Richard

-- 
http://szopa.tasak.gda.pl/



More information about the elephant-devel mailing list