Skip to content

Limitations

Limitations

Twake Desktop is designed to synchronize files and folders between a Twake Workplace and a local hard drive, for a personal usage. We tried to make it simple and easy. So, it has some limitations:

  • Files and folders named like this are ignored:
  • .system-tmp-twake-desktop (they are used to keep internal state)
  • _design (special meaning for pouchdb/couchdb)

  • It’s not a particularly good idea to share code with Twake Desktop:

  • node_modules have tons of small files
  • compiled code often has to be recompile to works on another environment
  • git (and other VCS) repositories are not meant to be shared this way. You may lose your work if you make changes on two laptops synchronized by Twake Desktop (it’s the same with dropbox, google-drive, syncthing, etc.)

  • If the same file has been modified in parallel, Twake Desktop don’t try to merge the modifications. It will just rename of one the copies with a -conflict suffix. It’s the same for folders.

  • We expect a personal usage:

  • a reasonable number of files and folders (< 1.000.000)
  • a reasonable number of files per folder (< 10.000)
  • a reasonable size for files (< 1 Tb)
  • a reasonable size for files and folders path (< 1024 bytes)
  • not too many changes
  • etc.

  • For OSX, filenames with weird unicode characters may be problematic in some rare cases.

  • Symbolic links and ACL are not yet handled.

  • The full sync directory must be on the same partition.

  • Large files must be uploaded/downloaded in one time (we are thinking about making it possible to split a large file in several blocks for download/upload).

  • Due to its nature, Twake Desktop needs resources:

  • CPU, for checksums in particular
  • RAM, to keep all the metadata in memory, and for nodejs libraries
  • Disk, but the overhead from Twake Desktop is low
  • Network bandwidth obviously

  • No advanced feature, like P2P replication between several Twake Desktop instances.