You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by Kathey Marsden <km...@sbcglobal.net> on 2005/11/07 19:24:23 UTC
Question about client compatibility testing and DERBY-516 (paging
Rick #:))
I noticed that DERBY-516 was closed with the addition of the new test
jdbcapi\CompatibilityTest.java. which adds a nice framework for some
basic compatibility testing.
By default it seems that this test just runs with 10.2 client and 10.2
server so doesn't give us any additional coverage in derbyAll for
compatibility testing. I was wondering if there were plans to check the
derby release jars into the trunk so that the compatibility testing
would be performed as part of the normal testing procedures? These jars
could also be used in DERBY-514 to enable upgrade testing.
Thanks
Kathey
Re: Question about client compatibility testing and DERBY-516 (paging
Rick #:))
Posted by Kathey Marsden <km...@sbcglobal.net>.
Rick Hillegas wrote:
> Hi Kathey,
>
> That sounds like a useful combination: 10.1.1.0 client against the
> mainline server, both running on the 1.4 vm. You see a lot of support
> cases and are in a good position to describe the main execution path.
> I don't have a lot of perspective here.
>
I think trunk server with 10.1.1.0 client and trunk client with 10.1.1.0
server with whatever jvm the developer is using for derbyall would
provide a good basic sanity check for protocol compatibility with
client and server changes on the trunk.
Ultimately as yous say someone would be well advised to run derbyall
with the various clients on the branches before releases.
Kathey
Re: Question about client compatibility testing and DERBY-516 (paging
Rick #:))
Posted by Rick Hillegas <Ri...@Sun.COM>.
Hi Kathey,
That sounds like a useful combination: 10.1.1.0 client against the
mainline server, both running on the 1.4 vm. You see a lot of support
cases and are in a good position to describe the main execution path. I
don't have a lot of perspective here.
Cheers,
-Rick
Kathey Marsden wrote:
>Rick Hillegas wrote:
>
>
>
>>Hi Kathey,
>>
>>My initial ramblings on this topic start out at the end of August in
>>the email thread "client/server compatibility testing". There I
>>worried that over time, the compatibility tests could grow large
>>(taking maybe 5 minutes per combination) and so, if run for all the
>>combinations, would make derbyall take too long. That's why we're only
>>runing one combination as part of derbyall. That combination doesn't
>>really track a compatibility issue, it just tracks regressions which
>>might creep into the test as other code changes.
>>
>>I'm certainly in favor of running all the combinations on a nightly or
>>weekly basis and as a sanity check when cutting release candidates.
>>
>>
>>
>It seems that it would be worthwhile to enable the test with the 10.1
>jars (original client release) as it would make a clear statement of
>the minimum client/server jar combinations that are expected work, would
>probably catch most things that might break over time, and hopefully
>would not add too much time.
>
>What do you think?
>
>Kathey
>
>
>
>
>
>
>
Re: Question about client compatibility testing and DERBY-516 (paging
Rick #:))
Posted by Kathey Marsden <km...@sbcglobal.net>.
Rick Hillegas wrote:
> Hi Kathey,
>
> My initial ramblings on this topic start out at the end of August in
> the email thread "client/server compatibility testing". There I
> worried that over time, the compatibility tests could grow large
> (taking maybe 5 minutes per combination) and so, if run for all the
> combinations, would make derbyall take too long. That's why we're only
> runing one combination as part of derbyall. That combination doesn't
> really track a compatibility issue, it just tracks regressions which
> might creep into the test as other code changes.
>
> I'm certainly in favor of running all the combinations on a nightly or
> weekly basis and as a sanity check when cutting release candidates.
>
It seems that it would be worthwhile to enable the test with the 10.1
jars (original client release) as it would make a clear statement of
the minimum client/server jar combinations that are expected work, would
probably catch most things that might break over time, and hopefully
would not add too much time.
What do you think?
Kathey
Re: Question about client compatibility testing and DERBY-516 (paging
Rick #:))
Posted by Rick Hillegas <Ri...@Sun.COM>.
Hi Kathey,
My initial ramblings on this topic start out at the end of August in the
email thread "client/server compatibility testing". There I worried that
over time, the compatibility tests could grow large (taking maybe 5
minutes per combination) and so, if run for all the combinations, would
make derbyall take too long. That's why we're only runing one
combination as part of derbyall. That combination doesn't really track a
compatibility issue, it just tracks regressions which might creep into
the test as other code changes.
I'm certainly in favor of running all the combinations on a nightly or
weekly basis and as a sanity check when cutting release candidates.
I like the idea of wiring some upgrade tests into derbyall. I think it
would tend to enforce the discipline that developers write upgrade logic
and tests at the same time that they checkin code which raises upgrade
problems. Writing upgrade tests is a tricky problem. Technically, an
upgrade test case consists of two pieces: 1) the Setup code which is
compiled and run against the previous release and 2) the Verification
code which is compiled and run against the current release. If you want
to tackle upgrade testing by checking in jar files, you'll have to add
some tricky build logic which builds Setup code against the previous
release and Verification code against the current release.
Just for comparison, here's the equally tricky solution which we adopted
for Cloudscape back in the old days: 1) The Setup code was checked into
the previous release branch, 2) the test developer ran a script to
populate a previous rev database with all the Setup cases then tar up
the resulting database, 3) that tarball was checked into the current
release, 4) the derbyall piece of the upgrade tests then grabbed that
tarball, upgraded it, and ran the Verification code against it.
Cheers,
-Rick
Kathey Marsden wrote:
>I noticed that DERBY-516 was closed with the addition of the new test
>jdbcapi\CompatibilityTest.java. which adds a nice framework for some
>basic compatibility testing.
>
>By default it seems that this test just runs with 10.2 client and 10.2
>server so doesn't give us any additional coverage in derbyAll for
>compatibility testing. I was wondering if there were plans to check the
>derby release jars into the trunk so that the compatibility testing
>would be performed as part of the normal testing procedures? These jars
>could also be used in DERBY-514 to enable upgrade testing.
>
>
>Thanks
>
>Kathey
>
>
>
>
>