[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Sep 2002
    Beiträge
    47

    Angry DTAQ lesen stoppt nach ca. 2-3 Sätzen für 2 Sekunden

    Hi!

    Ich habe ein Problem mit DTAQ lesen unter Java mit JTopen.
    Die DTAQ ist pro Satz 2048 Byte gross und gekeyt.
    In einem Thread werden DTAQ Sätze empfangen. Nach ca. 2-3 empfangenden Sätzen bleibt der Thread in der Methode „dq.read()“ für ca. 2 Sekunden stehen, als ob er auf neue Daten wartet. Bloss in der DTAQ stehen noch 20 Sätze drin die zu empfangen wären.

    Hat jemand eine Idee woran das liegen kann?

    Benutzt wird PC seitig JTOpen 4.5 + Java SDK 1.4.2_5 und die iSeries läuft unter V5R1M0.

    Beispiel:

    // Thread ….
    public void run() {

    KeyedDataQueueEntry kdqe = null;

    while (!isDone()) {
    try {
    System.out.println("Nex: " + new
    Date(System.currentTimeMillis()));
    kdqe = dq.read(dtaqKey, -1, "EQ");
    System.out.println("Get: " + new
    Date(System.currentTimeMillis()));
    }
    }
    }

    Timestamp:

    Write: Wed Sep 08 12:22:14 CEST 2004
    Write: Wed Sep 08 12:22:14 CEST 2004
    Get: Wed Sep 08 12:22:14 CEST 2004
    Nex: Wed Sep 08 12:22:14 CEST 2004
    Get: Wed Sep 08 12:22:14 CEST 2004
    Nex: Wed Sep 08 12:22:14 CEST 2004
    Get: Wed Sep 08 12:22:16 CEST 2004 // Hier 2 Sekunden Pause,
    Nex: Wed Sep 08 12:22:16 CEST 2004 // danach läuft alle normal
    Get: Wed Sep 08 12:22:16 CEST 2004 // weiter.
    Nex: Wed Sep 08 12:22:16 CEST 2004

    Danke !
    Ciao
    Nili

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Hallo,

    Zitat Zitat von Nili
    Hi!

    Ich habe ein Problem mit DTAQ lesen unter Java mit JTopen.
    Die DTAQ ist pro Satz 2048 Byte gross und gekeyt.
    In einem Thread werden DTAQ Sätze empfangen. Nach ca. 2-3 empfangenden Sätzen bleibt der Thread in der Methode ?dq.read()? für ca. 2 Sekunden stehen, als ob er auf neue Daten wartet. Bloss in der DTAQ stehen noch 20 Sätze drin die zu empfangen wären.

    Hat jemand eine Idee woran das liegen kann?

    Danke !
    spontan fallen mir 3 Kandidaten ein:
    - garbage Collection
    - Bug in jtopen
    - timestamp ungenau

    ersteres könnte man weiter untersuchen durch gezieltes Anstoßen des gc oder durch timestamps in finalize() Methoden, oder vielleicht sollte man der JVM beim Start mal mehr Speicher geben.

    zweiteres könnte man untersuchen durch Wechsel der jtopen Version

    drittes erscheint mir unwahrscheinlich, so ungenau sollte der Timestamp von System nun auch wieder nicht sein.

    Eventuell liegt die Ursache auch AS400 seitig, was ist denn so auf der Möhre los?

    mfg

    Dieter Bender
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Sep 2002
    Beiträge
    47
    Hallo!

    Zitat Zitat von BenderD
    Hallo,

    spontan fallen mir 3 Kandidaten ein:
    - garbage Collection
    - Bug in jtopen
    - timestamp ungenau

    auf der Möhre los?

    mfg

    Dieter Bender
    Trifft alles 3 nicht zu.
    GC hab ich mal deaktiviert, keine Verbesserung.
    Bug in JTOpen, nee, glaub ich nicht. Hab 3 Versionen durch probiert. Die im JTOpen Forum meinen das liegt an der iSeries,
    dem schliess ich mich mal an.

    Hab mal nen TRCTCPAPP gemacht und der bringt folgendes zu Tage:

    19:40:49.522216 Trace Point: Qzbs1050 Entry Type: 2 Function ID: QzbsReceiveClientReq
    000006330000E007 0000000000000023 00160005C7E4C96D C4E3C1D84040D7C5 *......Ö.............GUI_DTAQ PE*
    D7D9404040404040 F1F1000005FC5001 F2F64040F0F0F0F0 4040404040404040 *PR 11....&.26 0000 *
    4040404040404040 4040404040404040 4040404040404040 4040404040404040 * *
    4040404040404040 4040404040404040 4040404040404040 4040404040404040 * *
    4040404040404040 4040404040404040 4040404040404040 4040404040404040 * *

    19:40:49.522800 Trace Point: Qzbs1060 Entry Type: 2 Function ID: QzbsSendClientReq
    000000160000E007 0000000000000023 00028002F000 *......Ö.............0. *
    19:40:51.580608 Trace Point: Qzbs1060 Entry Type: 2 Function ID: QzbsSendClientReq
    0000084D0000E007 0000000000000021 00268003F0004040 4040404040404040 *...(..Ö.............0. *
    4040404040404040 4040404040404040 4040404040404040 4040000008065001 * ....&.*
    F2F64040F0F0F0F0 4040C8C4F440F0F1 F0F0F0F4F0F0F1D3 F0F0F14040404040 *26 0000 HD4 010004001L001 *
    4040404040C1F0F7 F9F0F04022404040 40404040404040F1 F0F14040C8C1E4D7 * A07900 . 101 HAUP*
    E3D4C5D55A005CD4 C5D5E44040404040 D3C9D540F0F1F0F0 F0F1F0F0F1D9F0F0 *TMENÜ.*MENU LIN 010001001R00*
    F1D4C5D5E4F1F0F2 404040E3F0F0F7F0 F040204040404040 4040404040F2005C *1MENU102 T00700 . 2.**

    Vielleicht noch ein paar andere Ideen?

    Danke!
    Ciao
    Nili

Similar Threads

  1. DTAQ Attribute auslesen
    By kuempi von stein in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 28-11-06, 05:48
  2. CA und VPN (die nn. Frage dazu)
    By malzusrex in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 23-08-06, 17:12
  3. Papierfach für Hostdruck in CA
    By usafft in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 18-08-06, 10:12
  4. dynamische Satzauswahl / Rumba vs. CA
    By y-richy in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 10-08-06, 13:59
  5. 520 – welche Platten, Release und CA 4.5?
    By cassi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 19-07-06, 12:05

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •