升级后Bugzilla附件数据损坏

时间:2016-04-08 22:40:53

标签: mysql perl unicode bugzilla

我最近将Bugzilla安装从3.6.4升级到5.0.1,并且在附加到错误的二进制文件(Word文档,PNG文件等)中出现了损坏。

后端数据库是带有UTF-8编码的MySQL 5.0.75,附件存储在名为attach_data(InnoDB类型)的表中,特定列是LONGBLOB。

以PNG文件为例,症状如此显示。如果您在控制台中查看类似文本文件的PNG文件,您会看到前两行看起来像:

37,903

在Bugzilla的升级版本中,数据已在数据库中更改,前两行如下所示:

504 MB

这遵循文件中的模式,其中任何build字符已替换为每个附加文件中的<89>PNG ^Z 字符。其他字符如<U+0089>PNG ^Z 似乎有效,因为他们没有&#34; 00&#34;低位。升级期间似乎发生了此问题,并且还会继续向Bugzilla添加新的错误和附件。

我已经查看了新Bugzilla安装中的所有设置,并且没有看到任何可能导致此问题的明显设置。原始安装使用了古老版本的Perl:

"<XY>"

新安装使用的是稍微不那么古老的Perl版本:

"<U+00XY>"

任何人都可以想到我可能会忽略的其他设置或操作系统配置吗?如果有一种方法可以修复将新附件上传到数据库的方法,有没有办法将数据库中的现有附件转换为使用"<U+1234>"字符回到预期的This is perl, v5.8.9 built for i386-freebsd-64int (with 1 registered patch, see perl -V for more detail) 个字符?< / p>

谢谢你,
格雷格

0 个答案:

没有答案