Re: Using bytea field... - Mailing list pgsql-general

From Sim Zacks
Subject Re: Using bytea field...
Date
Msg-id 4D776414.5070403@compulab.co.il
Whole thread Raw
In response to Re: Using bytea field...  (Andy Colson <andy@squeakycode.net>)
Responses Re: Using bytea field...  (Sim Zacks <sim@compulab.co.il>)
Re: Using bytea field...  (rsmogura <rsmogura@softperience.eu>)
Re: Using bytea field...  (Andy Colson <andy@squeakycode.net>)
List pgsql-general
MD5 is not collision resistant (using the immortal words of wikipedia
http://en.wikipedia.org/wiki/MD5).

This means that it is possible that multiple images will return the same
md5 hash.

The question is, if it screws up and says that an image already exists
and then returns a different image when querying for it, how bad would
that be.


I've seen a lot of discussions in the past few years about how
problematic the md5 approach is.


Sim


On 03/08/2011 09:06 PM, Andy Colson wrote:

> On 3/8/2011 12:28 PM, Andre Lopes wrote:
>> Hi,
>>
>> I'm using a bytea field to store small images in base64. I need to
>> know if I can compare bytea rows for equality. To know for example if
>> the file already exists in the database, this is possible with bytea?
>>
>> Best Regads,
>>
>
> You dont need to use both base64 and bytea.  You can store base64 in
> text field... or just store the photo as-is into bytea.
>
> To answer your question: it would be faster if you computed an md5 (or
> sha or whatever) and stored it in the db, then you could check to see
> if an image exists by searching for the md5, which would be way
> faster, an send a lot less data over the wire.
>
> -Andy
>


pgsql-general by date:

Previous
From: Michael Graham
Date:
Subject: Transaction wraparound vacuum synchronicity
Next
From: Sim Zacks
Date:
Subject: Re: Using bytea field...