<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src/pack.c, branch cmn/config-get-path</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>Plug some leaks</title>
<updated>2014-12-29T16:18:49+00:00</updated>
<author>
<name>Jacques Germishuys</name>
<email>jacquesg@striata.com</email>
</author>
<published>2014-12-24T09:42:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=6f73e02605f57db20b8713053d55fef4b534f07b'/>
<id>6f73e02605f57db20b8713053d55fef4b534f07b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for misleading "missing delta bases" error - Fix #2721.</title>
<updated>2014-11-21T20:05:34+00:00</updated>
<author>
<name>Ravindra Patel</name>
<email>ravindp@microsoft.com</email>
</author>
<published>2014-11-20T17:07:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=ec7e680c6c56897bc0881cbcd14c2f1e9ac624c5'/>
<id>ec7e680c6c56897bc0881cbcd14c2f1e9ac624c5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed some useless variable assignments</title>
<updated>2014-10-27T16:19:07+00:00</updated>
<author>
<name>Pierre-Olivier Latour</name>
<email>pol@mac.com</email>
</author>
<published>2014-10-26T17:29:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=ea66215d87a9cb588d01040f3191236babdbd53f'/>
<id>ea66215d87a9cb588d01040f3191236babdbd53f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Silence uninitialized warning</title>
<updated>2014-09-26T10:12:08+00:00</updated>
<author>
<name>Jacques Germishuys</name>
<email>jacquesg@striata.com</email>
</author>
<published>2014-09-25T13:29:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=e640a77c9f1b0fb111553b5ee3c3be7c51d11bd5'/>
<id>e640a77c9f1b0fb111553b5ee3c3be7c51d11bd5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Several CppCat warnings fixed</title>
<updated>2014-09-02T21:01:25+00:00</updated>
<author>
<name>Arkady Shapkin</name>
<email>arkadiy_s@inbox.ru</email>
</author>
<published>2014-09-02T21:01:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=5cd81bb3d88218d42dd431f2c5011dfa84c287c7'/>
<id>5cd81bb3d88218d42dd431f2c5011dfa84c287c7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: return the correct final offset</title>
<updated>2014-08-26T13:09:47+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-08-26T13:09:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=b3d3459f32805a1290c5f1811b26a3e9e51a10df'/>
<id>b3d3459f32805a1290c5f1811b26a3e9e51a10df</id>
<content type='text'>
The callers of git_packfile_unpack() expect the obj_offset argument to
be set to the beginning of the next object. We were mistakenly returning
the the offset of the object's data, which causes the CRC function to
try to use the wrong offset.

Set obj_offset to curpos instead of elem-&gt;offset to point to the next
element and bring back expected behaviour.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The callers of git_packfile_unpack() expect the obj_offset argument to
be set to the beginning of the next object. We were mistakenly returning
the the offset of the object's data, which causes the CRC function to
try to use the wrong offset.

Set obj_offset to curpos instead of elem-&gt;offset to point to the next
element and bring back expected behaviour.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: free the new pack struct if we fail to insert</title>
<updated>2014-06-25T19:20:39+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-25T19:20:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=5e0f47c3753c5ddd206ab3af6d2a231ad3da39c4'/>
<id>5e0f47c3753c5ddd206ab3af6d2a231ad3da39c4</id>
<content type='text'>
If we fail to insert the packfile in the map, make sure to free it.

This makes the free function only attempt to remove its mwindows from
the global list if we have opened the packfile to avoid accessing the
list unlocked.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If we fail to insert the packfile in the map, make sure to free it.

This makes the free function only attempt to remove its mwindows from
the global list if we have opened the packfile to avoid accessing the
list unlocked.
</pre>
</div>
</content>
</entry>
<entry>
<title>Share packs across repository instances</title>
<updated>2014-06-23T19:50:36+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-18T15:13:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=b3b66c57930358467395fc3a5bca87edefd25cf4'/>
<id>b3b66c57930358467395fc3a5bca87edefd25cf4</id>
<content type='text'>
Opening the same repository multiple times will currently open the same
file multiple times, as well as map the same region of the file multiple
times. This is not necessary, as the packfile data is immutable.

Instead of opening and closing packfiles directly, introduce an
indirection and allocate packfiles globally. This does mean locking on
each packfile open, but we already use this lock for the global mwindow
list so it doesn't introduce a new contention point.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Opening the same repository multiple times will currently open the same
file multiple times, as well as map the same region of the file multiple
times. This is not necessary, as the packfile data is immutable.

Instead of opening and closing packfiles directly, introduce an
indirection and allocate packfiles globally. This does mean locking on
each packfile open, but we already use this lock for the global mwindow
list so it doesn't introduce a new contention point.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: init the cache on packfile alloc</title>
<updated>2014-05-15T17:59:05+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-05-15T17:59:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=649214be4bd9d8239787e3af7e6d877955d09e11'/>
<id>649214be4bd9d8239787e3af7e6d877955d09e11</id>
<content type='text'>
When running multithreaded, it is not enough to check for the offmap
allocation. Move the call to cache_init() to packfile allocation so we
can be sure it is always allocated free of races.

This fixes #2355.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When running multithreaded, it is not enough to check for the offmap
allocation. Move the call to cache_init() to packfile allocation so we
can be sure it is always allocated free of races.

This fixes #2355.
</pre>
</div>
</content>
</entry>
<entry>
<title>pack: don't forget to cache the base object</title>
<updated>2014-05-13T00:48:52+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-05-12T00:01:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=c968ce2c2c49ca7a559ecb8f7014f777c3a8a5f3'/>
<id>c968ce2c2c49ca7a559ecb8f7014f777c3a8a5f3</id>
<content type='text'>
The base object is a good cache candidate, so we shouldn't forget to add
it to the cache.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The base object is a good cache candidate, so we shouldn't forget to add
it to the cache.
</pre>
</div>
</content>
</entry>
</feed>
