db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gabriele Kahlout <gabri...@mysimpatico.com>
Subject Re: cleaning database between test cases
Date Sat, 20 Mar 2010 17:40:19 GMT
It looks like the problem is with the derby.properties file, as it
sticks in the file system.
Should I delete them, in a special way/order?

2010/3/20, Gabriele Kahlout <gabriele@mysimpatico.com>:
> I quick solution (and actually not dirty) solution I came up with to
> break the symmetry is add the timestamp to the name of the testfolder,
> where the File variable is shared btw the setUp and tearDown methods.
> So the folders still disappear from my file system.
>
> However, it'd still be interesting to investigate why the above SSCCE
> insists on the presence of the db, as the exception indicates.
>
> However, running it into my code I get a new exception:
>
> ava.sql.SQLException: Failed to create database '/Volumes/STORE N GO
> 1/ws/MemorizEasy/test1269105407561/db.sqlwrapper', see the next
> exception for details.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown
> Source)
>         at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown
> Source)
>         at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
>         at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
>         at java.sql.DriverManager.getConnection(DriverManager.java:582)
>         at java.sql.DriverManager.getConnection(DriverManager.java:207)
>         at
> com.mysimpatico.sqlwrapper.SqlWrapper.connectToDerby(SqlWrapper.java:174)
>         at
> com.mysimpatico.memorizeasy.engine.Database.init(Database.java:477)
>         at
> com.mysimpatico.memorizeasy.executables.Setup.main(Setup.java:70)
>         at
> com.mysimpatico.memorizeasy.DatabaseTest.setUp(DatabaseTest.java:111)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>         at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>         at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
>         at
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>         at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>         at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:515)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1031)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:888)
> Caused by: java.sql.SQLException: Failed to create database
> '/Volumes/STORE N GO
> 1/ws/MemorizEasy/test1269105407561/db.sqlwrapper', see the next
> exception for details.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         ... 37 more
> Caused by: java.sql.SQLException: Startup failed due to an exception.
> See next exception for details.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
> Source)
>         ... 34 more
> Caused by: java.sql.SQLException: Java exception: ':
> java.nio.channels.OverlappingFileLockException'.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         ... 37 more
> Caused by: java.nio.channels.OverlappingFileLockException
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1170)
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1072)
>         at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:878)
>         at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)
>         at org.apache.derby.impl.io.DirFile4.getExclusiveFileLock(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.privGetJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.run(Unknown
> Source)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.getJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
>         at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
> Source)
>         ... 34 more
> java.sql.SQLException: Startup failed due to an exception. See next
> exception for details.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown
> Source)
>         at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown
> Source)
>         at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
>         at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
>         at java.sql.DriverManager.getConnection(DriverManager.java:582)
>         at java.sql.DriverManager.getConnection(DriverManager.java:207)
>         at
> com.mysimpatico.sqlwrapper.SqlWrapper.connectToDerby(SqlWrapper.java:174)
>         at
> com.mysimpatico.memorizeasy.engine.Database.init(Database.java:477)
>         at
> com.mysimpatico.memorizeasy.executables.Setup.main(Setup.java:70)
>         at
> com.mysimpatico.memorizeasy.DatabaseTest.setUp(DatabaseTest.java:111)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>         at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>         at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
>         at
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>         at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>         at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:515)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1031)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:888)
> Caused by: java.sql.SQLException: Startup failed due to an exception.
> See next exception for details.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         ... 40 more
> Caused by: java.sql.SQLException: Java exception: ':
> java.nio.channels.OverlappingFileLockException'.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         ... 37 more
> Caused by: java.nio.channels.OverlappingFileLockException
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1170)
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1072)
>         at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:878)
>         at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)
>         at org.apache.derby.impl.io.DirFile4.getExclusiveFileLock(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.privGetJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.run(Unknown
> Source)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.getJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
>         at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
> Source)
>         ... 34 more
> java.sql.SQLException: Java exception: ':
> java.nio.channels.OverlappingFileLockException'.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown
> Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection40.<init>(Unknown
> Source)
>         at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Unknown
> Source)
>         at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
>         at org.apache.derby.jdbc.AutoloadedDriver.connect(Unknown Source)
>         at java.sql.DriverManager.getConnection(DriverManager.java:582)
>         at java.sql.DriverManager.getConnection(DriverManager.java:207)
>         at
> com.mysimpatico.sqlwrapper.SqlWrapper.connectToDerby(SqlWrapper.java:174)
>         at
> com.mysimpatico.memorizeasy.engine.Database.init(Database.java:477)
>         at
> com.mysimpatico.memorizeasy.executables.Setup.main(Setup.java:70)
>         at
> com.mysimpatico.memorizeasy.DatabaseTest.setUp(DatabaseTest.java:111)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>         at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>         at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
>         at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
>         at
> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
>         at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
>         at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
>         at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:515)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1031)
>         at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:888)
> Caused by: java.sql.SQLException: Java exception: ':
> java.nio.channels.OverlappingFileLockException'.
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
> Source)
>         at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
> Source)
>         ... 41 more
> Caused by: java.nio.channels.OverlappingFileLockException
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1170)
>         at
> sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1072)
>         at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:878)
>         at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)
>         at org.apache.derby.impl.io.DirFile4.getExclusiveFileLock(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.privGetJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.run(Unknown
> Source)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.getJBMSLockOnDB(Unknown
> Source)
>         at
> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown
> Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
>         at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
>         at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
>         at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown
> Source)
>         at
> org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown
> Source)
>         at
> org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
> Source)
>         ... 34 more
> Sat Mar 20 18:16:53 Gabriele-Kahlouts-MacBook.local java[6566]
> <Error>: kCGErrorIllegalArgument: CGSOrderWindowList
> Sat Mar 20 18:16:53 Gabriele-Kahlouts-MacBook.local java[6566]
> <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to
> catch errors as they are logged.
> Test com.mysimpatico.memorizeasy.DatabaseTest FAILED (crashed)
> /Volumes/STORE N GO 1/ws/MemorizEasy/nbproject/build-impl.xml:706:
> Some tests failed; see details above.
>
> Any clues?
>
>
>
> 2010/3/20, Gabriele Kahlout <gabriele@mysimpatico.com>:
>> Well, did u try it? The result is the same, run on the same code
>> example I gave above but replacing it with you method.
>>
>>
>>
>> 2010/3/20, Peter Ondruška <peter.ondruska@gmail.com>:
>>> IMHO your deleteDir method is not deleting anything. See
>>> http://java.sun.com/j2se/1.4.2/docs/api/java/io/File.html#delete()
>>>
>>> It should be something like:
>>>
>>> void delete(File f){
>>>   if (f.isDirectory())
>>>     for (File sf: f.listFiles()) delete(sf);
>>>   f.delete();
>>> }
>>>
>>> On Sat, Mar 20, 2010 at 1:05 PM, Gabriele Kahlout
>>> <gabriele@mysimpatico.com> wrote:
>>>> any updates? This is bogging me down.
>>>>
>>>> 2010/3/19, Gabriele Kahlout <gabriele@mysimpatico.com>:
>>>>> Here is the code for wrapper methods that might be incorrect:
>>>>>
>>>>>  public final static Connection connectToDerby(final File parentPath,
>>>>> final boolean create) throws InstantiationException,
>>>>> IllegalAccessException, ClassNotFoundException, SQLException {
>>>>>         //  Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
>>>>>         final Connection con =
>>>>> DriverManager.getConnection("jdbc:derby:" + parentPath.getPath() +
>>>>> File.separator + "db.sqlwrapper;create=" + create);
>>>>>         return con;
>>>>>     }
>>>>>
>>>>> public static boolean shutDownDerby() {
>>>>>         try {
>>>>>             Connection con = connectToDerby();
>>>>>             con.close();
>>>>>             con =
>>>>> DriverManager.getConnection("jdbc:derby:db.sqlwrapper;shutdown=true");
>>>>>
>>>>>         } catch (SQLException e) { // with throw exception on
>>>>> successful deletion.
>>>>>             return true;
>>>>>         }
>>>>>         return false;
>>>>>     }
>>>>>
>>>>> 2010/3/19, Gabriele Kahlout <gabriele@mysimpatico.com>:
>>>>>> Here is the shortest test that shows the problem:
>>>>>>
>>>>>> import com.mysimpatico.sqlwrapper.*;
>>>>>> import java.io.File;
>>>>>> import java.sql.*;
>>>>>>
>>>>>> /*
>>>>>>  * To change this template, choose Tools | Templates
>>>>>>  * and open the template in the editor.
>>>>>>  */
>>>>>> /**
>>>>>>  *
>>>>>>  * @author simpatico
>>>>>>  */
>>>>>> public class DbDeletionTest {
>>>>>>
>>>>>>     public static boolean deleteDir(File dir) {
>>>>>>         if (dir.isDirectory()) {
>>>>>>             String[] children = dir.list();
>>>>>>             for (int i = 0; i < children.length; i++) {
>>>>>>                 boolean success = deleteDir(new File(dir,
>>>>>> children[i]));
>>>>>>                 if (!success) {
>>>>>>                     return false;
>>>>>>                 }
>>>>>>             } // The directory is now empty so delete it return
>>>>>> dir.delete(); }
>>>>>>         }
>>>>>>         return dir.delete();
>>>>>>     }
>>>>>>
>>>>>>     public static void test() throws Exception {
>>>>>>         final File dir = new File("test");
>>>>>>         dir.mkdir();
>>>>>>         final Connection con = SqlWrapper.connectToDerby(dir, true);
>>>>>>         final Statement st = con.createStatement();
>>>>>>         SqlWrapper.setVendor(SqlWrapper.vendor.JAVADB);
>>>>>>
>>>>>>         final String expTableName = "Expressions";
>>>>>>         final String exp = "expression";
>>>>>>         final ReferencedColumn expColumn = new ReferencedColumn(exp,
>>>>>> SqlWrapper.VARCHAR, 100);
>>>>>>         final Table expTable = new Table(expTableName, expColumn,
>>>>>> expColumn);
>>>>>>         st.executeUpdate(SqlWrapper.create(expTable));
>>>>>>         con.close();
>>>>>>         SqlWrapper.shutDownDerby();
>>>>>>         deleteDir(dir);
>>>>>>         System.out.println("test executed.");
>>>>>>
>>>>>>     }
>>>>>>
>>>>>>     public static void main(String[] args) {
>>>>>>         try {
>>>>>>             test();
>>>>>>             test();
>>>>>>         }
>>>>>>             catch (Exception e) {
>>>>>>             e.printStackTrace();
>>>>>>         }
>>>>>>     }
>>>>>> }
>>>>>> The libraries needed are: derby.jar, SqlWrapper.jar (just wraps
>>>>>> around
>>>>>> sql statements, u can replace it with sql strings).
>>>>>> http://memorizeasy.googlecode.com/svn/tags/live/lib/derby.jar
>>>>>> http://memorizeasy.googlecode.com/svn/tags/live/lib/sqlwrapper.jar
>>>>>>
>>>>>> The output is:
>>>>>> test executed.
>>>>>> Shutting down due to severe error.
>>>>>> java.sql.SQLException: Table/View 'EXPRESSIONS' already exists in
>>>>>> Schema
>>>>>> 'APP'.
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown
>>>>>> Source)
>>>>>>         at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown
>>>>>> Source)
>>>>>>         at DbDeletionTest.test(DbDeletionTest.java:42)
>>>>>>         at DbDeletionTest.main(DbDeletionTest.java:53)
>>>>>> Caused by: java.sql.SQLException: Table/View 'EXPRESSIONS' already
>>>>>> exists in Schema 'APP'.
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
>>>>>> Source)
>>>>>>         at
>>>>>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
>>>>>> Source)
>>>>>>
>>>>>> 2010/3/19, Gabriele Kahlout <gabriele@mysimpatico.com>:
>>>>>>> 'rm -R myDbDirectory' in *nix'
>>>>>>> How do you programmatically, from java do that (OS independent)?
>>>>>>> What I do is I iterate over the db folder and delete all contents,
>>>>>>> as
>>>>>>> returned by the java.io API.
>>>>>>>
>>>>>>> However, even doing that seems not sufficient.
>>>>>>> I see that the test folder (the one that contains db.sqlwrapper) is
>>>>>>> deleted after the first test, and created in the setup of the next.
>>>>>>> However, I get:
>>>>>>>
>>>>>>> Caused by: ERROR X0Y32: Table/View 'EXPRESSIONS' already exists in
>>>>>>> Schema
>>>>>>> 'APP'.
>>>>>>>
>>>>>>> I think it has to do with the copy in memory not being updated with
>>>>>>> the disk. That is because through the debugger, I've even manually
>>>>>>> deleted the db, but to no avail.
>>>>>>> Maybe this is more of a Java question now:
>>>>>>> How do I make sure the memory is flushed/sync with the disk? Or that
>>>>>>> derby, when creating a connection is not fooled by the cache in
>>>>>>> memory?
>>>>>>>
>>>>>>>
>>>>>>> 2010/3/19, Kristian Waagan <Kristian.Waagan@sun.com>:
>>>>>>>> On 19.03.10 10:11, Gabriele Kahlout wrote:
>>>>>>>>> Also, I've copied from the code what I seem to need, and then end
>>>>>>>>> up
>>>>>>>>> with when I use the db again in a 2nd method.
>>>>>>>>>
>>>>>>>>> Caused by: java.sql.SQLException: Database '/Volumes/STORE N
>>>>>>>>> GO/ws/MemorizEasy/test/db.sqlwrapper' not found.
>>>>>>>>>
>>>>>>>>> Note that after destroying the schemas, I shut down the db, and
>>>>>>>>> delete
>>>>>>>>> the test folder of the previous method.
>>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Gabriele,
>>>>>>>>
>>>>>>>> I don't know the requirements of your application, but note that in
>>>>>>>> general you have three options:
>>>>>>>>
>>>>>>>>   - clean the database and reuse it
>>>>>>>>     This is what we're doing in the Derby test framework (see the
>>>>>>>> class
>>>>>>>> that Bryan pointed to), because it would take much longer to
>>>>>>>> actually
>>>>>>>> delete and recreate the database files all the time. Here we use
>>>>>>>> meta-data to detect all objects added to the database during the
>>>>>>>> test,
>>>>>>>> and then we drop them.
>>>>>>>>
>>>>>>>>   - simply just delete the database on disk (i.e. 'rm -R
>>>>>>>> myDbDirectory'
>>>>>>>> in *nix) and create a new one for the next test (through JDBC,
>>>>>>>> using
>>>>>>>> 'jdbc:derby:...;create=true').
>>>>>>>>     You should shut down the database before deleting the files on
>>>>>>>> disk.
>>>>>>>>
>>>>>>>>   - if you just need a database for a short period of time or
>>>>>>>> similar,
>>>>>>>> use an in-memory db.
>>>>>>>>     Remember to drop it [1] to free up the memory.
>>>>>>>>
>>>>>>>> It's hard to tell exactly what went wrong above, but are you sure
>>>>>>>> the
>>>>>>>> database is still on disk?
>>>>>>>> Can you locate the directory? (you should see the directories
>>>>>>>> db.sqlwrapper, db.sqlwrapper/seg0 and db.sqlwrapper/log)
>>>>>>>> If not, why did it get deleted?
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Kristian
>>>>>>>>
>>>>>>>> [1] Note that proper support for this is added in 10.6, by using
>>>>>>>> the
>>>>>>>> "drop=true" attribute. In 10.5, the mechanism is different.
>>>>>>>>
>>>>>>>>> 2010/3/18, Gabriele Kahlout<gabriele@mysimpatico.com>:
>>>>>>>>>
>>>>>>>>>> I reached here:
>>>>>>>>>> http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/junit/CleanDatabaseTestSetup.java?view=markup
>>>>>>>>>>
>>>>>>>>>> But then what do I do? The code relies on some other class, and
>>>>>>>>>> it
>>>>>>>>>> seems like I'd have to import the whole package to use it. Is
>>>>>>>>>> that
>>>>>>>>>> it?
>>>>>>>>>> Besides that one cannot delete the APP schema (which is the one i
>>>>>>>>>> use), while the code seems to want to do that.
>>>>>>>>>> If not, is there how I can use this without concerning myself
>>>>>>>>>> with
>>>>>>>>>> the
>>>>>>>>>> impl. details?
>>>>>>>>>>
>>>>>>>>>> 2010/3/18, Gabriele Kahlout<gabriele@mysimpatico.com>:
>>>>>>>>>>
>>>>>>>>>>> Can you provide a link to it? Also, is it in some library I
>>>>>>>>>>> could
>>>>>>>>>>> use?
>>>>>>>>>>>
>>>>>>>>>>> 2010/3/18, Bryan Pendleton<bpendleton.derby@gmail.com>:
>>>>>>>>>>>
>>>>>>>>>>>>> For testing, how can I make sure the tearDown completely
>>>>>>>>>>>>> deletes
>>>>>>>>>>>>> the
>>>>>>>>>>>>> db, and setUp creates a completely new copy, without using
>>>>>>>>>>>>> in-memory
>>>>>>>>>>>>> db?
>>>>>>>>>>>>>
>>>>>>>>>>>> We do this in the Derby regression test suite.
>>>>>>>>>>>>
>>>>>>>>>>>> Have a look at
>>>>>>>>>>>> org.apache.derbyTesting.functionTests.junit.CleanDatabaseTestSetup.java
>>>>>>>>>>>>
>>>>>>>>>>>> thanks,
>>>>>>>>>>>>
>>>>>>>>>>>> bryan
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Regards,
>>>>>>>>>>> K. Gabriele
>>>>>>>>>>>
>>>>>>>>>>> --- unchanged since 25/1/10 ---
>>>>>>>>>>> P.S. Unless a notification (LON), please reply either with an
>>>>>>>>>>> answer
>>>>>>>>>>> OR with " ACK" appended to this subject within 48 hours.
>>>>>>>>>>> Otherwise,
>>>>>>>>>>> I
>>>>>>>>>>> might resend.
>>>>>>>>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧
>>>>>>>>>>> IsAnswerTo(x,
>>>>>>>>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>>>>>>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>>>>>>>>
>>>>>>>>>>> Also note that correspondence may be received only from
>>>>>>>>>>> specified
>>>>>>>>>>> a
>>>>>>>>>>> priori senders, or if the subject of this email ends with a
>>>>>>>>>>> code,
>>>>>>>>>>> eg.
>>>>>>>>>>> -LICHT01X, then also from senders whose reply contains it.
>>>>>>>>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨
>>>>>>>>>>> (∃y.
>>>>>>>>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Regards,
>>>>>>>>>> K. Gabriele
>>>>>>>>>>
>>>>>>>>>> --- unchanged since 25/1/10 ---
>>>>>>>>>> P.S. Unless a notification (LON), please reply either with an
>>>>>>>>>> answer
>>>>>>>>>> OR with " ACK" appended to this subject within 48 hours.
>>>>>>>>>> Otherwise,
>>>>>>>>>> I
>>>>>>>>>> might resend.
>>>>>>>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧
>>>>>>>>>> IsAnswerTo(x,
>>>>>>>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>>>>>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>>>>>>>
>>>>>>>>>> Also note that correspondence may be received only from specified
>>>>>>>>>> a
>>>>>>>>>> priori senders, or if the subject of this email ends with a code,
>>>>>>>>>> eg.
>>>>>>>>>> -LICHT01X, then also from senders whose reply contains it.
>>>>>>>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨
>>>>>>>>>> (∃y.
>>>>>>>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Regards,
>>>>>>> K. Gabriele
>>>>>>>
>>>>>>> --- unchanged since 25/1/10 ---
>>>>>>> P.S. Unless a notification (LON), please reply either with an answer
>>>>>>> OR with " ACK" appended to this subject within 48 hours. Otherwise,
>>>>>>> I
>>>>>>> might resend.
>>>>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧
>>>>>>> IsAnswerTo(x,
>>>>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>>>>
>>>>>>> Also note that correspondence may be received only from specified a
>>>>>>> priori senders, or if the subject of this email ends with a code,
>>>>>>> eg.
>>>>>>> -LICHT01X, then also from senders whose reply contains it.
>>>>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
>>>>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Regards,
>>>>>> K. Gabriele
>>>>>>
>>>>>> --- unchanged since 25/1/10 ---
>>>>>> P.S. Unless a notification (LON), please reply either with an answer
>>>>>> OR with " ACK" appended to this subject within 48 hours. Otherwise, I
>>>>>> might resend.
>>>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
>>>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>>>
>>>>>> Also note that correspondence may be received only from specified a
>>>>>> priori senders, or if the subject of this email ends with a code, eg.
>>>>>> -LICHT01X, then also from senders whose reply contains it.
>>>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
>>>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> K. Gabriele
>>>>>
>>>>> --- unchanged since 25/1/10 ---
>>>>> P.S. Unless a notification (LON), please reply either with an answer
>>>>> OR with " ACK" appended to this subject within 48 hours. Otherwise, I
>>>>> might resend.
>>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
>>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>>
>>>>> Also note that correspondence may be received only from specified a
>>>>> priori senders, or if the subject of this email ends with a code, eg.
>>>>> -LICHT01X, then also from senders whose reply contains it.
>>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
>>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>>
>>>>
>>>>
>>>> --
>>>> Regards,
>>>> K. Gabriele
>>>>
>>>> --- unchanged since 25/1/10 ---
>>>> P.S. Unless a notification (LON), please reply either with an answer
>>>> OR with " ACK" appended to this subject within 48 hours. Otherwise, I
>>>> might resend.
>>>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
>>>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>>>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>>>
>>>> Also note that correspondence may be received only from specified a
>>>> priori senders, or if the subject of this email ends with a code, eg.
>>>> -LICHT01X, then also from senders whose reply contains it.
>>>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
>>>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>>>
>>>
>>
>>
>> --
>> Regards,
>> K. Gabriele
>>
>> --- unchanged since 25/1/10 ---
>> P.S. Unless a notification (LON), please reply either with an answer
>> OR with " ACK" appended to this subject within 48 hours. Otherwise, I
>> might resend.
>> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
>> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
>> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>>
>> Also note that correspondence may be received only from specified a
>> priori senders, or if the subject of this email ends with a code, eg.
>> -LICHT01X, then also from senders whose reply contains it.
>> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
>> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>>
>
>
> --
> Regards,
> K. Gabriele
>
> --- unchanged since 25/1/10 ---
> P.S. Unless a notification (LON), please reply either with an answer
> OR with " ACK" appended to this subject within 48 hours. Otherwise, I
> might resend.
> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>
> Also note that correspondence may be received only from specified a
> priori senders, or if the subject of this email ends with a code, eg.
> -LICHT01X, then also from senders whose reply contains it.
> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>


-- 
Regards,
K. Gabriele

--- unchanged since 25/1/10 ---
P.S. Unless a notification (LON), please reply either with an answer
OR with " ACK" appended to this subject within 48 hours. Otherwise, I
might resend.
In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).

Also note that correspondence may be received only from specified a
priori senders, or if the subject of this email ends with a code, eg.
-LICHT01X, then also from senders whose reply contains it.
∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).

Mime
View raw message