Jakob Borg
3f59d6daff
Add validation cache
2015-05-25 13:19:18 +02:00
Jakob Borg
0d659933aa
Merge pull request #1868 from mogwa1/umask
...
Change permissions of newly created files and directories (fixes #1339 )
2015-05-25 08:34:34 +02:00
Jakob Borg
3e8eabe833
Add mogwa1
2015-05-25 08:07:59 +02:00
Bart De Vries
badfc77339
Change permissions of newly created files and directories ( fixes #1339 )
2015-05-25 00:12:51 +02:00
Jakob Borg
c0d02a65c3
Reduce allocations during iteration
...
Reuses key byte slices to reduce allocations:
benchmark old allocs new allocs delta
Benchmark10kReplace 178112 168615 -5.33%
Benchmark10kUpdateChg 567954 561557 -1.13%
Benchmark10kUpdateSme 238691 228680 -4.19%
Benchmark10kNeed2k 105382 103383 -1.90%
Benchmark10kHaveFullList 60230 60230 +0.00%
Benchmark10kGlobal 237484 227493 -4.21%
benchmark old bytes new bytes delta
Benchmark10kReplace 8725368 7661788 -12.19%
Benchmark10kUpdateChg 58155152 57441025 -1.23%
Benchmark10kUpdateSme 16130875 14996717 -7.03%
Benchmark10kNeed2k 6561685 6338283 -3.40%
Benchmark10kHaveFullList 7611112 7611135 +0.00%
Benchmark10kGlobal 21415056 20300723 -5.20%
2015-05-24 13:08:14 +02:00
Audrius Butkevicius
3a203b8d83
Merge pull request #1861 from calmh/fix-1860
...
Be more lenient against errors when deleting (fixes #1860 )
2015-05-24 00:58:46 +01:00
Audrius Butkevicius
feecdcc7a4
Merge pull request #1854 from calmh/eventmemallocs
...
Reuse a timer instead of allocating a new one in subscription.Poll
2015-05-23 23:23:46 +01:00
Jakob Borg
29da0bc8f5
Be more lenient against errors when deleting ( fixes #1860 )
2015-05-23 23:57:41 +02:00
Jakob Borg
7b6b5981c4
UPnP discovery results must not be collected in a background goroutine ( fixes #1858 )
2015-05-23 23:27:02 +02:00
Jakob Borg
90a1d99785
Reuse a timer instead of allocating a new one in subscription.Poll
...
This is surprisingly memory expensive when Poll gets called a lot, such
as when syncing lots of small files generating itemstarted/itemfinished
events. It's line number three in this heap profile on the
TestBenchmarkManyFiles test:
jb@syno:~/src/github.com/syncthing/syncthing/test (master) $ go tool pprof ../bin/syncthing heap-13194.pprof
Entering interactive mode (type "help" for commands)
(pprof) top
80.91MB of 83.05MB total (97.42%)
Dropped 1024 nodes (cum <= 0.42MB)
Showing top 10 nodes out of 85 (cum >= 1.75MB)
flat flat% sum% cum cum%
32MB 38.53% 38.53% 32.01MB 38.54% github.com/syndtr/goleveldb/leveldb/memdb.New
22.16MB 26.68% 65.21% 22.16MB 26.68% github.com/syndtr/goleveldb/leveldb/util.(*BufferPool).Get
13.02MB 15.68% 80.89% 13.02MB 15.68% time.NewTimer
6.94MB 8.35% 89.24% 6.94MB 8.35% github.com/syndtr/goleveldb/leveldb/memdb.(*DB).Put
3.18MB 3.82% 93.06% 3.18MB 3.82% github.com/calmh/xdr.(*Reader).ReadBytesMaxInto
With this change the allocation is removed entirely.
2015-05-23 20:38:41 +02:00
Jakob Borg
8dd7e4e6b5
Run benchmarks when running tests
2015-05-23 15:08:17 +02:00
Lode Hoste
f12b8c19be
Support the creation of top-level folders on Windows ( fixes #1822 )
2015-05-21 19:21:19 +02:00
Lode Hoste
5042248260
Set permanent UPnP lease when required ( fixes #1831 )
2015-05-21 10:48:40 +02:00
Lode Hoste
1df6589533
Add status code to SOAP response
2015-05-21 09:54:39 +02:00
Audrius Butkevicius
f112ef34f6
Don't check interface flags on Windows
2015-05-17 16:42:26 +01:00
Jakob Borg
e4b57a978f
Translation update
2015-05-15 10:46:47 +02:00
Jakob Borg
947a129e12
Use updateLocals to ensure event generation
2015-05-14 08:56:42 +02:00
Jakob Borg
f3fe6a6cbd
Assure existence of a folder marker in the test
2015-05-14 08:46:00 +02:00
Jakob Borg
9d150bef9f
Refactor GetMtime for early return
2015-05-14 08:26:21 +02:00
Jakob Borg
65be18cc93
Merge pull request #1804 from cdhowie/virtual-mtimes
...
Implement virtual mtime support for Android
2015-05-14 08:14:29 +02:00
Jakob Borg
e27ea63900
Add cdhowie
2015-05-14 08:11:02 +02:00
Chris Howie
aa96f7b660
Virtual mtime support for environments that don't support altering mtimes ( fixes #831 )
2015-05-13 14:57:29 +00:00
Jakob Borg
053690d885
Don't attempt reschedule with zero interval
...
Can happen on manual rescans of folders with zero interval.
2015-05-13 16:51:08 +02:00
Jakob Borg
0b9441e1a4
Reset a namespaced kv-store
2015-05-13 14:41:47 +02:00
Jakob Borg
c2f2d8771f
Tweak the database block cache size, and add config for it
2015-05-11 09:08:25 +02:00
Jakob Borg
179c9ee8cc
Merge pull request #1792 from Zillode/tempname
...
Retains part of meaningful filename, added unit test and did a small refactoring
2015-05-10 20:44:55 +02:00
Jakob Borg
eb8a505287
Merge pull request #1774 from Zillode/fix-rename-windows
...
If rename works we are happy (fixes #1767 )
2015-05-10 19:04:03 +02:00
Lode Hoste
a7482a3644
Added simple unit test for temporary filenames
2015-05-10 18:57:27 +02:00
Lode Hoste
a692348336
Retain meaningful names for temporary files
2015-05-10 18:57:27 +02:00
Jakob Borg
285dcc30cf
Use md5 hash of filename for temporary file ( fixes #1786 )
2015-05-10 18:57:27 +02:00
Jakob Borg
bcf51aed83
Translation update
2015-05-10 14:59:12 +02:00
Lode Hoste
f6416285db
If rename works we are happy ( fixes #1767 )
2015-05-10 00:00:24 +02:00
Jakob Borg
7f0593cd2d
Set default UPnP lease time to 60 minutes
2015-05-09 22:17:53 +02:00
Jakob Borg
1133192a86
Merge remote-tracking branch 'syncthing/pr/1779'
...
* syncthing/pr/1779:
Remove stray VIM swap file
2015-05-08 20:32:02 +02:00
Chris Howie
af3288043a
Remove stray VIM swap file
2015-05-08 16:11:32 +00:00
Jakob Borg
245bd1eb17
Trigger pull check on remote index updates ( fixes #1765 )
...
Without this, when an index update comes in we only do a new pull if the
remote `localVersion` was increased. But it may not be, because the
index is sent alphabetically and the file with the highest local version
may come first. In that case we'll never do a new pull when the rest of
the index comes in, and we'll be stuck in idle but with lots of out of
sync data.
2015-05-08 10:02:46 +02:00
Jakob Borg
9308c42cff
Skip boring concurrency test in internal/db
2015-05-07 09:57:49 +02:00
Jakob Borg
5fc0808f28
Set the execute bit on Windows executables ( fixes #1762 )
2015-05-05 21:45:26 +02:00
Jakob Borg
e6866ee980
strings.TrimLeft is not actually TrimPrefix
2015-05-05 13:53:11 +02:00
Jakob Borg
df59bc7194
Merge pull request #1747 from Zillode/fix-1743
...
Partial fix for #1743
2015-05-04 10:51:40 +02:00
Jakob Borg
1bd85d8baf
Use a channel instead of locks
2015-05-03 14:18:32 +02:00
Lode Hoste
fe34b08ece
Reschedule the next scan interval ( fixes #1591 )
2015-05-03 12:48:44 +02:00
Alexander Graf
0ec01f4e78
Distinguish files with same name but different extension in staggered versioner ( fixes #1738 )
2015-05-03 10:36:46 +02:00
Jakob Borg
d0ebf06ff8
Translation update
2015-05-03 08:29:29 +02:00
Jakob Borg
687b249034
Don't create stopped folder in staggered versioning ( fixes #1749 )
2015-05-03 08:22:11 +02:00
Jakob Borg
d1528dcff0
Remove old name conversion from staggered versioning
2015-05-03 08:22:11 +02:00
Lode Hoste
67f0c9bef0
Do not remove the file when renaming on a case-insensitive platform ( fixes #1743 )
2015-05-01 23:43:45 +02:00
Jakob Borg
4ff535f883
Twitter link (lazily wrong icon, because not in Glyphicons...)
2015-05-01 23:32:51 +02:00
Lode Hoste
e3cae69495
Added test for combining case insensitive and negated patterns ( fixes #1678 )
2015-05-01 00:58:44 +02:00
Jakob Borg
756c5a2604
User fewer hasher routines when there are many folders.
2015-04-29 21:26:08 +02:00