suche 36x36
  • CURSOR Service Distribution
           
     

    CURSOR Service Distribution

    24x7 Always Up

    pfeil
  • Logistics and transportation
           
     

    Logistics and transportation

    24x7 Always Up

    pfeil
  • Industrial environments
           
     

    Industrial environments

    24x7 Always Up

    pfeil
  • Trade and commerce
           
     

    Trade and commerce

    24x7 Always Up

    pfeil
  • Online shopping
           
     

    Online shopping

    24x7 Always Up

    pfeil
  • We care about your databases
           
     

    We care about your databases

    24x7 Always Up

    pfeil
 

Erik Stahlhut

CURSOR Service Distribution

We keep your IBM databases running

             
 

Monitoring Monitoring

Monitoring

  • Companies with existentially important databases trust in our Informix Monitoring. We prevent system failures before they occur.

  • Automated monitoring around the clock. Early detection of bottlenecks based on history data with our CURSOR Admin-Scout.

  • Administration for all installation sizes. Standard, remote or standby administration, up to 24x7 availability for systems with high availability.

  • Individual adjustments to the service levels of our customers with short response times and personal contact persons in support.

Discover more about Informix Monitoring with the CURSOR Service Distribution!
 

ServiceService

Service

  • Requirements from all areas of data management. Service packages or individually agreed projects like:
    • Setup of replications or high availability systems;
    • Performance, runtime analysis, tuning;
    • Release, platform or cloud migration;
    • Access control, encryption, archiving.
  • CURSOR Service Distribution is a long-standing IBM High-Value Service Provider for IBM Informix.

  • Specially for Informix we offer additional online seminars, workshops and training courses.

Information about service and support, so feel free to contact us with your project!
 

SupportSupport

Support

  • Request for support services for IBM databases. Our customers benefit from the competence of more than 25 years of Informix support and system-oriented development of database tools.

  • In case of support we are the first and central contact persons. We have a direct line to the IBM and HCL support departments and are available for our customers with 24x7 agreements around the clock.

  • Even Informix customers without active IBM product maintenance can take advantage of our first-aid support.

Book a support ticket on our website or just call us!
 
 
 
 

IBM Software

for manufacturers

and technology partners

IBM Embedded Solution Agreement (ESA)
integration of IBM software into your solution!

  Service
  • Integrate IBM software into your solution!

  • Benefit from the power of IBM software, take advantage of the attractive conditions for IBM licenses and maintenance!

  • The employees of CURSOR Service Distribution have twenty years of experience in indirect sales of IBM software (OEM/ASL/ESA licensing). We show you how to become an IBM ESA Business Partner!

esa bp werden blue 1000x100

 
 
 
 

CompetenceService

in Informix Administration

 
 

the CURSOR

Admin-Scout for Informix

esa bp werden blue 1000x100

esa bp werden blue 1000x100

 

 

  • The Informix tool right from CURSOR Informix Support.

  • Developed by administrators for administrators.

    With a background of over 25 years of Informix support, administration and system-oriented programming, we have been developing and distributing the Admin Scout since 2015.

  • By our Managed Service approach, the Admin Scout is suitable for almost all application areas of the Informix database system. Our customers are IT departments and administrators in commerce, banks, universities, trade and industry.

 
 
 
 

About us

the CURSOR Service Distribution

  • High-Value Service Provider for IBM Informix.

  • Distribution for IBM Data-Management Software (OEM/ASL/ESA licensing for ISVs).

CURSOR Service Distribution is a business unit of CURSOR Software AG, resulting from the acquisition of the Informix and development tool specialist "Nonne & Schneider" at the end of 2005.

We offer extensive technical services for IBM Informix, and as a high-value service provider we are the direct contact for all our customers' service needs for these databases.

Our services are independent from licensing through our company. Well-known customers rely on our monitoring and use our tools, while licensing and update maintenance are contracted directly with IBM.

 

CURSOR Software AG

For over 25 years CURSOR has been developing and marketing CRM solutions for the upper middle class and large concerns.

  • Together.
    Together with you we will lead your CRM project to success. Our experts offer comprehensive services from a single source: software development, consulting, software introduction, training, support - and the ongoing optimization of your CRM system.

  • Inspiring.
    We "live" CRM and want to inspire you with CRM software and services Made in Germany. The benchmark for this is the enthusiasm and loyalty of our customers - and their customers.

  • Successful.
    For 30 years the name CURSOR has stood for excellent customer and business process management - CRM and BPM. We measure our success by the satisfaction and market success of our customers. Learn more about successful CRM projects directly from our customers.

 
 
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC63966 Status: Closed

OR PREDICATE WITH SUBTERMS BEING QUANTIFIED = PREDICATE OR SINGLE
COLUMN IN SUBQUERY PREDICATE MAY CAUSE A SQL1224 ERROR

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
Certain queries can result in a SQL1224 error or instance 
shutdown when the query contains an OR predicate with multiple 
subquery operations. In particular the query must contain the 
following constructs: 
1) An OR predicate is present in the WHERE or ON clause of any 
sub-select within the query. 
2) At least one operand of the OR is a quantified = predicate 
using the ANY/SOME qualifier or a single column IN subquery 
predicate such as '<expression> IN <subquery>', '<expression> = 
ANY(<subquery>)',  or '<expression> = SOME(<subquery>)'. 
3) The <expression> referenced as left hand operand of the 
quantified = predicate or IN subquery predicate from condition 
(2) is a complex expression containing a quantified, IN subquery 
or EXISTS subquery predicate. 
 
Two example queries are show below with an explanation of what 
parts of the query can be used to identify this issue. 
 
Example 1 
 
   1. SELECT * 
   2. FROM   A 
   3. WHERE  a.C1 = 1 
   4.     OR 
   5.        CASE 
   6.               WHEN A.C1 IN 
   7.                            (SELECT DISTINCT B.C1 
   8.                            FROM             B 
   9.                            ) 
  10.               THEN A.C2 
  11.               ELSE 2 
  12.        END 
  13.               IN 
  14.               (SELECT DISTINCT C.C1 
  15.               FROM             C 
  16.               ); 
 
Lines 3-16 define an OR predicate in the WHERE clause satisfying 
condition 1. Lines 13-16 are a single column IN subquery 
predicate within the OR predicate satisfying condition 2. Lines 
5 through 11 are a complex expression with an IN subquery 
predicate satisfying condition 3. 
 
Example 2 
 
   1. SELECT * 
   2. FROM   A 
   3. WHERE  a.C1 = 1 
   4.     OR 
   5.        CASE 
   6.               WHEN EXISTS 
   7.                      (SELECT 1 
   8.                      FROM    B 
   9.                      WHERE   A.c1=b.c1 
  10.                      ) 
  11.               THEN A.C2 
  12.               ELSE 2 
  13.        END 
  14.                  = ANY 
  15.                  (SELECT DISTINCT C.C1 
  16.                  FROM             C 
  17.                  ); 
 
 
Lines 3-17 define an OR predicate in the WHERE clause satisfying 
condition 1. Lines 14-17 show a quantified = predicate within 
the OR predicate satisfying condition 2. Lines 5-12 are a 
complex expression with an EXISTS subquery predicate satisfying 
condition 3.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* Certain queries can result in a SQL1224 error or instance    * 
*                                                              * 
*                                                              * 
*                                                              * 
* shutdown when the query contains an OR predicate with        * 
*                                                              * 
* multiple                                                     * 
*                                                              * 
* subquery operations. In particular the query must contain    * 
*                                                              * 
* the                                                          * 
*                                                              * 
* following constructs:                                        * 
*                                                              * 
* 1) An OR predicate is present in the WHERE or ON clause of   * 
*                                                              * 
* any                                                          * 
*                                                              * 
* sub-select within the query.                                 * 
*                                                              * 
* 2) At least one operand of the OR is a quantified =          * 
*                                                              * 
* predicate                                                    * 
*                                                              * 
* using the ANY/SOME qualifier or a single column IN subquery  * 
*                                                              * 
*                                                              * 
*                                                              * 
* predicate such as '<expression> IN <subquery>',              * 
*                                                              * 
* '<expression> =                                              * 
*                                                              * 
* ANY(<subquery>)',  or '<expression> = SOME(<subquery>)'.     * 
*                                                              * 
*                                                              * 
*                                                              * 
* 3) The <expression> referenced as left hand operand of the   * 
*                                                              * 
*                                                              * 
*                                                              * 
* quantified = predicate or IN subquery predicate from         * 
*                                                              * 
* condition                                                    * 
*                                                              * 
* (2) is a complex expression containing a quantified, IN      * 
*                                                              * 
* subqueryor EXISTS subquery predicate.                        * 
*                                                              * 
*                                                              * 
*                                                              * 
*       Two example queries are show below with an explanation * 
*                                                              * 
* of                                                           * 
*                                                              * 
* what  parts of the query can be used to identify this issue. * 
*                                                              * 
*                                                              * 
*                                                              * 
*     Example 1                                                * 
*                                                              * 
*                                                              * 
*                                                              * 
*      1. SELECT *                                             * 
*                                                              * 
*     2. FROM   A                                              * 
*                                                              * 
*    3. WHERE  a.C1 = 1                                        * 
*                                                              * 
*   4.  OR                                                     * 
*                                                              * 
*  5.    CASE                                                  * 
*                                                              * 
* 6.   WHEN A.C1 IN                                            * 
*                                                              * 
* 7.         (SELECT DISTINCT B.C1                             * 
*                                                              * 
* 8.         FROM        B                                     * 
*                                                              * 
* 9.         )                                                 * 
*                                                              * 
* 10.    THEN A.C2                                             * 
*                                                              * 
* 11.    ELSE 2                                                * 
*                                                              * 
* 12.    END                                                   * 
*                                                              * 
* 13.    IN                                                    * 
*                                                              * 
* 14.    (SELECT DISTINCT C.C1                                 * 
*                                                              * 
* 15.    FROM     C                                            * 
*                                                              * 
* 16.    );                                                    * 
*                                                              * 
*                                                              * 
*                                                              * 
* Lines 3-16 define an OR predicate in the WHERE clause        * 
*                                                              * 
* satisfyingcondition 1. Lines 13-16 are a single column IN    * 
*                                                              * 
* subquery predicate within the OR predicate satisfying        * 
*                                                              * 
* condition 2. Lines 5 through 11 are a complex expression     * 
*                                                              * 
* with an                                                      * 
*                                                              * 
* IN subquery   predicate satisfying condition 3.              * 
*                                                              * 
*                                                              * 
*                                                              * 
*   Example 2                                                  * 
*                                                              * 
*                                                              * 
*                                                              * 
*    1. SELECT *                                               * 
*                                                              * 
*   2. FROM   A                                                * 
*                                                              * 
*         3. WHERE  a.C1 = 1                                   * 
*                                                              * 
*        4.     OR                                             * 
*                                                              * 
*       5.        CASE                                         * 
*                                                              * 
*      6.       WHEN EXISTS                                    * 
*                                                              * 
*     7.      (SELECT 1                                        * 
*                                                              * 
*    8.     FROM   B                                           * 
*                                                              * 
*   9.    WHERE  A.c1=b.c1                                     * 
*                                                              * 
*        10.   )                                               * 
*                                                              * 
*       11.  THEN A.C2                                         * 
*                                                              * 
*      12.        ELSE 2                                       * 
*                                                              * 
*     13.        END                                           * 
*                                                              * 
*    14.   = ANY                                               * 
*                                                              * 
*   15.         (SELECT DISTINCT C.C1                          * 
*                                                              * 
*  16.        FROM        C                                    * 
*                                                              * 
* 17.       );                                                 * 
*                                                              * 
*                                                              * 
*                                                              * 
*                                                              * 
*                                                              * 
* Lines 3-17 define an OR predicate in the WHERE clause        * 
*                                                              * 
* satisfyingcondition 1. Lines 14-17 show a quantified =       * 
*                                                              * 
* predicate                                                    * 
*                                                              * 
* within  the OR predicate satisfying condition 2. Lines 5-12  * 
*                                                              * 
* are                                                          * 
*                                                              * 
* a complex expression with an EXISTS subquery predicate       * 
*                                                              * 
* satisfying condition 3.                                      * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* 1) Convert the single column IN subquery predicate into a    * 
*                                                              * 
*                                                              * 
*                                                              * 
* multiple column IN subquery predicate. As in example 1 above * 
*                                                              * 
* we                                                           * 
*                                                              * 
* add lines 5, 14 and 17 shown below                           * 
*                                                              * 
*                                                              * 
*                                                              * 
*  1. SELECT *                                                 * 
*                                                              * 
* 2. FROM   A                                                  * 
*                                                              * 
* 3. WHERE  a.C1 = 1                                           * 
*                                                              * 
* 4.     OR                                                    * 
*                                                              * 
* 5.   (                                                       * 
*                                                              * 
* 6.   CASE                                                    * 
*                                                              * 
* 7.   WHEN A.C1 IN                                            * 
*                                                              * 
* 8.         (SELECT DISTINCT B.C1                             * 
*                                                              * 
* 9.         FROM       B                                      * 
*                                                              * 
* 10.          )                                               * 
*                                                              * 
* 11.    THEN A.C2                                             * 
*                                                              * 
* 12.    ELSE 2                                                * 
*                                                              * 
* 13.    END                                                   * 
*                                                              * 
* 14.    ,1)                                                   * 
*                                                              * 
* 15.    IN                                                    * 
*                                                              * 
* 16.       (SELECT DISTINCT C.C1                              * 
*                                                              * 
* 17.         ,1                                               * 
*                                                              * 
* 18.       FROM        C                                      * 
*                                                              * 
* 19.       );                                                 * 
*                                                              * 
*             2)                                               * 
*                                                              * 
* For a quantified = predicate using the ANY or SOME           * 
*                                                              * 
* quantification this is a synonym for a single column IN      * 
*                                                              * 
*                                                              * 
*                                                              * 
* subquery. Convert the quantified = predicate to a            * 
*                                                              * 
* multicolumn                                                  * 
*                                                              * 
* INsubquery predicate as shown above.                         * 
****************************************************************
Local Fix:
1) Convert the single column IN subquery predicate into a 
multiple column IN subquery predicate. As in example 1 above we 
add lines 5, 14 and 17 shown below 
 
   1. SELECT * 
   2. FROM   A 
   3. WHERE  a.C1 = 1 
   4.     OR 
   5.        ( 
   6.               CASE 
   7.                      WHEN A.C1 IN 
   8.                                   (SELECT DISTINCT B.C1 
   9.                                   FROM             B 
  10.                                   ) 
  11.                      THEN A.C2 
  12.                      ELSE 2 
  13.               END 
  14.        ,1) 
  15.        IN 
  16.           (SELECT DISTINCT C.C1 
  17.                           ,1 
  18.           FROM             C 
  19.           ); 
 
2) For a quantified = predicate using the ANY or SOME 
quantification this is a synonym for a single column IN 
subquery. Convert the quantified = predicate to a multicolumn IN 
subquery predicate as shown above.
available fix packs:
DB2 Version 9.7 Fix Pack 1 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Solution
Problem was first fixed in Version 9.7 Fix Pack 1
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
22.10.2009
16.12.2009
16.12.2009
Problem solved at the following versions (IBM BugInfos)
9.0.,
9.7.FP1
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.1 FixList