I am using the ODBC connector with .NET/C# and experiencing the following:
Doing a select which includes UNCOMPRESS(msgtext) where msgtext is a BLOB
column (created by using COMPRESS()), one particular row yields NULL for the
UNCOMPRESS(msgtext) value. msgtext is not null for that column so I have to
investigate why uncompress failed (MySQL admin tools also show NULL for
uncompress(msgtext) for that column so it's not a .NET or connector issue).
But what concerns me as well is the following: ALL rows past this one
returned in this query also yield NULL! As if something decided that if
uncompress(msgtext) was NULL for one entry, we might as well return NULL for
all others past that point ...
If I restart a query to select past that row, or excluding all rows where
uncompress(msgtext) is null, all is well.
As a secondary concern: if uncompress() failed me once, I am starting to be
concerned about the dependency I have created on MySQL UNCOMPRESS() ... is
the compressed format documented somewhere so that in the worst case I could
do the uncompression myself is "something" happens to MySQL?