Durham Goode
cf9d751d8a
Add remotefilelog debug commands
2013-09-17 20:15:08 -07:00
Durham Goode
6a8a2f0e58
Fix rare issue with broken linknodes in the ancestormap
2013-09-16 18:46:24 -07:00
Durham Goode
f480c7deef
Remove remotefilectx.__str__
...
Recent changes to Mercurial mean this is implemented by a base class.
2013-09-11 12:29:01 -07:00
Durham Goode
4ce55b8a0f
Add log file warning
2013-09-11 10:27:56 -07:00
Durham Goode
6781d80d25
Fix local pulls to send file data
2013-09-09 11:44:08 -07:00
Durham Goode
6acb5968a1
Clean up empty cache files if we encounter them
2013-09-09 11:23:03 -07:00
Durham Goode
3619a1911d
Cut down number of sys calls during filelog reads
...
When the cache is stored on a filesystem, excessive stat calls can slow
mercurial updates down dramatically. This reduces it to a single open call for
the cache location and if that fails, a single open call for the local location.
2013-09-09 10:23:29 -07:00
Durham Goode
c17ec690c9
Change cache key to use a two character prefix for directories.
...
Some file systems can't handle having a ton of files/directories inside a
directory, so this splits up all our files amongst directories.
2013-09-06 13:28:15 -07:00
Durham Goode
4d70ed4fce
Fix a bug with status prefetching in merge scenarios
2013-09-04 19:07:01 -07:00
Durham Goode
1391bcc1c6
Add a test suite
2013-09-03 20:03:43 -07:00
Durham Goode
29ba0e9bc1
If cacheprocess is not set, always use the fallback
...
This allows tests to run without a memcache process.
2013-09-03 20:03:24 -07:00
Durham Goode
4a5c8d437d
Fix hg diff when fnode is None
2013-09-03 11:39:16 -07:00
Durham Goode
5ec22c7093
Prevent verify from checking filelogs
2013-08-30 15:43:22 -07:00
Durham Goode
b685d98f57
Prefetch revisions before a diff
2013-08-30 11:27:09 -07:00
Durham Goode
4edeed8417
Prefetch lookup set during hg status
2013-08-30 11:09:19 -07:00
Durham Goode
3c879ed1a8
Enable efficient pulling between shallow repos
2013-08-28 18:51:01 -07:00
Durham Goode
d0738cc010
Make cache files owned by uid/svnuser
2013-08-20 12:59:33 -07:00
Durham Goode
96bbab8f7a
Fix shared cache permissions to be g+w
2013-08-15 10:59:11 -07:00
Durham Goode
f68d704603
Enable hg gc from outside a repo
2013-08-15 10:56:25 -07:00
Durham Goode
bf7491936d
Fix hg diff with added or moved files.
...
A workingctx produces manifest entries with nullid+'a' or nullid+'m'
for any added or modified files. The extension was trying to prefetch
these but they didn't exist and caused an error. Luckily they are length
42 so we can check for them and not prefetch them.
2013-07-24 22:16:50 -07:00
Durham Goode
a5828ce7a3
Add newline to end of debug output
2013-07-24 18:49:14 -07:00
Durham Goode
9df6e83354
Prevent 'running ssh...' in stdout when run with -v
2013-07-24 13:20:13 -07:00
Durham Goode
3cbc732b42
Fix fallbackrepo not being present during the clone after update.
...
Make debug message get sent to stderr instead of stdout.
2013-07-23 19:06:40 -07:00
Durham Goode
6675d8181b
Make smartlog more robust on crazy repos
...
If the repo had a lots of heads, the ancestor revset would previously cause
a stack overflow in the revset parser. I changed it to not use revsets at all.
If the repo had a merge, the ancestor walk code was sometimes adding the
entire repo to the rev list. I changed it to only add nodes that are > the
common ancestor.
Added smartlog to the default pager attend list.
2013-07-20 20:30:11 -07:00
Durham Goode
77d31b12e4
Add hit/miss ratio to debug output
2013-07-01 17:37:55 -07:00
Durham Goode
9642a8a2d6
Add remotefilelog.fallbackrepo config
2013-07-01 16:28:34 -07:00
Durham Goode
58ff8f91f6
Prefetch before copy tracing
2013-07-01 15:35:08 -07:00
Durham Goode
027a1d4ab8
Set umask before writing files to shared cache
2013-06-28 17:12:20 -07:00
Durham Goode
8e037436cb
Add gc command for cleaning up the cache
2013-06-28 15:57:15 -07:00
Durham Goode
6e3494bf98
Add incoming hook for producing file blobs
2013-06-27 15:14:22 -07:00
Durham Goode
1ac9b8cbc1
Move requirement string to a variable
2013-06-26 14:37:59 -07:00
Durham Goode
3e6b7810df
Override bundle10.generatefiles instead of prune
2013-06-25 13:26:24 -07:00
Durham Goode
bb32b111bf
Change contract between extension and memcache process to allow arbitrary key lengths and customizable cache paths
2013-06-25 11:38:48 -07:00
Durham Goode
6536d87bc0
Prevent pull from sending files to shallow clones
2013-06-23 13:50:22 -07:00
Durham Goode
84b481de56
Add option for server cache location.
...
Change _callstream wrapper to only run on client.
2013-06-21 13:22:18 -07:00
Durham Goode
f16a3a4134
Rename to remotefilelog since shallowrepo is already taken
2013-06-21 10:14:29 -07:00
Durham Goode
f39da261ad
Install to site-packages/ instead of site-packages/hgext
2013-06-20 14:56:01 -07:00
Durham Goode
1b3fc0b767
Disable smartlog colors in other log commands
2013-06-20 13:21:06 -07:00
Durham Goode
29a883af7c
Rename package to fbhgext
2013-06-20 12:57:57 -07:00
Durham Goode
26387ef0c1
Initial commit: fbamend, smartlog
2013-06-20 12:16:36 -07:00
Durham Goode
ff1e4bb8e7
Fix bundle revision ordering.
...
Implement remotefilectx.ancestor
2013-06-12 17:56:18 -07:00
Durham Goode
78ce8beeb3
Add make/setup files. Move source into a subdirectory.
2013-06-12 13:42:44 -07:00
Durham Goode
7d592e55d3
Comment on the use of tags
2013-06-11 17:24:35 -07:00
Durham Goode
a3f328265c
Handle case of filenodes having multiple linknodes over time.
2013-06-11 16:41:55 -07:00
Durham Goode
a10ced9c1c
Refactor client server interaction to not use a custom hello.
...
Previously we replaced the hello command with hello_shallow to communicate
the shallow capability to the server. This isn't particularly mercurialy,
so now we create a *_shallow command for each command that could be shallow.
2013-06-11 13:34:39 -07:00
Durham Goode
4a768a3915
Use memcache as the store
2013-06-07 15:13:58 -07:00
Durham Goode
c116aa3a58
Major refactor and bug fixes
...
Refactors a lot of the behavior into separate classes, like shallowrepo,
shallowbundler, etc. This maps more closely to the existing classes in
mercurial. Also we no longer replace several classes (like filelog, and
filectx).
Fix a ton of bugs found by running the tests. Examples: hg log foo.txt,
unbundling, hg log -G foo.txt, annotate, etc.
2013-05-20 15:03:07 -07:00
Durham Goode
4b5967096a
Wrap filectx and filelog
2013-05-17 18:08:53 -07:00
Durham Goode
ef5a6f59b4
Include ancestors with file contents
2013-05-14 19:48:05 -07:00
Durham Goode
20e59af1e6
Add incoming changegroup filelogs to the localdata store
2013-05-06 17:50:36 -07:00