goobox / goobox-sync-common Goto Github PK
View Code? Open in Web Editor NEWShared library for Goobox sync apps.
License: GNU General Public License v3.0
Shared library for Goobox sync apps.
License: GNU General Public License v3.0
Same problem as https://issues.liferay.com/browse/NVTY-146 happens and need to find solutions.
The state of each folder is determined by integrating sync states of files in the folder. Currently, to integrate those states, OverlayHelper walks the file tree. However, since siad
downloads files in some place first, there are no files in the file tree until the download is finished. Hence, OverlayHelper decides the sync state of the folder "idle" even if some files are being downloaded.
Instead of walking the file tree, it seems better to query the sync DB so that OverlayHelper can find such downloading file.
Originally reported as GooBox/goobox-sync-sia#50.
Stream API may throw UncheckedIOException and it should be caught.
Originally posted as GooBox/goobox-sync-sia#49.
Sometimes, java.net.SocketException is thrown:
2018-02-15 23:41:02 [pool-1-thread-4] ERROR c.l.n.control.win.MessageProcessor - Software caused connection abort: socket write error
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:316)
at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:149)
at java.io.OutputStreamWriter.close(OutputStreamWriter.java:233)
at com.liferay.nativity.control.win.MessageProcessor._handle(MessageProcessor.java:110)
at com.liferay.nativity.control.win.MessageProcessor.run(MessageProcessor.java:70)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Original issue: GooBox/goobox-community-gui#72
This should ensure that every time the user restarts the app too fast the overlay icons will still appear.
Right now both sync-Storj, Sync-Sia and the overlay handler locks all files both during the time the files are first added to the sync directory, when files or folder are edited or when one tries to delete the sync dir content. The problem arises when hundreds or thousands of folders with a/b/c/d/e/f... sub-folder structures with files come into play, as the app can't keep up with the speed at which the user is interacting with the files.
If the app reads the files, it should do so passively in the background, not actively.
Although many errors arise from this, the main problem is the negative user experience impact.
screenshots of the errors are posted in #sia on slack.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.