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 IC96768 Status: Closed

QUERIES WITH/WITHOUT PREDICATES RETURNED SAME RESULT, PUSHDOWNABLE
PREDICATE IS NOT COMPOSED INTO REMOTE STATEMENT

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
Problem: 
The following two queries returned the same result: 
db2 "select count(*) from v_user" 
 
db2 "select count(*) from v_user where sampling = 'Y'" 
instnb@TPEPADBCM:/db2/dump/instnb > db2 "select count(*) from 
v_user" 
 
 
1 
 
----------- 
 
       2136 
 
 
 
  1 record(s) selected. 
 
 
 
instnb@TPEPADBCM:/db2/dump/instnb > db2 "select count(*) from 
v_user 
where sampling = 'Y'" 
 
 
 
1 
 
----------- 
 
       2136 
 
 
 
  1 record(s) selected. 
 
Actually the result for the second query is wrong. There are a 
lot of rows whose SAMPLING column is not 'Y'. 
 
The access plan shows both of them have the same remote 
statement and the count(*) is pushed down to data source: 
RMTQTXT : (Remote statement) 
            SELECT COUNT(*) FROM  (TABLE (SELECT A1."USER_ID" C0 
FROM "EPOS_UAM"."U_USER" A1, "EPOS_UAM"."U_USR_ROLE" A2, 
"EPOS_UAM"."V_BRANCHES" A3 WHERE ((A2."SYSTEM_ID" = :H0 ) OR 
(A2."SYSTEM_ID" = :H1 )) AND (A1."USER_ID" = A2."USER_ID") AND 
(A1."BRANCH_CD1" = A3."BRANCH_CD1")) A0 LEFT OUTER JOIN TABLE 
(SELECT A5."USER_ID" C0 FROM "EPOS_UAM"."T_UW_GRADE" A5, 
"EPOS_UAM"."V_BRANCHES" A6 WHERE (A5."BR_ID" = A6."BRANCH_CD2")) 
A4 ON (A0.C0 = A4.C0))  FOR READ ONLY 
 
That's why they get the same result. Here is the definition for 
view v_user and its dependency's DDL: 
 
CREATE VIEW EPOS.V_USER (SYSTEM_ID ,USER_ID ,FIRST_NM ,EXT_NO 
,ROLE_ID ,DPDSK ,BRANCH_CD1 ,BRANCH_CD2 ,BRANCH_NM ,UW_GRADE 
,SAMPLING ,MANAGER ,EMAIL ,STATUS ,NSDC_ACCT ,AP_USER_ID 
,UW_QUAL ,TAXID )AS SELECT B.SYSTEM_ID,A.USER_ID,A.FIRST_NM, 
A.EXT_NO,B.ROLE_ID,A.DPDSK, 
A.BRANCH_CD1,A.BRANCH_CD2,C.BRANCH_NM, V.UWG_GRADE AS 
UW_GRADE,(SELECT CASE P_ID WHEN 'APPROVE' THEN 'Y' END FROM 
EPOS_UAM.U_OTHER O WHERE O.SYSTEM_ID='EPOS' AND 
O.USER_ID=A.USER_ID AND O.P_ID='APPROVE') AS SAMPLING,(SELECT 
CASE P_ID WHEN 'CONTROLLER' THEN 'Y' END FROM EPOS_UAM.U_OTHER O 
WHERE O.SYSTEM_ID='EWS' AND O.USER_ID=A.USER_ID AND 
O.P_ID='CONTROLLER') AS MANAGER,A.EMAIL, A.STATUS, A.R7_CODE , 
A.AP_USER_ID,A.UNDERWRITINGPERSONNELQUALIFICATION,A.TAXID FROM 
EPOS_UAM.U_USER A JOIN EPOS_UAM.U_USR_ROLE B ON 
((A.USER_ID=B.USER_ID AND B.SYSTEM_ID='EPOS') OR 
(A.USER_ID=B.USER_ID AND B.SYSTEM_ID='EWS')) JOIN 
EPOS.V_BRANCHES C ON A.BRANCH_CD1=C.BRANCH_CD1 LEFT OUTER JOIN 
EPOS.V_UW_GRADE V ON A.USER_ID=V.USER_ID ; 
 
CREATE VIEW EPOS.V_BRANCHES (BRANCH_CD1 ,BRANCH_CD2 ,ZONE 
,ZONE_NM ,BRANCH_NM ,TEL ,FAX ,"PATH" ,"TYPE" ,PARENT_ID 
,DAG_OFFICE ,D_AGENT ,PSC ,STATUS ,AGENT_NM ,AGENT_EXT 
,CREATE_USR , UPDATE_USR , CREATE_TS , UPDATE_TS )  AS SELECT 
BRANCH_CD1 , BRANCH_CD2 , ZONE , ZONE_NM , BRANCH_NM , TEL , FAX 
, "PATH" , "TYPE" , PARENT_ID , DAG_OFFICE , D_AGENT , PSC , 
STATUS , AGENT_NM , AGENT_EXT , CREATE_USR , UPDATE_USR , 
CREATE_TS , UPDATE_TS FROM EPOS_UAM.V_BRANCHES ; 
 
CREATE VIEW EPOS.V_UW_GRADE (USER_ID , BRANCH_CD1 ,BRANCH_CD2 , 
BRANCH_NM , DEPT_ID , UW_NM ,    UWG_GRADE ) AS SELECT USER_ID, 
B.BRANCH_CD1, BR_ID AS BRANCH_CD2, B.BRANCH_NM, SUBSTR(DEPT_ID, 
2, 1 ) AS DEPT_ID,  UW_NM, UWG_GRADE FROM EPOS_UAM.T_UW_GRADE A 
JOIN EPOS_UAM.V_BRANCHES B         ON A.BR_ID = B.BRANCH_CD2 ; 
 
 
All the underlying objects are nickname, no local table. Here is 
the Fed configuration: 
 
CREATE WRAPPER "DRDA" LIBRARY 'libdb2drda.a' OPTIONS (DB2_FENCED 
'N'); 
 
CREATE SERVER "INSTNB_UAM" TYPE DB2/UDB VERSION '9.7' WRAPPER 
"DRDA"  AUTHORIZATION ""   PASSWORD "" OPTIONS  (DATE_COMPAT 
'N' ,DB2_CONCAT_NULL_NULL 
'Y',DB2_VARCHAR_BLANKPADDED_COMPARISON  'Y',DBNAME 
'UAM',NO_EMPTY_STRING  'N',NUMBER_COMPAT 
'N',SAME_DECFLT_ROUNDING  'Y',VARCHAR2_COMPAT  'N'); 
 
Comparing their optimized statements, it looks like that we 
ignored the red part when generating access plan for the second 
query, which caused the incorrect result. 
 
Query 1: 
Optimized Statement: 
------------------- 
SELECT Q10.$C0 
FROM 
   (SELECT COUNT(*) 
   FROM 
      (SELECT Q8.USER_ID 
      FROM 
         (SELECT Q4.USER_ID 
         FROM 
            (SELECT Q2.USER_ID 
            FROM EPOS_UAM.U_USR_ROLE AS Q1, EPOS_UAM.U_USER AS 
Q2, 
                    EPOS_UAM.V_BRANCHES AS Q3 
            WHERE (Q2.USER_ID = Q1.USER_ID) AND (Q2.BRANCH_CD1 = 
                    Q3.BRANCH_CD1) AND ((Q1.SYSTEM_ID = G'EPOS') 
OR 
                    (Q1.SYSTEM_ID = G'EWS'))) AS Q4 LEFT OUTER 
JOIN 
            (SELECT Q6.USER_ID 
            FROM EPOS_UAM.V_BRANCHES AS Q5, EPOS_UAM.T_UW_GRADE 
AS Q6 
            WHERE (Q6.BR_ID = Q5.BRANCH_CD2)) AS Q7 ON 
(Q4.USER_ID = 
              Q7.USER_ID)) AS Q8) AS Q9) AS Q10 
 
Query 2: 
Optimized Statement: 
------------------- 
SELECT Q12.$C0 
FROM 
   (SELECT COUNT(*) 
   FROM 
      (SELECT Q8.USER_ID 
      FROM 
         (SELECT Q4.USER_ID 
         FROM 
            (SELECT Q2.USER_ID 
            FROM EPOS_UAM.U_USR_ROLE AS Q1, EPOS_UAM.U_USER AS 
Q2, 
                    EPOS_UAM.V_BRANCHES AS Q3 
            WHERE (Q2.USER_ID = Q1.USER_ID) AND (Q2.BRANCH_CD1 = 
                    Q3.BRANCH_CD1) AND ((Q1.SYSTEM_ID = G'EPOS') 
OR 
                    (Q1.SYSTEM_ID = G'EWS'))) AS Q4 LEFT OUTER 
JOIN 
            (SELECT Q6.USER_ID 
            FROM EPOS_UAM.V_BRANCHES AS Q5, EPOS_UAM.T_UW_GRADE 
AS Q6 
            WHERE (Q6.BR_ID = Q5.BRANCH_CD2)) AS Q7 ON 
(Q4.USER_ID = 
              Q7.USER_ID)) AS Q8, 
         (SELECT Q9.USER_ID 
         FROM EPOS_UAM.U_OTHER AS Q9 
         WHERE (Q9.P_ID = G'APPROVE') AND (Q9.USER_ID = 
Q8.USER_ID) AND 
                 (Q9.SYSTEM_ID = G'EPOS')) AS Q10) AS Q11) AS 
Q12
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* Unexpected remote statement                                  * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to latest fixpack                                    * 
****************************************************************
Local Fix:
Solution
Local qun may change between scalar subquery and non-scalar 
subquery, SQLNQ_QUN_SCALAR_SUBQ should be resynced when qun 
changed.
Workaround
not known / see Local fix
BUG-Tracking
forerunner  : APAR is sysrouted TO one or more of the following: IC96771 IC96772 
follow-up : 
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
09.10.2013
10.11.2014
10.11.2014
Problem solved at the following versions (IBM BugInfos)
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.10 FixList