You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Greg Stein <gs...@gmail.com> on 2012/10/11 00:31:54 UTC
Re: svn commit: r1396826 - /subversion/trunk/subversion/libsvn_fs_fs/tree.c
Eh? I thought revnums were longs. Not 64-bit (except by happenstance)
On Oct 10, 2012 3:06 PM, <hw...@apache.org> wrote:
> Author: hwright
> Date: Wed Oct 10 22:05:34 2012
> New Revision: 1396826
>
> URL: http://svn.apache.org/viewvc?rev=1396826&view=rev
> Log:
> Avoid integer size mismatch warning.
>
> * subversion/libsvn_fs_fs/tree.c
> (cache_entry_t, cache_lookup): Adjust hash_value to match the size of the
> revision number, which is an input to the hash value.
>
> Modified:
> subversion/trunk/subversion/libsvn_fs_fs/tree.c
>
> Modified: subversion/trunk/subversion/libsvn_fs_fs/tree.c
> URL:
> http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/tree.c?rev=1396826&r1=1396825&r2=1396826&view=diff
>
> ==============================================================================
> --- subversion/trunk/subversion/libsvn_fs_fs/tree.c (original)
> +++ subversion/trunk/subversion/libsvn_fs_fs/tree.c Wed Oct 10 22:05:34
> 2012
> @@ -148,7 +148,7 @@ typedef struct cache_entry_t
> {
> /* hash value derived from PATH, REVISION.
> Used to short-circuit failed lookups. */
> - apr_uint32_t hash_value;
> + apr_uint64_t hash_value;
>
> /* revision to which the NODE belongs */
> svn_revnum_t revision;
> @@ -337,7 +337,7 @@ cache_lookup( fs_fs_dag_cache_t *cache
> {
> apr_size_t i, bucket_index;
> apr_size_t path_len = strlen(path);
> - apr_uint32_t hash_value = revision;
> + apr_uint64_t hash_value = revision;
>
> /* optimistic lookup: hit the same bucket again? */
> cache_entry_t *result = &cache->buckets[cache->last_hit];
>
>
>
Re: svn commit: r1396826 - /subversion/trunk/subversion/libsvn_fs_fs/tree.c
Posted by Hyrum K Wright <hy...@hyrumwright.org>.
Updated in r1397331.
On Thu, Oct 11, 2012 at 1:09 AM, Ben Reser <be...@reser.org> wrote:
> They are indeed. It's always bothered me that we didn't use a stable
> type for our revnums:
>
> $ grep svn_revnum_t subversion/include/svn_types.h | grep typedef
> typedef long int svn_revnum_t;
>
> On Wed, Oct 10, 2012 at 3:31 PM, Greg Stein <gs...@gmail.com> wrote:
>> Eh? I thought revnums were longs. Not 64-bit (except by happenstance)
>>
>> On Oct 10, 2012 3:06 PM, <hw...@apache.org> wrote:
>>>
>>> Author: hwright
>>> Date: Wed Oct 10 22:05:34 2012
>>> New Revision: 1396826
>>>
>>> URL: http://svn.apache.org/viewvc?rev=1396826&view=rev
>>> Log:
>>> Avoid integer size mismatch warning.
>>>
>>> * subversion/libsvn_fs_fs/tree.c
>>> (cache_entry_t, cache_lookup): Adjust hash_value to match the size of
>>> the
>>> revision number, which is an input to the hash value.
>>>
>>> Modified:
>>> subversion/trunk/subversion/libsvn_fs_fs/tree.c
>>>
>>> Modified: subversion/trunk/subversion/libsvn_fs_fs/tree.c
>>> URL:
>>> http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/tree.c?rev=1396826&r1=1396825&r2=1396826&view=diff
>>>
>>> ==============================================================================
>>> --- subversion/trunk/subversion/libsvn_fs_fs/tree.c (original)
>>> +++ subversion/trunk/subversion/libsvn_fs_fs/tree.c Wed Oct 10 22:05:34
>>> 2012
>>> @@ -148,7 +148,7 @@ typedef struct cache_entry_t
>>> {
>>> /* hash value derived from PATH, REVISION.
>>> Used to short-circuit failed lookups. */
>>> - apr_uint32_t hash_value;
>>> + apr_uint64_t hash_value;
>>>
>>> /* revision to which the NODE belongs */
>>> svn_revnum_t revision;
>>> @@ -337,7 +337,7 @@ cache_lookup( fs_fs_dag_cache_t *cache
>>> {
>>> apr_size_t i, bucket_index;
>>> apr_size_t path_len = strlen(path);
>>> - apr_uint32_t hash_value = revision;
>>> + apr_uint64_t hash_value = revision;
>>>
>>> /* optimistic lookup: hit the same bucket again? */
>>> cache_entry_t *result = &cache->buckets[cache->last_hit];
>>>
>>>
>>
Re: svn commit: r1396826 - /subversion/trunk/subversion/libsvn_fs_fs/tree.c
Posted by Ben Reser <be...@reser.org>.
They are indeed. It's always bothered me that we didn't use a stable
type for our revnums:
$ grep svn_revnum_t subversion/include/svn_types.h | grep typedef
typedef long int svn_revnum_t;
On Wed, Oct 10, 2012 at 3:31 PM, Greg Stein <gs...@gmail.com> wrote:
> Eh? I thought revnums were longs. Not 64-bit (except by happenstance)
>
> On Oct 10, 2012 3:06 PM, <hw...@apache.org> wrote:
>>
>> Author: hwright
>> Date: Wed Oct 10 22:05:34 2012
>> New Revision: 1396826
>>
>> URL: http://svn.apache.org/viewvc?rev=1396826&view=rev
>> Log:
>> Avoid integer size mismatch warning.
>>
>> * subversion/libsvn_fs_fs/tree.c
>> (cache_entry_t, cache_lookup): Adjust hash_value to match the size of
>> the
>> revision number, which is an input to the hash value.
>>
>> Modified:
>> subversion/trunk/subversion/libsvn_fs_fs/tree.c
>>
>> Modified: subversion/trunk/subversion/libsvn_fs_fs/tree.c
>> URL:
>> http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/tree.c?rev=1396826&r1=1396825&r2=1396826&view=diff
>>
>> ==============================================================================
>> --- subversion/trunk/subversion/libsvn_fs_fs/tree.c (original)
>> +++ subversion/trunk/subversion/libsvn_fs_fs/tree.c Wed Oct 10 22:05:34
>> 2012
>> @@ -148,7 +148,7 @@ typedef struct cache_entry_t
>> {
>> /* hash value derived from PATH, REVISION.
>> Used to short-circuit failed lookups. */
>> - apr_uint32_t hash_value;
>> + apr_uint64_t hash_value;
>>
>> /* revision to which the NODE belongs */
>> svn_revnum_t revision;
>> @@ -337,7 +337,7 @@ cache_lookup( fs_fs_dag_cache_t *cache
>> {
>> apr_size_t i, bucket_index;
>> apr_size_t path_len = strlen(path);
>> - apr_uint32_t hash_value = revision;
>> + apr_uint64_t hash_value = revision;
>>
>> /* optimistic lookup: hit the same bucket again? */
>> cache_entry_t *result = &cache->buckets[cache->last_hit];
>>
>>
>