[baseten-users] Unicode strings in BaseTen

Erik Aderstedt erik at aderstedt.se
Mon May 18 15:17:22 EEST 2009


Hi!

I'm having issues with Unicode strings in BaseTen. I created a db  
according to the BaseTen manual, with en_US.UTF-8 as the default  
locale. When inserting strings with some non-ASCII characters, like  
'Ö', the 'Ö' (Unicode 0x00D6) is translated to two characters: 'O' and  
then Unicode 0x0308 (diaresis/umlaut). This appears to be the same  
string, but results in a different hash value for the string.

This translation seems to happen when I insert new entities with - 
[BXDatabaseContext createObjectForEntity:withFieldValues:error:] and  
supply the string in the field values dictionary. The translation does  
not happen when setting the value of the property directly with - 
[BXDatabaseObject setValue:ForKey:].

I'm not 100% sure of the regression here, or even that BaseTen is at  
fault. I did not experience this problem before swapping out Core Data  
for BaseTen, but the error may still be due to my modifications. I'm  
running this on both PPC and Intel, and things are unfortunately not  
very easy to debug. I'm still investigating, but thought I'd ask  
anyway: Has anyone seen anything like this?

I'm using 1.6.2.

Regards,
Erik Aderstedt
Aderstedt Software AB 


More information about the baseten-users mailing list