I have some UTF-8 data and when I try to store it in a DBM::Deep-tied hash I get a "wide character in print" error in DBM::Deep::File.pm. It occurs at line 193, which is a print to the filehandle which has been opened to store the dbm database on disk. The filehandle has been opened with sysopen, using every available means to ensure that the file is open in "binary" mode.
It seems to me, perhaps naively, that this should work; and further, I would have thought that this would have been a scenario covered by the test cases. (I should check.)
Does anyone have any idea how I can get around this?
Are there DBM::Deep options I can set?
Should I open the file myself and pass the handle to DBM::Deep? If so, how exactly should I do that?
I guess I should also ask:
Are there any other modules I could use for managing a large data structure on disk rather than in memory?