Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 10 of 17 total
Thread 4.28 - Blob field problems
Mon, Jun 22 2009 10:38 AMPermanent Link

Bill Edwards
4.28 B2 (or B1): Some NULL blob fields are reporting IsNull as false. In each case BlobSize is zero. This is exascerbated by the fact that, if I uninstall 4.28,
reinstall 4.27 and recompile, the application starts throwing exceptions whenever any blob field is accessed.

This is not good.
Mon, Jun 22 2009 1:28 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Bill,

<< 4.28 B2 (or B1): Some NULL blob fields are reporting IsNull as false. In
each case BlobSize is zero. This is exascerbated by the fact that, if I
uninstall 4.28, reinstall 4.27 and recompile, the application starts
throwing exceptions whenever any blob field is accessed. >>

Per the email that we sent out, *do not* mix 4.27 and 4.28 applications on
the same tables.  Doing so can corrupt the BLOB data, because the design of
the BLOB updating code was changed in 4.28.  Here is the text of that email
in case you did not get it:

"There was a serious omission in the release notes for DBISAM 4.28 that I
wanted to correct.  DBISAM 4.28 introduces a new design for the BLOB
reading/writing that is not compatible with 4.27 or earlier.  Therefore, it
is extremely important that you do not mix DBISAM 4.28 client applications
with DBISAM 4.27 or earlier client applications.  Mixing the two versions
can cause improper truncation of BLOB data, and that includes using a 4.27
client application on any data that has been updated by DBISAM 4.28, even if
it is not concurrently.  The issue is that 4.27 and earlier versions
recylcle BLOB blocks on a per-block basis, whereas 4.28 and higher versions
recycle BLOB blocks on a per-row basis."

There is a new 4.28 B3 coming out today that fixes one issue with the BLOB
updating in 4.28 B2 and earlier, and another with the repair functionality
and BLOBs for 4.28 B2 and earlier.  The first issue was actually present in
4.27 and earlier, but the redesign in 4.28 brought the problem out in the
clear and made it occur more often.  The repair fix will allow you to repair
any table that has issues due to mixing 4.27 and 4.28 versions, although
there is no guarantee that you won't lose some data, per the above email
text.

--
Tim Young
Elevate Software
www.elevatesoft.com

Mon, Jun 22 2009 9:27 PMPermanent Link

"Jerry Clancy"
Geez, I wish I had been aware of this earlier today. I upgraded this
afternoon from 4.27 to build 3 of 4.28 and now, it appears, I had better
spend most of the evening rebuilding evey app in house, as they all use memo
fields and pretty much share all the same databases. I didn't install build
1 so I never read the notice. I'd probably upgrade anyway but not this week,
our busiest of the year with legislative activity.

Jerry

"Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in message
news:0BB35622-915E-4A78-A2FC-A0F4ECD43DEA@news.elevatesoft.com...
> Bill,
>
> << 4.28 B2 (or B1): Some NULL blob fields are reporting IsNull as false.
> In each case BlobSize is zero. This is exascerbated by the fact that, if I
> uninstall 4.28, reinstall 4.27 and recompile, the application starts
> throwing exceptions whenever any blob field is accessed. >>
>
> Per the email that we sent out, *do not* mix 4.27 and 4.28 applications on
> the same tables.  Doing so can corrupt the BLOB data, because the design
> of the BLOB updating code was changed in 4.28.  Here is the text of that
> email in case you did not get it:
>
> "There was a serious omission in the release notes for DBISAM 4.28 that I
> wanted to correct.  DBISAM 4.28 introduces a new design for the BLOB
> reading/writing that is not compatible with 4.27 or earlier.  Therefore,
> it
> is extremely important that you do not mix DBISAM 4.28 client applications
> with DBISAM 4.27 or earlier client applications.  Mixing the two versions
> can cause improper truncation of BLOB data, and that includes using a 4.27
> client application on any data that has been updated by DBISAM 4.28, even
> if it is not concurrently.  The issue is that 4.27 and earlier versions
> recylcle BLOB blocks on a per-block basis, whereas 4.28 and higher
> versions recycle BLOB blocks on a per-row basis."
>
> There is a new 4.28 B3 coming out today that fixes one issue with the BLOB
> updating in 4.28 B2 and earlier, and another with the repair functionality
> and BLOBs for 4.28 B2 and earlier.  The first issue was actually present
> in 4.27 and earlier, but the redesign in 4.28 brought the problem out in
> the clear and made it occur more often.  The repair fix will allow you to
> repair any table that has issues due to mixing 4.27 and 4.28 versions,
> although there is no guarantee that you won't lose some data, per the
> above email text.
>
> --
> Tim Young
> Elevate Software
> www.elevatesoft.com
>
Mon, Jun 22 2009 9:56 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Jerry,

<< Geez, I wish I had been aware of this earlier today. >>

We sent out an email early last week regarding the mixing of 4.27 and 4.28.
Did you not receive the email ?

Also, as a general rule, if there are breaking changes then they will be in
a minor release, but never in just a new build.

--
Tim Young
Elevate Software
www.elevatesoft.com

Mon, Jun 22 2009 10:22 PMPermanent Link

"Jerry Clancy"
No, Tim, I just painstakingly went through my In box all the way back to
mid-May and got all the build release notices for EDB and DBISAM, none of
which contained the warning, but no separate messages. Of couse, it's
possible I missed it because scanning in baskets can be eye numbing.

This NG had a few posts re BLOBs but nothing on cross releases. However,
because I didn't initially install 4.28 I might have ignored subsequent
messages about it.

I only rebuilt one key app so far on the development system and haven't
deployed it yet to the server, so I'm going to hold off rebuilding other
apps until I have a window and just hope that we don't find a bug that
forces a rebuild.

To be honest, I didn't think about it as upgrading your products is usually
painless. In fact, you have one of the best installs for D5 of any of the
products I use, in my opinion, anyway.

Jerry

"Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in message
news:854F846F-C070-4ADF-AAAB-0135A6373B0D@news.elevatesoft.com...
> Jerry,
>
> << Geez, I wish I had been aware of this earlier today. >>
>
> We sent out an email early last week regarding the mixing of 4.27 and
> 4.28. Did you not receive the email ?
>
> Also, as a general rule, if there are breaking changes then they will be
> in a minor release, but never in just a new build.
>
> --
> Tim Young
> Elevate Software
> www.elevatesoft.com
>
Tue, Jun 23 2009 9:17 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Jerry,

<< No, Tim, I just painstakingly went through my In box all the way back to
mid-May and got all the build release notices for EDB and DBISAM, none of
which contained the warning, but no separate messages. Of couse, it's
possible I missed it because scanning in baskets can be eye numbing. >>

Crap, it turns out that the wrong mailing list was used for the email.  It
excluded DBISAM customers that are also ElevateDB customers.  I'll make sure
that another one is sent out immediately.

My apologies.

--
Tim Young
Elevate Software
www.elevatesoft.com

Tue, Jun 23 2009 9:41 AMPermanent Link

Abdon
Tim,  I dint recieve the Email either. I did buy elevatedb so that probably explains it.

Can you clarify the issue a bit more?

All my apps are running 4.27.5. I have  had troubles with blobs for as long as I can remember. I constantly have to repair the one table where blobs
are used extensively.  Will the new 4.28.3 work with previous versions of the server and/or mixed with 4.27 clients?
Does this mean you found a bug in the blobs processing which could potentially fix what i'm experiencing?



Tue, Jun 23 2009 10:19 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com


<< Tim,  I dint recieve the Email either. I did buy elevatedb so that
probably explains it. >>

Yes, you should get the email shortly.

<< Can you clarify the issue a bit more?

All my apps are running 4.27.5. I have  had troubles with blobs for as long
as I can remember. I constantly have to repair the one table where blobs are
used extensively.  Will the new 4.28.3 work with previous versions of the
server
and/or mixed with 4.27 clients? >>

No (caveat below).   The BLOB updating/reading has been re-designed so that
it solves an issue with optimistic record locking and BLOB updates.
However, this also breaks the compatibility with 4.27 and earlier releases,
so you cannot mix them on the same database tables.  This is not just
concurrently, either.  The way that 4.27 and 4.28 re-use BLOB blocks are
completely different, therefore if you use 4.28 on a table, and then use
4.27 on a table at a later time, you could end up with BLOB corruption.

One caveat:

If you're only using 4.27 *clients* with a 4.28 B3 or higher DBISAM Database
Server, then yes, you can get away with such a situation because 4.28 is the
only version updating and reading the database tables with the BLOBs.
However, please be careful with such a situation and make sure that no
direct connections to the database are used using 4.27 or earlier, even with
DBSYS or another DBISAM utility that allows you to read/update the tables
directly.

<< Does this mean you found a bug in the blobs processing which could
potentially fix what i'm experiencing? >>

Yes.  You should not have any further issues with BLOBs using the 4.28 B3
release and any subsequent releases.

--
Tim Young
Elevate Software
www.elevatesoft.com

Tue, Jun 23 2009 10:28 AMPermanent Link

Abdon
Thanks Tim!

I will report back with my results.
Tue, Jun 23 2009 5:23 PMPermanent Link

"Jerry Clancy"
No sweat -- it happens. In fact, I just sent an email yesterday to our
clients in which I talked about an attachment, which was all well and good,
except that I forgot to attach the file. Just hate myself when I do that.

Jerry

"Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in message
news:54FDFA61-713B-41BA-ADE8-CF6F3134F390@news.elevatesoft.com...
> Jerry,
>
> << No, Tim, I just painstakingly went through my In box all the way back
> to mid-May and got all the build release notices for EDB and DBISAM, none
> of which contained the warning, but no separate messages. Of couse, it's
> possible I missed it because scanning in baskets can be eye numbing. >>
>
> Crap, it turns out that the wrong mailing list was used for the email.  It
> excluded DBISAM customers that are also ElevateDB customers.  I'll make
> sure that another one is sent out immediately.
>
> My apologies.
Page 1 of 2Next Page »
Jump to Page:  1 2
Image