CakePHPでデータを入力したものが配列だったため、それをシリアライズしてDBに保存するという仕組みを構築していました。

その配列データはレコードが増えるごとに徐々に大きくなっていきました。でも保存は可能。

しかしある途中からデータは保存されていませんでした。

さらに取り出そうとしたら以下のようなエラーが発生しました。

unserialize() [function.unserialize]: Error at offset 252 of 255 bytes

このエラーが発生する前までは保存ができ、途中からできず、さらにエラー表示。

ただ、解決は意外と簡単でした。それはそのデータを保存する形式がvarcher型で255に設定していたからです。

Varcher型からLongText型に変更し、再度テストすると無事保存でき、取り出したあとのアンシリアライズも成功。データがどのような量になるか考慮しながら型を決める必要があることを再度確認させられました。