CC: | jean-pierre.rupp [...] jpmchase.com |
Subject: | Fwd: Patch for DBIx::SearchBuilder - Support for limits in Sybase |
Date: | Thu, 15 Sep 2011 00:00:52 +0400 |
To: | bug-DBIx-SearchBuilder [...] rt.cpan.org |
From: | Ruslan Zakirov <ruslan.zakirov [...] gmail.com> |
Hi,
Thanks for the patch. Forwarding it to SB's queue on rt.cpan.org.
Wonder if a VirtualBox image exists with some sybase server to test SB
against it?
Show quoted text
---------- Forwarded message ----------
From: Rupp, Jean-Pierre <jean-pierre.rupp@jpmchase.com>
Date: 2011/9/14
Subject: Patch for DBIx::SearchBuilder - Support for limits in Sybase
To: "Ruslan.Zakirov@gmail.com" <Ruslan.Zakirov@gmail.com>
Hello Руслан,
I’ve modified your code for DBIx::SearchBuilder, in order to make
ApplyLimits work in Sybase databases. This fix may also work for MSSQL
as well. Support is partial, since Sybase doesn’t allow for specifying
lower boundaries with its TOP clause.
This said, what the code does is that whenever limits are used, it
will slap a TOP clause just after SELECT in the query. This makes it
so that Sybase will only return up to that many records. Then there’s
a soft low boundary in the SearchBuilder object that will behave as
though records before it were not retrieved (but they were).
Although this will not offer much of a performance boost when
retrieving records 950.000 to 975.000 in a 1.000.000 record table,
performance will improve a lot for the first pages, which are the ones
most commonly used in, say, web applications.
On top of this, it makes for better RTT compatibility.
I submit this patch to you so you can put it in the official
DBIx::SearchBuilder distribution as you please.
Greetings.
This communication is for informational purposes only. It is not
intended as an offer or solicitation for the purchase or sale of any
financial instrument or as an official confirmation of any
transaction. All market prices, data and other information are not
warranted as to completeness or accuracy and are subject to change
without notice. Any comments or statements made herein do not
necessarily reflect those of JPMorgan Chase & Co., its subsidiaries
and affiliates. This transmission may contain information that is
privileged, confidential, legally privileged, and/or exempt from
disclosure under applicable law. If you are not the intended
recipient, you are hereby notified that any disclosure, copying,
distribution, or use of the information contained herein (including
any reliance thereon) is STRICTLY PROHIBITED. Although this
transmission and any attachments are believed to be free of any virus
or other defect that might affect any computer system into which it is
received and opened, it is the responsibility of the recipient to
ensure that it is virus free and no responsibility is accepted by
JPMorgan Chase & Co., its subsidiaries and affiliates, as applicable,
for any loss or damage arising in any way from its use. If you
received this transmission in error, please immediately contact the
sender and destroy the material in its entirety, whether in electronic
or hard copy format. Thank you. Please refer to
http://www.jpmorgan.com/pages/disclosures for disclosures relating to
European legal entities.
--
Best regards, Ruslan.
Message body is not shown because sender requested not to inline it.