SPARC T4 - Dynamic Threading - Oracle Database

i have a simple question about the new Sparc T4 line
Can I use T4 running Oracle Database - RAC (Standard Edition)? Database is not recommended for T3 processors, oracle says "t (3) line is for applications, for database sparc M Line is more suitable " but this data sheet below says..
"*Dynamic Threading*
SPARC T4 is dynamically threaded. While software can activate up to eight strands on each core at a
time, hardware dynamically and seamlessly allocates core resources such as instruction, data, and L2
caches and TLBs, as well as out-of-order execution resources such as the 128-entry re-order buffer in
the core. These resources are allocated among the active strands. Software activates strands by sending
an interrupt to a HALTed strand. Software deactivates strands by executing a HALT instruction on
each strand that is to be deactivated. No strand has special hardware characteristics. All strands have
identical hardware capabilities."
Whit this new feature... can i use oracle rac database on T4?
Can someone help me please?
tks,
Robson

I am not the most authorative person to answer this:
Datasheets such as http://www.oracle.com/us/products/servers-storage/servers/sparc-enterprise/t-series/sparc-t4-2-ds-487859.pdf indicate the T4 for database workloads
I guess you have alo found http://www.oracle.com/us/corporate/features/sparc-t4-announcement-494846.html
Basically there are times with a database that a thread wants to do a lot of CPU work .... on a T3 this ends up on one thread on one of hte cores.
On a T4 ... providing the core's are not fully utilitized, the thread requiring a lot of CPU should be allocated a whole core to itself .... and run much more quickly.
So for instance starting or upgrading a single databse on a T4 should run much much faster on T4 as opposed to T3. And that probably is the case of a failover also.
Anyway to give a couple of not so simple answers (and these are my personal answers):
- Can one use a T3 for RAC .... yes but it iisn't recommended and failover and other operations may be lenghtly.
- Can one use a T4 for RAC .... yes ... it will certainly outperform a T3. Is it recommended ... (pass ... ask the salesman).
... I am happy for others to add comments.

Similar Messages

  • Oracle Database 11g Express Edition (11.2) Beta is now available!

    [url http://forums.oracle.com/forums/forum.jspa?forumID=1378]Forum Home » Database » Oracle Database 11g Express Edition Beta ばかりじゃなんなので、
    Forum Home » コミュニティ » OTNカフェ に [url http://forums.oracle.com/forums/thread.jspa?threadID=2201589]Thread: Oracle Database 11g Express Edition (11.2) Beta is now available! を作ったのですが、この Japanese Discussion Forums にも、めでたく この [url http://forums.oracle.com/forums/forum.jspa?forumID=1380]Forum Home » データベース » Oracle Database 11g Express Edition Beta ができましたので、OTNカフェの Thread をこの Threadへ引越しました。
    既に OTN Japan の [url http://www.oracle.com/technetwork/jp/database/express-edition/overview/index.html]Oracle Technology Network > Database Database > Express Edition > Overview にも載っていますが、[url  http://www.oracle.com/technetwork/database/express-edition/11gxe-beta-download-302519.html]http://www.oracle.com/technetwork/database/express-edition/11gxe-beta-download-302519.html から " Oracle Database 11g Express Edition Release 11.2.0.2.0 - Beta "がダウンロードできます。
    [url http://forums.oracle.com/forums/forum.jspa?forumID=1378]Forum Home » Database » Oracle Database 11g Express Edition Beta を見てみたり、コメントしてフィードバックするのを楽しんでます。
    【補足】
    現行リリース Oracle Database 10g Express Edition ( 俗称 Oracle Database XE や Oracle XE や OracleXE )関連 Oracle Technology Network (OTN) Japan - 掲示板 » コミュニティ » OTNカフェ のスレッドなど :
    [url http://otn.oracle.co.jp/forum/thread.jspa?threadID=5001436]Oracle 10g Express Editionに興味深々
    [url http://otn.oracle.co.jp/forum/thread.jspa?threadID=5001550]Oracle Database 10g Express Edition Beta 3
    [url http://otn.oracle.co.jp/forum/thread.jspa?threadID=35004868]OracleXEに関する座談会
    "Project XE" (Oracle Database XE in Japan) - S/N Ratio (by SATO Naoki) [url http://d.hatena.ne.jp/satonaoki/20081202/p1]http://d.hatena.ne.jp/satonaoki/20081202/p1
    Edited by: wmo6hash on Apr 24, 2011 3:45 AM Blogosphere は別の Message へ

    そうですね。Oracle Database 11g Express Edition BetaフォーラムなのでBetaのことだけ書いていました。

  • ERROR install oracle database 10gR2 in solaris sparc 64

    Dear All,
    I got error when installing oracle database 10gR2 on solaris sparc 64.
    these are the messages:
    /usr/ccs/bin/make -f ins_precomp.mk relink ORACLE_HOME=/usr/app/oracle/product/10.2.0/db_1 EXENAME=proc/Linking /usr/app/oracle/product/10.2.0/db_1/precomp/li
    b/proc
    ld: fatal: file /usr/app/oracle/product/10.2.0/db_1/lib32/libclntsh.so: unknown file type
    ld: fatal: File processing errors. No output written to /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc
    *** Error code 1
    The following command caused the error:
    echo "Linking /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc"; \
    rm -f /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc; \
    /usr/ccs/bin/ld -o /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc -L/usr/app/oracle/product/10.2.0/db_1/precomp/lib/ -L/usr/app/oracle/product/10.2
    .0/db_1/lib/ -dy /usr/app/oracle/product/10.2.0/db_1/lib/prod/lib/v9/crti.o /usr/app/oracle/product/10.2.0/db_1/lib/prod/lib/v9/crt1.o /usr/app/oracle/product
    /10.2.0/db_1/lib/s0main.o /usr/app/oracle/product/10.2.0/db_1/precomp/lib/pdc.o /usr/app/oracle/product/10.2.0/db_1/precomp/lib/pds.o /usr/app/oracle/product/
    10.2.0/db_1/precomp/lib/libproc2.a /usr/app/oracle/product/10.2.0/db_1/lib/libslax10.a /usr/app/oracle/product/10.2.0/db_1/precomp/lib/libpgp.a -lpls10 -lplp
    10 /usr/app/oracle/product/10.2.0/db_1/lib/libplc10.a -lsnls10 -lunls10 -lnls10 /usr/app/oracle/product/10.2.0/db_1/rdbms/lib/kpudfo.o -lclntsh `cat /usr/ap
    p/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /usr/app/oracle/product/10.2.0/db_1/lib/
    ldflags` -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10 -lvsn10 -lcommon10 -lgeneric10 -lmm -lsnls10 -lnls10 -lcore10
    -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /usr/app/oracle/product/10.2.0/db_1/lib/ldflags`
    -lnsslb10 -lncrypt10 -lnsgr10 -lnzjs10 -ln10 -lnnz10 -lnl10 -lnro10 `cat /usr/app/oracle/product/10.2.0/db_1/lib/ldflags` -lnsslb10 -lncrypt10 -lnsgr10
    -lnzjs10 -ln10 -lnnz10 -lnl10 -lclient10 -lnnetd10 -lvsn10 -lcommon10 -lgeneric10 -lpls10 -lsnls10 -lnls10 -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10 -
    lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 -lclient10 -lnnetd10 -lvsn10 -lcommon10 -lgeneric10 -lsnls10 -lnls10 -lcore10 -lsnls10
    -lnls10 -lcore10 -lsnls10 -lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10 `cat /usr/app/oracle/product/10.2.0/db_1/lib/sysliblist` -R
    /opt/SUNWcluster/lib/sparcv9:/usr/app/oracle/product/10.2.0/db_1/lib:/opt/ORCLcluster/lib/ -Y P,:/opt/SUNWcluster/lib/sparcv9:/opt/ORCLcluster/lib/:/usr/ccs
    /lib/sparcv9:/usr/lib/sparcv9 -Qy -lc -laio -lposix4 -lm /usr/app/oracle/product/10.2.0/db_1/lib/prod/lib/v9/crtn.o; \
    /bin/chmod 755 /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc
    make: Fatal error: Command failed for target `/usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc'
    /usr/ccs/bin/make -f ins_precomp.mk relink ORACLE_HOME=/usr/app/oracle/product/10.2.0/db_1 EXENAME=proc/Linking /usr/app/oracle/product/10.2.0/db_1/precomp/li
    b/proc
    ld: fatal: file /usr/app/oracle/product/10.2.0/db_1/lib32/libclntsh.so: unknown file type
    ld: fatal: File processing errors. No output written to /usr/app/oracle/product/10.2.0/db_1/precomp/lib/proc
    *** Error code 1
    any help would be appreciate.
    Thank you
    Regards,
    Spirit

    I'm not sure with the solaris sparc 64.
    but the most common problem with Linux x86_64 which I assume probably similar. that type of error caused by
    you have to install glibc-devel-32 bit and libstdc++-devel 32 bit together with your 64 bit. both libraries required by the Oracle to solve the linking problem.
    http://forums.oracle.com/forums/thread.jspa?messageID=1254866
    probably it will help you.
    sorry, this is just my guessing of your problem.
    thanks

  • OIM 9.1.0.1870.1 with Oracle database 11.1.0.7 - Hung threads

    Anyone seen issues like hung threads using OIM9.1.0 with Oracle Database 11.1.0.7?

    Thanks guys for the quick responses.
    But I have tried both the options for putting the jar in Third Party and also by uploading using the OOTB utility UploadJar.sh.
    But it is giving the same error.
    I have tired rebouncing the server and also Purge cached, but no success.
    Just to mention again, I have tried with all the last 3 postgres JDBC4 driver available on the site (u mentioned).
    So, any other clue?
    Thanks in advance.

  • Change of CR XI database dynamically to Oracle

    The following code is the one which I am using to change the database of CR XI(JDBC(JNDI)) dynamically to Oracle .....   
    final String CONNECTION_STRING = "Use JDBC=b(true);Connection URL=s(jdbc:oracle:thin:@servername:1521:EMUSER);" +
                    "Database Class Name=s(oracle.jdbc.driver.OracleDriver);Server=s(servername);" +
                    "User ID=s(emuser);Password=s(empass);Database=s(EMUSER);Trusted_Connection=b(false);" +
                    "JDBC Connection String=s(!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:@servername:1521:EMUSER;" +
                    "DatabaseName=;user=;password=!)";
              final String DATABASE_NAME = "EMUSER";
              final String URI = "!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:@servername:1521:EMUSER;DatabaseName=;user=;password=!";
              final String DATABASE_DLL = "crdb_jdbc.dll";
              Tables tables = databaseController.getDatabase().getTables();
    for (int i = 0; i lessthan tables.size(); i++) {
    ITable origTable = tables.getTable(i);
    ITable newTable = (ITable)origTable;
    newTable.setName(origTable.getName());
    newTable.setAlias(origTable.getAlias());
    IConnectionInfo iConnectionInfo = origTable.getConnectionInfo();
    PropertyBag propertyBag = new PropertyBag();
    propertyBag.put("Database Class Name","oracle.jdbc.driver.OracleDriver");
    propertyBag.put("Connection URL","jdbc:oracle:thin:@servername:1521:EMUSER");
    PropertyBag pb=new PropertyBag();
    pb.put(PropertyBagHelper.CONNINFO_CRQE_LOGONPROPERTIES, propertyBag);
    pb.put(PropertyBagHelper.CONNINFO_DATABASE_DLL, DATABASE_DLL);
    iConnectionInfo.setAttributes(propertyBag);
    iConnectionInfo.setUserName(DBUSERNAME);
    iConnectionInfo.setPassword(DBPASSWORD);
    iConnectionInfo.setAttributes(pb);
    newTable.setConnectionInfo(iConnectionInfo);
    databaseController.setTableLocation(origTable,newTable);
    The following is the exception which I got...
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: -
    Error code:-2147217395 Error code name:serverProgrammingError
         at com.crystaldecisions.sdk.occa.report.lib.ReportSDKException.throwReportSDKException(Unknown Source)
    I feel great if someone helps me in solving the above exception

    Post Author: Alleda
    CA Forum: Data Connectivity and SQL
    Hi
    I have a similar problem, have you found any solution?
    Dan

  • Installing Oracle Database with ASM on Oracle VM for SPARC

    We're installing Solaris 11 and Oracle VM for SPARC so we can install Oracle Database with ASM. There is a requirement when creating the database that the raw disk have an owner that is the same as the database. Everytime we try to change the owner it will always show that the owner is root.
    Any ideas?

    Hi
    Please let me know from where you are allocating ASM raw disks for the guest domain.
    i hope you are changing the disk permissions using chown -R
    Also confirm the permission using command # ls -IL /dev/rdsk
    Regards
    AB

  • How can I install Oracle Database 10g for Solaries (SPARC) from the console

    Dear Forum Members,
    In my office, I have to installed Oracle Database 10g for Solaries (SPARC). But I have to do it without DISPLAY Monitor.Is it possible install it by remote login to this server using response file (silent mode) or something like that?
    If yes. Then How?
    If anyone have the exact solution, then I need your feedback. I shall wait for your reply.
    Thanks
    Aungshuman Paul

    There are 2 possible ways to accomplish this.
    First,
    Silent installation
    http://www.informit.com/articles/article.asp?p=174771&rl=1
    Second, (cut/paste from other site)
    How to install Oracle software remotely?
    Remote Software Installation Steps: (For Solaris only)
    If you want to install Oracle Software remotely, you should perform the following steps. These steps are applicable only if your source and target machine are running Unix.
    For example, you can install Oracle Software from your home from Washington, DC to a target source in California.
    1. Pick your source server or machine for remote installation.
    2. Check that your CD is in your source CD-ROM drive.
    3. On the target machine, find your target machine name with the output of the /usr/bin/hostname
    4. On the source machine, login as a user.
    5. On the source machine, enable client access: % /usr/openwin/bin/xhost + target-machine-name
    6. Become root user by typing: su (don’t use -)
    7. Check that Volume Manger is running. # ps –ef |grep vold (if you see an entry that contains /usr/sbin/vold, Volume Manager is running. Then skip to Step 10.
    8. If not then do the following: # mkdir –p /cdrom/your-cd-file-name
    9. # mount –F hsfs –r cdrom-device /cdrom/your-cd-file-name
    10. Add the following line to your /etc/dfs/dfstab file: # share –F nfs –o ro /cdrom/your-cd-file-name
    11. Verify whether your source machine is an NFS server: # ps –ef | grep nfsd
    12. If you see an entry that contains /use/lib/nfs/nfsd –a 16, then nfsd is running and skip to Step 16.
    13. If nfsd is running, then type: # /usr/sbin/shareall
    14. If nfsd is not running, then start nfsd by typing: # /etc/init.d/nfs.server start
    15. Verify whether your source machine is an NFS server again by typing: # ps –ef | grep nfsd
    16. Make sure your source machine is exporting your product directory by typing: # /usr/sbin/dfshares
    17. Now, log in to the target machine by type: # rlogin target-machine-name –l user (not root)
    18. Then log in as the root user by typing: # su
    19. Go to the source machine by typing: # cd /net/source-machine/cdrom/your-cd-file-name ,then Skip to 24.
    20. If you cannot change to that directory in Step 19 and you do not have an auto-mounter on your network, then create amount point by typing the following commands.
    21. # mkdir /remote_products
    22. # /usr/sbin/mount –F nfs –r source-machine:/cdrom/your-cd-file-name /remote_products
    23. # cd /remote_products
    24. Redirect the target machine display to source machine by typing: # DISPLAY=source-machine:0; export DISPLAY (if you use a Bourne or Korn shell).
    25. Start the Web Start Installer by typing: # ./installer (or whatever the installer name program is).

  • Canot post thread to Oracle Database 10g Express Edition Forum

    Is it just me or is there an issue with posting a thread to the Oracle Database 10g Express Edition Forum? Every other forum I have tried has worked OK, but the XE forum results in a refresh of the currently displayed page. I am not able to reply to an existing thread either.
    Thanks

    I tested and the post link now works.
    Thanks

  • Instillation Error Oracle Database 11gR2 SPARC

    I am attempting to install Oracle Database 11gR2 on a Sun Blade2500 that is not connected to a network. I have followed the pre-instillation steps and when I attempt to run “runInstaller” I get the following error.
    Exception in thread “main” java.lang.NoClassDefFoundError
         at java.lsng.Class.forName0 (Native Method)
         at java.lang.Class.forName (Class.java:164)
         at java.awt.Toolkit$2.run (Tllokit.java:821)
         at java.security.AccessCintroller.doPrivileged (Native Method)
         at java.awt.Toolkit.getDefaultToolkit (Toolkit.java:804)
         at com.jgoodies.looks.LookUtils.isLowResolution (Unknown Source)
         at com.jgoodies.looks.LookUtils. <clinit> (Unknown Source)
         at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit> (PlasticLookAndFeel.jave:122)
         at java.lang.Class.forName0 (Native Method)
         at java.lang.Class.forName (Class.java:242)
         at javax.swing.SwingUtilities.loadSystemClass (SwingUtilities.java:1783)
         at javax.swing.UIManager.setLookAndFeel (UIManager.java:480)
         at oracle.install.commons.util.Application.startup (Application.java:758)
         at oracle.install.commons.flow.FlowApplication.startup (FlowApplication.java:164)
         at oracle.install.commons.flow.FlowApplication.startup (FlowApplication.java:181)
         at oracle.install.commons.base.driver.common.Installet.startup (Installer.java:256)
         at oracle.install.ivw.db.driver.DBInstaller.startup (DBInstaller.jave:114)
         at oracle.install.ivw.db.driver.DBInstaller.main (DBInstaller.java:132)

    I have tied reverting the shell limits back to the default with no change in the results.
    However I am having some trouble with the projmod command, my projid for the oracle user is “default” not “group.dba” and when I set the system parameters the #cat /etc/project returns the following:
    system:0::::
    user.root:1::::
    noproject:2::::
    default:3::::project.max-shm-memory=(priviledge,2147483648,deny)
    group.staff:10::::
    When I check the values they are all right except for the projid… do you think this will cause a problem?
    Also I have attempted to edit my shell startup file as per setup documentation however I cannot open /usr/sh with a text editor am I trying to edit the wrong file? I searched for .profile and could only find setup.profile because of this I cannot set the unmask value to 022.
    I am also having issues running xclock wail signed in as the oracle user I have the DISPLAY variable set properly and I can access xclock wail logged into the root user. The installer checks the monitor’s ability to run at the minimum 256 colors using xdpyinfo and returns an error saying that my DISPLAY variable may be set wrong… xdpyinfo runs fine wail logged onto the root user. I think fixing this problem may help a lot.

  • Sun T2 chips vs SPARC64 VI/VII chips for Oracle database servers

    We have recently found poor performance of Sun T5240 servers where (against previous V series servers with similar gross I/O capabilities on the disk volume)the timings for the recovery of the database, and the subsequent re-build of the tables and materialised views, are variable from slightly worse to atrocious. Given that the clock-speed is similar,and all significant oracle database parameters are the same, we couldn't see why these processes should take longer on the T5240. The statistics report from the database showed no I/O bottleneck on the new machine, instead it showed raised CPU times for some of the key slow statements.
    We found the attached oracle metalink document (ref 781763.1) <<Sun_T2_slow_for Oracle_DB.html>>
    Seems to be that if you can't control the content of large long-running SQL statements to parallelise them, don't buy a T-series box as the multithreading capability will work against you.
    Therefore we are looking at new servers to run other similar large Oracle apps and appear to have a number of choices within a similar price range
    Notably
    M3000 - 1 x SPARC VII CPU (quad core procesor)
    M4000 - 2 x SPARC VI CPU (dual core processor)
    as opposed to the
    T5240 - 2 x T2 CPU (8 core processor)
    Question is which of these CPU/Core combinations works best...are there performance figures? What's the difference between CPU's and number of cores?
    Any benchmarks to help us decide? Anyone experienced similar or tried these different combos for themselves?

    We tested a T5210 as a database server (running Ingres, not Oracle) and our batch performance was roughly equivalent to a dual CPU UltraSPARC III V480. Our guess is that the performance hit came from having a relatively small cache shared across so many threads. Like you, we're looking at using the M3000 or M4000 in preference.

  • Pagination support for non-Oracle databases?

    Hi,
    I just read this thread (Pagination Support on pagination support. Is there any way to get pagination with non-Oracle databases? We are using an IBM iSeries / AS/400 DB2 database right now, and we're planning to use some local lightweight database in the near future as well (probably Cloudscape/Derby or "IBM Everyplace database".)
    We currently use code like this:
    String sql = "SELECT art FROM Artikel art" +
                /* dynamically generated where statement is added here */
                + "ORDER BY art.artikelNummer";
    Query q = em.createQuery(sql);
    q.setFirstResult(firstResult);
    q.setMaxResults(maxResults);If I look in the TopLink logs, I see queries like this:
    SELECT ARTNR, ARALT, ARAFJ, ARXII, ARAVJ, ARXIV, ARANJ, AHGCD, ARNVJ, ARCRJ, ARARK, ARFKJ, ARTNK, ARGP1, ASGCD, ARGP2, ARPR1, ARGP3, ARPR2, AREX1, ARPR3, AREX2, ARPR4, AREX3, ARASA, ARINA, ASSCD, ARIA1, ARBAN, ARIN1, ARBAV, ARIA2, ARBAK, ARIN2, ARCES, ARIA3, ARCDT, ARIN3, ARCRE, ARIA4, ARCWK, ARIN4, ARHBH, ARIA5, ARDFA, ARIN5, ARDFG, ARIA6, ARDOS, ARIN6, AREPW, ARINN, ARFOD, ARIAS, ARFOE, ARINS, ARFOF, ARNAB, ARFOI, ARNIB, ARFON, ARNIA, ARFOS, ARNN1, ARFTA, ARNA2, ARVIV, ARNO2, ARGAP, ARNN3, ARGPT, ARNA4, ARGPD, ARNO4, ARGPA, ARNN5, ARGPO, ARNA6, ARHIS, ARNN6, ARISP, ARNIO, ARKHM, ARNNS, MAGCD, AROVJ, MTGCD, ARPL1, ARMXM, ARPL2, MRKCD, ARPL3, ARMVR, ARVKJ, ARMIM, ARV12, ARMDT, ARVVJ, ARMTE, AR#VR, ARMTU, ARZLS, ARMTM, ARIAT, ARMWK, ARAVS, MPCCD, ARNVS, ARBTW, ARFJS, ARXI2, ARG2S, ARXI3, ARE1S, ARXI4, ARE3S, ARXI6, ARIB1, ARXI1, ARIB2, ARXI5, ARIB3, AROPI, ARIB4, ARPRV, ARIB5, SZGCD, ARIB6, ARSPC, ARINO, ARSMF, ARIOS, VEAAN, ARNIS, ARSYN, ARNO1, ARVR1, ARNA3, ARV1S, ARNN4, ARVR2, ARNO5, ARV2S, ARNIN, ARVR3, ARNOS, ARV3S, ARP1S, ARTFA, ARP3S, ARTFG, ARS12, ARUVC, ARZLD, ARUCW, ARAJS, ARBKV, ARCJS, ARVVI, ARG3S, ARVVP, ARINB, VPOCD, ARIO2, VPECD, ARIO4, ARVIH, ARIO6, ARVHG, ARNBS, ARVRW, ARNN2, ARVPR, ARNA5, ARVVR, ARNAS, ARVVS, ARP2S, ARVV1, ARSVV, ARZK1, ARNJS, ARNA1, ARNO3, ARIO1, ARNO6, ARIO5, AROJS, ARE2S, ARVJS, ARIBS, ARIAD, ARIO3, ARG1S FROM ART WHERE ((((ARUVC = 'N') AND (ARHIS = 'N')) AND (ASGCD = 7)) AND (AHGCD = 15)) ORDER BY ARTNR ASC
    (Yeah, I know we have too much columns in the table...)
    So, no pagination in the query. As you can see, we have a mechanism in place to dynamically generate a where clause. This is because the user can set filters. The problem is, if our user sets a filter that causes the result set to be significantly smaller, the performance is way better than when he sets no filter at all. We suppose this is because the whole result set is sent to TopLink, regardless of the values of firstResult and maxResults.
    We are using TopLink Essentials 2.1-10, by the way.
    Message was edited by:
    Bart Kummel

    Hi all,
    I'm trying to subclass <tt>DatabasePlatform</tt> to add pagination support for the AS/400 DB2 database of my customer. To be fair, it is not going very well so far.
    The first problem is, the query Chris found by googling (Re: Pagination support for non-Oracle databases?), does not work for AS/400s version of DB2. In fact, although it is called "DB2", the database on the AS/400 system is a whole other database than the "normal" DB2 database that runs on Windows and *nix. The AS/400 DB2 simply does not have a "ROW_NEXT" function.
    Another option would be to use the <b>row_number() over()</b> mehtod. But, as can be read here, this function is only available from version V5R4 of OS/400. And guess what? We're stuck on V5R3 at this client. (We cannot upgrade, because there's an application in use that's written in Delphi and IBM dropped the Delphi binding from V5R4...)
    So I pretty much ran out of options. On the mailing list I linked to above, someone mentions the option to make a sort of stored procedure that generates a row count number. An example of how to do this can be found here. I implemented it, and ended up with this code:
    package com.myclientsname.persistence;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import org.eclipse.persistence.expressions.ExpressionBuilder;
    import org.eclipse.persistence.internal.databaseaccess.DatabaseCall;
    import org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter;
    import org.eclipse.persistence.internal.expressions.SQLSelectStatement;
    import org.eclipse.persistence.internal.sessions.AbstractSession;
    import org.eclipse.persistence.logging.SessionLog;
    import org.eclipse.persistence.platform.database.DatabasePlatform;
    import org.eclipse.persistence.sessions.SessionProfiler;
    public class AS400Platform extends DatabasePlatform {
        private static final long serialVersionUID = 0L;
        public AS400Platform(){
             super();
             super.setShouldBindAllParameters(false);
        public void printSQLSelectStatement(DatabaseCall call, ExpressionSQLPrinter printer, SQLSelectStatement statement) {
            int max = 0;
            int firstRow = 0;
            if (statement.getQuery()!=null){
                max = statement.getQuery().getMaxRows();
                firstRow = statement.getQuery().getFirstResult();
            if ( !(max>0) && !(firstRow>0) ){
                super.printSQLSelectStatement(call, printer,statement);
                return;
            } else {
                statement.setUseUniqueFieldAliases(true);
                ExpressionBuilder builder = new ExpressionBuilder();
                statement.addField(builder.getField("COUNTER() AS CNTR"));
                printer.printString("SELECT * FROM (");
                call.setFields(statement.printSQL(printer));
                printer.printString(") AS R WHERE R.CNTR >= ");
                printer.printParameter(DatabaseCall.FIRSTRESULT_FIELD);
                if ( max > 0 ){
                    // Use of binding parameters is not allowed here, so use
                    // String concatenation instead...
                    printer.printString(" FETCH FIRST " + max + " ROWS ONLY");
            call.setIgnoreFirstRowMaxResultsSettings(true);
        public boolean wasFailureCommunicationBased(SQLException exception, Connection connection, AbstractSession sessionForProfile){
            if (connection == null || this.pingSQL == null){
                //Without a connection we are  unable to determine what caused the error so return false.
                //The only case where connection will be null should be External Connection Pooling so
                //returning false is ok as there is no connection management requirement
                    //If there is no ping sql then we can not perform the ping.
                return false;
            PreparedStatement statement = null;
            try{
                sessionForProfile.startOperationProfile(SessionProfiler.ConnectionPing);
                if (sessionForProfile.shouldLog(SessionLog.FINE, SessionLog.SQL)) {// Avoid printing if no logging required.
                     sessionForProfile.log(SessionLog.FINE, SessionLog.SQL, getPingSQL(), (Object[])null, null, false);
                statement = connection.prepareStatement(getPingSQL());
                ResultSet result = statement.executeQuery();
                result.close();
                statement.close();
            }catch (SQLException ex){
                try{
                    // Had to add this check because of NullPointerExceptions
                    // (maybe a bug?)
                    if(statement != null){
                        //try to close statement again in case the query or result.close() caused an exception.
                        statement.close();
                } catch (SQLException exception2) {
                    //ignore;
                return true;
            }finally{
                sessionForProfile.endOperationProfile(SessionProfiler.ConnectionPing);
            return false;
    }(As you can see, I had to override the <tt>wasFailureCommunicationBased()</tt> method as well, due to some unexpected NPE's. (A bug, perhaps?))
    This code does work. However, the performance is not very well. The first page comes relatively fast, but as you browse further in the table, each page comes slower. I assume this is because the counter() method has to be evaluated for each row in the table.
    I have to get the performance better and constant. Does anyone have an idea how to optimize this further?
    Best regards,
    Bart Kummel

  • Connecting Oracle DataBase through WebDynpro

    Hi,
    I created a Dynamic table, now I should display the data from Oracle Database. I tried in many various ways to connect to database, but the data is not retrieving.
    Can u explain the reasons and give necessary coding to retrieve the data.
    Its very very urgent.

    Hi
    I think you can do using the APIs provided by SAP.
    Check this link
    JDBC Reference
    or
    Try connectinc using lookup.
    try{
    InitialContext ctx=new InitialContext();
    javax.sql.DataSource ds=(javax.sql.DataSource)ctx.lookup("jdbc/SAPJ2EDB");
    java.sql.Connection con=ds.getConnection();
    java.sql.Statement stmt=con.createStatement();
    con.close();
    catch(Exception e)
    wdComponentAPI.getMessageManager().reportException("Exception "+e,true);
    Check this thread moreuseful.
    WebDynpro and Oracle Connection
    Please Check these threads
    Re: I need a j2ee code for getting data from oracle database
    Re: oracle connection
    Re: problem with displaying records from the database in a table ui element
    See this sample application and help
    https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/f0b0e990-0201-0010-cc96-d7ecd2e51715
    I hope these links will help u resolve your problem.
    All The Best
    Priyanka
    Do Reward Points

  • Running oracle database xe (express edition) on windows server 2008 r2

    Is it supported to run Oracle Database XE on Windows Server 2008 R2?
    Database XE is only supported as 32-bit. Current builds of Windows Server 2008 only come in x64 configurations.
    Here are the Database XE system requirements for windows:
    [http://docs.oracle.com/cd/E17781_01/install.112/e18803/toc.htm]
    The docs say that 32-bit windows is required, yet they also say that windows server 2008 is supported.
    Windows Server 2008 R2 came out in 2009, and in R2 they eliminated 32-bit OS (though there is the WOW64 subsystem to run 32-bit programs within the 64-bit OS).
    See:
    - [Wikipedia page about windows server 2008 with info on R2|http://en.wikipedia.org/wiki/Windows_Server_2008#Windows_Server_2008_R2]
    - [Wikipedia page on "windows 32-bit on windows 64-bit"|http://en.wikipedia.org/wiki/WOW64]
    Thanks,
    Matt

    Hello Matt,
    Is it supported to run Oracle Database XE on Windows Server 2008 R2?No.
    The docs say that 32-bit windows is required, yet they also say that windows server 2008 is supported.So this means that only 32bit versions of 2008 will be supported.
    Windows Server 2008 R2 came out in 2009, and in R2 they eliminated 32-bit OS (though there is the WOW64 subsystem to run 32-bit programs within the 64-bit OS).Which is probably why 2008 R2 is not supported.
    You can either take the VM approach and install a 32 bit Windows or 64 bit Linux host, or you can queue in the list of persons waiting for a 64 bit Windows release. See the following thread for details (and the queue) for the latter: {thread:id=2277728}
    -Udo

  • How to pass a date parameter from report builder query designer to oracle database

    i'm using report builder 3.0 connected to oracle database. i'm trying to pass a date parameter in the query with no success, i don't
    know the exact syntax. I've tried :
    SELECT * FROM igeneral.GCL_CLAIMS where CREATED_BY IN (:CREATED_BY) AND CLAIM_YEAR IN(:UW_YEAR) AND (LOSS_DATE) >To_Date('01/01/2014','mm/dd/yyyy')
    it worked perfectly.
    However if i try to put a date parameter "From" instead of 01/01/2014 it will not work, a Define Query Parameter popup window appear and error occurred after i fill
    the values (usually i shouldnt get this popup i should enter the value when i run the report)
    SELECT * FROM igeneral.GCL_CLAIMS where CREATED_BY IN (:CREATED_BY) AND CLAIM_YEAR IN(:UW_YEAR) AND (LOSS_DATE) >To_Date(:From,'mm/dd/yyyy')
    appreciate your assistance

    Hi Gorgo,
    According to your description, you have problem when in passing a parameter for running a Oracle Query. Right?
    Based on my knowledge, it use "&" as synax for parameter in Oracle, like we use "@" in SQL Server. In this scenario, maybe you can try '01/01/2014' when inputing in "From". We are not sure if there's any limitation for To_Date()
    function. For your self-testing, you can try the query in sqlplus/sql delveloper. Since your issue is related to Oracle query, we suggest you post this thread onto Oracle forum.
    Best Regards,
    Simon Hou

  • Problem with Java and Oracle Database -  help !

    i keep getting a NullPointerException when trying to
    update a resultSet in a servlet. i am bringing in the data
    just fine from an Oracle database. but it chokes when trying
    to update it. can anybody tell me what is happening?
    thanks for any help
    Owen
    ResultSet rs = stmt.executeQuery( "select * from sw_assets" );
    rs.next();
    rs.updateString("name","XXX"); <--- BOOM !
    java.lang.NullPointerException
    at sun.jdbc.odbc.JdbcOdbcBoundCol.setRowValues(JdbcOdbcBoundCol.java:240)
    at sun.jdbc.odbc.JdbcOdbcResultSet.updateChar(JdbcOdbcResultSet.java:3767)
    at sun.jdbc.odbc.JdbcOdbcResultSet.updateString(JdbcOdbcResultSet.java:3257)
    at sun.jdbc.odbc.JdbcOdbcResultSet.updateString(JdbcOdbcResultSet.java:3848)
    at _0002fopen_0002ejspopen_jsp_3._jspService(_0002fopen_0002ejspopen_jsp_3.java:87)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
    at org.apache.tomcat.core.Handler.service(Handler.java:286)
    at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
    at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
    at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
    at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
    at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
    at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
    at java.lang.Thread.run(Thread.java:484)

    ResultSets based on a wildcard are generally treated as views by Oracle, meaning they are not updatable no matter how you create your statement. Try either "select swa.* from sw_assets swa" or "select all from sw_assets swa", that should get around the problem.
    Also (just being thorough) make sure that you specifically created your statement as being updatable (stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE) ).
    I would not normally expect a NullPointerException when encountering this "feature", but then I don't often use the ODBC bridge.
    Good luck! I hope this helps.

Maybe you are looking for

  • Report and Layout Import Wizard does not work

    We used the Report and Layout Import Wizard extensively in 8.80 with no problems encountered. We are now upgraded to 8.81 PL07.  This is the first attempt at using the wizard in 8.81.  The intro window of the wizard, with 'To Start, use the "Next" bu

  • Apple tv navigation screen doesn't fit tv

    I've had a problem with the ATV main navigation screen not fitting on the TV screen since the last software update a week ago. It's too big. When I stream something from netflix or watch regular tv it's fine. I assume it's some kind of screen resolut

  • Why is the entire song is in the right channel?!

    I thought my headphones were broken! In a only single file in GarageBand, the entire song is in the right channel. All of the tracks but 2 are software instruments that I recorded from a MIDI keyboard. The other 2 are loops from the library. Every tr

  • Helpful sites

    Do you guys have any suggestions for helpful sites to visit to get more information about anything to do with Macs. Like backing up, troubleshooting, learning more in depth explanations, etc... Thanks in advance.

  • Portal runtime error on Logon Get Support functionality

    Hi portal gurus, I have a problem regarding logon get support functionality on welcome page , it is giving portal runtime error at that place. I had done required changes in Visual administrator under ume provider and on portal under sys administrati