One thing I would like to be clear about is that the locking only prevents 2 threads from concurrently modifying the shapefile at the same time. Windows locks files based on a handle so a single thread can trigger a lock exception by getting a readlock for a file then attempting to get a write lock for the same file.
Oh and I've fixed the test case. It was actually a bug in Shapefile renderer where a reader was not closed. Jesse Le 17-Jan-08 à 8:38 AM, Jesse Eichar a écrit : > The locking is most likely fine It is more likely a reader or writer > not being closed. I was at home when I worked on the renderer. I'll > take over Jody's machine today to try and fix this issue. > > Jesse > Le 17-Jan-08 à 1:11 AM, Andrea Aime a écrit : > >> Jesse Eichar ha scritto: >>> Hi andrea. >>> I'll take a look at that next. >>> As for the shapefile plugin. I've got that going with no >>> warnings. I also cleaned it up so that if you call >>> ShapefileDatastore.dispose() you will not get two messages about >>> the unreleased locks. Just one. >> >> Hi Jesse, >> I've seen you've tried to fix the shapefile renderer test that was >> broken, but apparently on windows it just changed the kind of error >> message one gets: >> >> ------------------------------------------------------------------------------- >> Test set: org.geotools.renderer.shape.ShapeRendererTest >> ------------------------------------------------------------------------------- >> Tests run: 4, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: >> 0.359 sec <<< FAILURE! >> testRemoveTransaction(org.geotools.renderer.shape.ShapeRendererTest) >> Time elapsed: 0.156 sec <<< ERROR! >> java.io.IOException: Unable to delete original file: file:/C:/ >> progetti/geotools/trunk/modules/extension/shapefile-renderer/target/ >> test-classes/org/geotools/renderer/shape/test-data/theme27429.fix >> at >> org >> .geotools >> .data.shapefile.StorageFile.replaceOriginals(StorageFile.java:96) >> at >> org >> .geotools >> .data >> .shapefile.ShapefileFeatureWriter.clean(ShapefileFeatureWriter.java: >> 176) >> at >> org >> .geotools >> .data >> .shapefile.ShapefileFeatureWriter.close(ShapefileFeatureWriter.java: >> 227) >> at >> org >> .geotools >> .data >> .shapefile >> .indexed >> .IndexedShapefileFeatureWriter >> .close(IndexedShapefileFeatureWriter.java:88) >> at >> org >> .geotools >> .data.TransactionStateDiff.applyDiff(TransactionStateDiff.java:264) >> at >> org >> .geotools.data.TransactionStateDiff.commit(TransactionStateDiff.java: >> 149) >> at >> org.geotools.data.DefaultTransaction.commit(DefaultTransaction.java: >> 181) >> at >> org >> .geotools >> .renderer >> .shape >> .ShapeRendererTest.testRemoveTransaction(ShapeRendererTest.java:226) >> >> >> Apparently file locking is still not up to snuff, something is >> keeping a finger on the .fix file... >> Cheers >> Andrea > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Geotools-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/geotools-devel ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Geotools-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-devel
