Folder in Vault appears to be empty

Hi,

I have a folder in my vault (located on Dropbox) which contains quite a lot of subfolders. Up until recently they all were displayed. Now the folder appears empty. However, using the command line I can “cd [subfolder]” and the contents of this subfolders are shown. Using the Android app, everything’s there.

Here’s what the log says:

11:52:40.199 [Server thread 023] TRACE o.c.cryptofs.CryptoDirectoryStream - OPEN 269c8a1d-71e4-4cd4-bf01-d33053fb23e3
11:52:40.238 [Server thread 023] TRACE o.c.cryptofs.CryptoDirectoryStream - CLOSE 269c8a1d-71e4-4cd4-bf01-d33053fb23e3
11:52:40.241 [Server thread 023] WARN  org.eclipse.jetty.server.HttpChannel - /ZWB1ANZeSDCh/myfiles/_[folder]_
java.lang.IllegalArgumentException: expected ciphertextSize to be positive, but was -88
	at com.google.common.base.Preconditions.checkArgument(Preconditions.java:196)
	at org.cryptomator.cryptolib.Cryptors.cleartextSize(Cryptors.java:42)
	at org.cryptomator.cryptofs.CryptoBasicFileAttributes.size(CryptoBasicFileAttributes.java:53)
	at org.cryptomator.frontend.webdav.servlet.DavFile.lambda$sizeProperty$0(DavFile.java:134)
	at java.util.Optional.map(Optional.java:215)
	at org.cryptomator.frontend.webdav.servlet.DavFile.sizeProperty(DavFile.java:134)
	at org.cryptomator.frontend.webdav.servlet.DavFile.getProperties(DavFile.java:128)
	at org.apache.jackrabbit.webdav.MultiStatusResponse.<init>(MultiStatusResponse.java:194)
	at org.apache.jackrabbit.webdav.MultiStatus.addResourceProperties(MultiStatus.java:61)
	at org.apache.jackrabbit.webdav.MultiStatus.addResourceProperties(MultiStatus.java:65)
	at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.doPropFind(AbstractWebdavServlet.java:574)
	at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.execute(AbstractWebdavServlet.java:362)
	at org.cryptomator.frontend.webdav.servlet.WebDavServlet.execute(WebDavServlet.java:108)
	at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:305)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:860)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1650)
	at org.cryptomator.frontend.webdav.servlet.MacChunkedPutCompatibilityFilter.doFilterHttp(MacChunkedPutCompatibilityFilter.java:58)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.cryptomator.frontend.webdav.servlet.AcceptRangeFilter.doFilterHttp(AcceptRangeFilter.java:38)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.cryptomator.frontend.webdav.servlet.MkcolComplianceFilter.doFilterHttp(MkcolComplianceFilter.java:47)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.cryptomator.frontend.webdav.servlet.PostRequestBlockingFilter.doFilterHttp(PostRequestBlockingFilter.java:46)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.cryptomator.frontend.webdav.servlet.UnicodeResourcePathNormalizationFilter.doFilterHttp(UnicodeResourcePathNormalizationFilter.java:70)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.cryptomator.frontend.webdav.servlet.LoggingFilter.doFilterHttp(LoggingFilter.java:41)
	at org.cryptomator.frontend.webdav.servlet.HttpFilter.doFilter(HttpFilter.java:26)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:219)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:530)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:347)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:256)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:247)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:140)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:382)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

Can somebody help me get to my files under Windows?

Best regards
Sebastian

Hallo zusammen,

I found the solution. The error was caused by a lock file for an open KeePass 1 database. Once I deleted the file on Android, everything’s back to normal.

Best regards
Sebastian