<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src/pack.h, branch signatures-2</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/'/>
<entry>
<title>indexer: properly free the packfile resources</title>
<updated>2013-01-12T17:44:58+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2013-01-12T17:38:19+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=96c9b9f0e538c7dd2f1041f471dd8a9a587bc43f'/>
<id>96c9b9f0e538c7dd2f1041f471dd8a9a587bc43f</id>
<content type='text'>
The indexer needs to call the packfile's free function so it takes care of
freeing the caches.

We still need to close the mwf descriptor manually so we can rename the
packfile into its final name on Windows.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The indexer needs to call the packfile's free function so it takes care of
freeing the caches.

We still need to close the mwf descriptor manually so we can rename the
packfile into its final name on Windows.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "pack: packfile_free -&gt; git_packfile_free and use it in the indexers"</title>
<updated>2013-01-11T19:17:21+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2013-01-11T19:15:06+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=80d647adc31e3c8721dc578140494f916463f623'/>
<id>80d647adc31e3c8721dc578140494f916463f623</id>
<content type='text'>
This reverts commit f289f886cb81bb570bed747053d5ebf8aba6bef7, which
makes the tests fail on Windows. Revert until we can figure out a
solution.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit f289f886cb81bb570bed747053d5ebf8aba6bef7, which
makes the tests fail on Windows. Revert until we can figure out a
solution.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: That declaration</title>
<updated>2013-01-11T17:21:09+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2013-01-11T17:21:09+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=d0b14cea0e1ff09af83a801c1a9cf1a431d46d0c'/>
<id>d0b14cea0e1ff09af83a801c1a9cf1a431d46d0c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: limit the amount of memory the base delta cache can use</title>
<updated>2013-01-11T16:32:59+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2012-12-21T12:46:48+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=0ed756200693aed93c4c9fb4f8776196fec5a971'/>
<id>0ed756200693aed93c4c9fb4f8776196fec5a971</id>
<content type='text'>
Currently limited to 16MB (like git) and to objects up to 1MB in
size.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently limited to 16MB (like git) and to objects up to 1MB in
size.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: abstract out the cache into its own functions</title>
<updated>2013-01-11T16:32:59+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2012-12-21T09:59:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=c8f79c2bdf9dd237d5c407526bcfc20d4eff5e64'/>
<id>c8f79c2bdf9dd237d5c407526bcfc20d4eff5e64</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: refcount entries and add a mutex around cache access</title>
<updated>2013-01-11T15:55:37+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2012-12-20T06:55:51+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=525d961c2442f3947517201113e375375fcf4280'/>
<id>525d961c2442f3947517201113e375375fcf4280</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: introduce a delta base cache</title>
<updated>2013-01-11T15:55:37+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2012-12-19T15:48:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=c0f4a0118dd3821447512bf3b404be69c773eaf8'/>
<id>c0f4a0118dd3821447512bf3b404be69c773eaf8</id>
<content type='text'>
Many delta bases are re-used. Cache them to avoid inflating the same
data repeatedly.

This version doesn't limit the amount of entries to store, so it can
end up using a considerable amound of memory.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Many delta bases are re-used. Cache them to avoid inflating the same
data repeatedly.

This version doesn't limit the amount of entries to store, so it can
end up using a considerable amound of memory.
</pre>
</div>
</content>
</entry>
<entry>
<title>update copyrights</title>
<updated>2013-01-08T23:31:27+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2013-01-08T23:07:25+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=359fc2d241ac407bdf9bf0d28715705f01ca6360'/>
<id>359fc2d241ac407bdf9bf0d28715705f01ca6360</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #1091 from carlosmn/stream-object</title>
<updated>2012-12-07T17:40:21+00:00</updated>
<author>
<name>Vicent Martí</name>
<email>vicent@github.com</email>
</author>
<published>2012-12-07T17:40:21+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=0249a5032ef6fc27d1f2b974aafdb38ab61f81bc'/>
<id>0249a5032ef6fc27d1f2b974aafdb38ab61f81bc</id>
<content type='text'>
Indexer speedup with large objects</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Indexer speedup with large objects</pre>
</div>
</content>
</entry>
<entry>
<title>pack: add git_packfile_resolve_header</title>
<updated>2012-12-02T23:39:17+00:00</updated>
<author>
<name>David Michael Barr</name>
<email>b@rr-dav.id.au</email>
</author>
<published>2012-11-30T02:33:30+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=44f9f547972efecd326fbf6e92ae1297cc9e1813'/>
<id>44f9f547972efecd326fbf6e92ae1297cc9e1813</id>
<content type='text'>
To paraphrase @peff:

You can get both size and type from a packed object reasonably cheaply.
If you have:

* An object that is not a delta; both type and size are available in the
  packfile header.
* An object that is a delta. The packfile type will be OBJ_*_DELTA, and
  you have to resolve back to the base to find the real type. That means
  potentially a lot of packfile index lookups, but each one is
  relatively cheap. For the size, you inflate the first few bytes of the
  delta, whose header will tell you the resulting size of applying the
  delta to the base.

For simplicity, we just decompress the whole delta for now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To paraphrase @peff:

You can get both size and type from a packed object reasonably cheaply.
If you have:

* An object that is not a delta; both type and size are available in the
  packfile header.
* An object that is a delta. The packfile type will be OBJ_*_DELTA, and
  you have to resolve back to the base to find the real type. That means
  potentially a lot of packfile index lookups, but each one is
  relatively cheap. For the size, you inflate the first few bytes of the
  delta, whose header will tell you the resulting size of applying the
  delta to the base.

For simplicity, we just decompress the whole delta for now.
</pre>
</div>
</content>
</entry>
</feed>
