Ukázalo se, že to bylo způsobeno chybou v persistent-mysql
balíček, který je nyní opraven v persistent-mysql-2.3
.
Zde je hlavní důvod pro všechny zájemce:
Knihovna MySQL C (a rozšíření Haskell mysql
balíček, který persistent-mysql
závisí na) nerozlišuje mezi binárními a textovými daty na úrovni typu. Pokud jste tedy uložili TEXT
hodnotu do databáze, když ji vyhledával persistent, zdálo se, že jde o binární data (PersistByteString
).
Toto bylo opraveno v #451 kontrolou znakové sady sloupce, což dokumentace MySQL API doporučuje jako vhodné řešení.
Další podrobnosti najdete v žádosti o stažení nebo v tomto problému .
Děkujeme za položení této otázky; Jinak bych si neuvědomil, že tam je chyba.