The DB_KEYEMPTY return code ?

Hi,
We are using a Berkeley DB queue in a transactional database. Our application is designed with some threads inserting records into the queue and a single thread reading records from the queue. Our concern is around the reading of the queue where we use the "Db::get" method to read records using a given recno key:
     rtn = m_queueDb->get(m_dbTxn, &m_queueDbKey, &m_queueDbData, DB_READ_COMMITTED);
Note, we are intentionally not using DB_CONSUME/DB_CONSUME_WAIT as we may want to read the record again at a later date. We also have maintenance tasks to clean-up (consume) records when we are certain the records are no longer needed in the queue.
We would like someone explain the scenarios in which the "DB_KEYEMPTY" code is returned for the "Db::get" method:
The documentation appears to be a little unclear around the exact circumstances that cause the DB_KEYEMPTY code to be returned:
http://www.sleepycat.com/docs/api_cxx/db_get.html
Since we use the "Db::get" method with an incrementing recno key to our retrieve records in the queue, we assume that it is possible to get a DB_KEYEMPTY return code for records that were part of a transaction which was rolled back (i.e. these would be implicit records we should skip over). Is that a fair assumption?
Also, what else might cause a DB_KEYEMPTY code to be returned, because we seem to be getting this even when nothing is rolled back?
Thanks,
Atiq.

Hi Atiq,
Since the reader and writers are in separate threads,
there is always the chance that the reader thread may
be reading the queue while a writer is adding records
in an open transaction. Due to the nature of our
application, it is not appropriate for us to
co-ordinate our worker threads such that we suspend
the writer threads while the reader thread attempts
to read the queue. We were expecting that the
DB_READ_COMMITTED isolation level would be sufficient
to take care of this.The readers threads will only see data that had been committed by the writer threads. If your application is under the constraint of having the threads work so that neither of them can suspend and wait for the other one, maybe you should consider relaxing the isolation degree, and use DB_READ_UNCOMMITTED (this flag should be specified when opening the database "DB->open", as well as when creating the transaction "DB_ENV->txn_begin").
Of course, this means that the readers threads can get data that could disappear at a future moment, due to aborting a writing transaction.
> DB_KEYEMPTY could be thrown in case you are
trying to retrieve a record
inserted in a transaction that hasn't been yetcommitted (or a record inserted
through using an aborted transaction).
OK. The statement above outlines two different
scenarios:
(1) DB_KEYEMPTY can be thrown to the reader thread
while trying to retrieve a record inserted in an open
transaction (i.e. not yet committed). Is this true
while using the DB_READ_COMMITTED flag? If so, in
this particular case we should wait and then trying
reading the record again in the expectancy that it
will be committed soon.Yes this is the behavior when using the second isolation degree, DB_READ_COMMITTED. The reader thread should begin working after the writing transaction had been committed (estimate how long you should delay starting your readers threads).
(2) DB_KEYEMPTY can be thrown to the reader thread
while trying to retrieve a record inserted in an
aborted transaction. In this particular case I assume
it is sensible to skip this record?Records inserted in an aborted transaction will never be seen by the reader thread, since they hadn't been committed. If you were using DB_READ_UNCOMMITTED, these records would be seen by the reader threads, before being dropped.
> You may also step into this exception if the
specified key exists, but wasn't
explicitly created through your application or waslater deleted.
The statement "wasn't explicitly created through your
application" is a little unclear to me. Can you
please clarify further what this means?It's possible to insert a record that has a specific number which is greater that any other record numbers existing in the Recno (or Queue) database. Fictive records will then be created with record numbers between the newly inserted record number and the first record number smaller than this one (e.g.: your database has 48 records; the greatest record number in the database than, is 48; let's say that you insert a record with a specific record number of 52; implicit records are created, with record numbers 49 to 51).
If you try to retrieve any of these " fictive" records, DB_KEYEMPTY will be thrown, because for these records, data doesn't exist.
Thank you, best regards,
Andrei Costache
Oracle Support Services

Similar Messages

  • Why have the patch return codes changed?

    When patching sparc Solaris 10, have the patch return code 2's now become code 1's? Why the change? Is there documentation somewhere about this? What other ones have changed?

    Code 1 could indicate a number of different things besides patch allready installed which there is a code allready for. I do not really have the time to search through all the logs to verify this. I believe this is a problem that needs addressed.

  • What does the return code 20 stands for in the Transport request log

    Hi,
    When we have retreived the Transport request log by using the Unix command, we have got return code 20.
    Please let us know what does the return code 20 stands for and under what scenerios I will get the return code 20.
    Thanks & Regards,
    Madhuri.

    chk the last return code in this link
    http://help.sap.com/saphelp_nw2004s/helpdata/en/57/38e26c4eb711d182bf0000e829fbfe/content.htm

  • Tp ended with return code 0212

    Hi Experts,
    when Iu2019m trying to release a transport request in Development Iu2019m getting the following return code
    Test call of transport control program (tp) ended with return code 0212.
    please let me know how to proceed with this return code...
    SAP 4.6C
    Windows 2003
    Datebase 10.0.2.2
    Regards
    Prakash

    When i go for tp system log, i'm getting the TMS Alert Viewer:Warning
    command - TMS_MGR_READ_TP_SYSLOG
    service - Transport service
    Function - TMS_TP_READ_LOGFILE
    Message - OPEN_FAILED
    Regards
    Prakash

  • How to evaluate 64 bit return code from realtime sequence

    Hello,
    I'm using the ExecuteAsync method of the StimulusProfile Class to execute a stimulus profile. The stimulus profile only contains one entry: A call to a realtime sequence.
    After the profile has finished executing I retrieve the return code of the realtime sequence by opening the result XML-File. 
    The xml-node of intrest might light look this:
    <TestResult ID="ReturnValue">
       <TestData>
              <Datum xsi:type="unsignedInteger" value="2147516544" xmlns="http://www.ieee.org/ATML/2006/Common" />
        </TestData>
    My problem is that the "value" attribute seems to be limited to 32 Bit. The upper 32 Bit of my 64 Bit return code are simply cutoff. How do I get the complete return code?
    After I ran into this problem when using the .NET API, I tried to do a "NumericBoundsCheck" evaluation using the Stimulus Profile Editor. As expected, it doesn't work correctly when working with values > 2^32 - 1.
    I'm using VeriStand 2012.
    Thanks

    Hello Gregor,
    I don't think it's necessary to post example code. Just return a value >= 2^32 from a realtime sequence and you will see that the evaluation in the realtime stimulus editor does not work correctly. Also, in the resulting XML-File, the return value will be truncated to 32 Bit.
    Meanwhile I have found that this this issue has already been discussed on this board (http://forums.ni.com/t5/NI-VeriStand/ATML-return-value-does-not-return-Uint64/m-p/2848796#M3649), but no solution was proposed so far.  
    I now run my realtime sequence using the ClientAPI. This allows me to evaluate the full 64Bit.
    Regards
    Krid

  • How do you carry out an event if a job finishes with a return code 4?

    Hi
    A job which would complete successfully in SAP via the SM36 scheduler completes with an 'Error' in Redwood CPS because there are errors within the spool and it ends with a return code 4.
    We don't want this to error in Redwood CPS, so we have set the return code mapping to Completed with entries of 0 and 4.
    I.e. whether or not there is an error in the spool, the job will complete successfully in Redwood CPS.
    However, we want to be alerted if there are errors in the spool.
    How do we do this? The manual says "A job can raise one or more events when the job gets a specific job status or return code" - where is this set? I can see on the 'Event' tab of a job definition you can raise an Event when the job enters a specific status, but I only want to raise an event (or carry out a step / send an email etc) if I get a return code 4 (none of the job statuses are relevant) - how can I do this?
    Thanks
    Ross

    Hi Anton
    Thanks for that. However, it's a bit more complicated...
    I have a job chain with 2 steps. Any one of the two steps can have an error in the spool which by default in Redwood CPS result in the job ending in status Error. I don't want this, as the second step should still run if the first step ran okay with with errors in the spool (but shouldn't run at all if the 1st step fails completely). I.e. setting 'on Error goto step 2' or having no dependancy at all is not what we want.
    Therefore, I set the return code mapping on Completed to return codes 0 and 4. I.e. if step 1 has an error in the spool (return code 4) it still ends as 'Completed' and step 2 runs.
    Our problem is that we want to be alerted if there is a return code 4 (error in the spool). I tried as you suggested by entering on the 'Raise Event' tab of the job chain to raise an event on status 'Error' with a return code of 4. But no event was raised. I think this is because the return code mapping is setting the status to 'Completed' (on return code 0 or 4) BEFORE the software checks the status; i.e. the status is actually 'Completed' (rc=4) and not 'Error' (rc=4) so an event is not raised.
    Ideally I want to set the Event to be raised on status 'Completed' with a return code 4 - but when I select 'Completed' the 'Error Code' box is greyed out.
    I.e. can't set this - I can only set on a generic 'Completed' and I don't want to raise a message if the status is Completed but the return code is 0....
    Any ideas??
    Ross

  • IMPORT_PROPER return code is 16

    hi gurus, i am installing support pack for ecc 5 and the patch level is sapkb64012 i applyed continues 10,11, 12 and when i am applying 12 it's given dump no users can logon  like syntax error , the tp return code is 16
    this is error information please give me any hints The import was stopped, since an error occurred during the phase
    IMPORT_PROPER, which the Support Package Manager is unable to resolve
    without your input.
    After you have corrected the cause of the error, continue with the
    import by choosing Support Package -> Import queue from the initial
    screen of the Support Package Manager.
    The following details help you to analyze the problem:
        -   Error in phase: IMPORT_PROPER
        -   Reason for error: TP_STEP_FAILURE
        -   Return code: 0016
        -   Error message: OCS Package SAPKB64012, tp step "I", return code
            0016
    Notes on phase IMPORT_PROPER
    In this phase repository objects and table entries are imported. This
    phase can terminate due to the following reasons:
    o   TP_INTERFACE_FAILURE: The tp interface could not be called.
    o   TP_FAILURE: The program tp could not be executed. For more
        information on this, see the SLOG or ALOG log file.
    o   TP_STEP_FAILURE: A tp step could not be executed. To find the cause
        of the error, see the appropriate log, such as the import log.
        If the cancelation message contains a tp step 6, N or S, the step in
        question is independent of the transport request. You can find these
        logs under the node Import steps not specific to transport request
        in the log overview.
        Alternatively, you can find these logs in the following files in the
        log directory of your transport directory (usually:
            /usr/sap/trans/log):
          -   tp Step 6: P<YY><MM><DD>.<SID>
          -   tp Step N: N<YY><MM><DD>.<SID>
          -   tp Step S: DS<YY><MM><DD>.<SID>
          You can display these files using the report RSPUTPRT or by calling
          transaction AL11.
      A prerequisite of the Support Package Manager is that the Change and
      Transport System (CTS) is configured correctly. For more detailed
      information, read the online documentation available from Help -> SAP
      Library -> mySAP Technology Components -> SAP Web Application Server ->
    Change and Transport System .
    A list of the most important SAP Notes for Online Correction Support
    (OCS) is available in SAP Note 97620, which is updated regularly
    cheers

    Read what you have posted:
    Alternatively, you can find these logs in the following files in the
    log directory of your transport directory (usually:
    /usr/sap/trans/log):
    - tp Step 6: P<YY><MM><DD>.<SID>
    - tp Step N: N<YY><MM><DD>.<SID>
    - tp Step S: DS<YY><MM><DD>.<SID>
    Sort the files by date and check the latest one.
    Markus

  • How to invoke from UNIX script and pass back return code?

    Though I am an experienced developer, I am new to java. I created a class containing a single method. I have performed my testing by running the class class.method from the command line in a UNIX (Solaris) environment. Now, I would like to have the class.method invoked from a UNIX shell script, and to return a success/failure indicator from the method, to the UNIX script. I modified the method to make it return char, rather than being defined as void. Within the class and method, I declared and initialized a char variable. I added a finally clause which contains a single return statement, returning the char return code variable. Within my UNIX script, I invoke the class/method as follows:
    return_code = java myClass
    This does not seem to be invoking the method however. Can someone please tell me what I am doing wrong? Or is more information needed in order for someone to help me out.
    Please let me know.
    Thanks.
    Brad

    stdunbar,
    Using your suggestion of System.exit(retVal); seems to allow the java method to be performed successfully (Thank You). But I am still having a problem with the value being recognized by the shell script.
    In my script, I'm doing the following:
    java MyClass inputparameter > return_code
    export return_code
    echo $return_code
    But return_code does not seem to contain a value. Just before the System.exit(retVal); I added System.out.println("return code = " + retVal ); and I can see that retVal. When I run the java method outside of the UNIX shell script, I can see that retVal does indeed contain a value. So I think my problem might actually be the code in the UNIX script.
    Thanks again.
    Brad

  • Return code = 00000057 using a gem pc twin reader with OCF

    Hello, i really need help.
    I'm having the famous return code = 00000057 when i try to send an APDU command, I'm using a applet proxy, so it send an select APDU inside the OCF framework, and the result is success, so i'm able to send an select Applet, but when i try to send the following apdu:
    allocateCardChannel();
    // Set up the command APDU and send it to the card.
    getBalanceAPDU.setLength(0);
    getBalanceAPDU.append(MyAPPLET_CLA); // Class
    getBalanceAPDU.append(VERIFY_INS); // Instr'n
    getBalanceAPDU.append((byte) 0x00); // P1
    getBalanceAPDU.append((byte) 0x00); // P2
    getBalanceAPDU.append((byte) 0x00); // Lc
    getBalanceAPDU.append((byte) 0x05); // Le
    // Send command APDU and check the response.
    ResponseAPDU response;
    //response = new ResponseAPDU(07);
    response = sendCommandAPDU(getCardChannel(), MY_CARD_AID,
    getBalanceAPDU);
    i got that error. I pasted, all the debug message below. I already updated the pcsc-wrapper-2.0.jar file, but i'm still having this error, as i said i'm using an gem pc twin cardreader with gemxpresso card. My opencard.properties file:
    # Card service configuration #
    OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory \
    opencard.opt.util.PassThruCardServiceFactory \
    br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    #OpenCard.services = br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    # Card terminal configuration #
    #OpenCard.terminals = GemplusCardTerminalFactory
    OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
    #OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory
    #OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|myGEMPlus|GEM430PC|SHARED
    # Trace configuration #
    OpenCard.trace = opencard:9
    ----- the debug----
    [DEBUG    ] opencard.core.service.SmartCard.getRegistryEntry
    --- message tag OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.terminal.CardTerminal.<init>
    --- message (Gemplus USB Smart Card Reader 0, PCSC10, )
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.terminal.CardTerminal
    [DEBUG    ] opencard.core.event.EventGenerator.updateTerminals
    --- message new pollable Terminal = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.event.EventGenerator
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.cardInserted
    --- message slotID 0, )
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] opencard.core.event.EventGenerator.updateCards
    --- message card inserted slotID = 0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.event.EventGenerator
    [DEBUG    ] opencard.core.service.SmartCard.getRegistryEntry
    --- message tag OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory opencard.opt.util.PassThruCardServiceFactory br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.opt.service.OCF11CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.service.OCF11CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message opencard.opt.util.PassThruCardServiceFactory@94cc7
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message [email protected]fa0f0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    [DEBUG    ] opencard.core.service.SmartCard.<start>
    --- message finished
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getSmartCard
    --- message CTEvent opencard.core.event.CardTerminalEvent[source=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr ]
    ---source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    ---id 1
    card inserted in slot 0
    terminal com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
    --- message for slot #0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
    --- message new SlotChannel is opencard.core.terminal.SlotChannel@182815a
    + state open
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] opencard.core.service.CardServiceRegistry.allocateCardServiceScheduler
    --- message instantiating CardServiceScheduler
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceScheduler.<init>
    --- message slotChannel opencard.core.terminal.SlotChannel@182815a
    + state open
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceScheduler
    [DEBUG    ] opencard.core.service.CardChannel.<init>
    --- message (opencard.core.terminal.SlotChannel@182815a
    + state open)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardChannel
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getSmartCard
    --- message using CardServiceScheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceScheduler.createSmartCard
    --- message creating SmartCard
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.SmartCard.<init>
    --- message scheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive, cid opencard.core.terminal.CardID@1a5ba75 ATR: 3B 7D 94 00 00 80 31 80 65 B0 83 01 02 90 83 00
    90 00
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.SmartCard.getCardService
    --- message (class br.com.neac.petrobras.medidorgas.process.NastekCardProxy)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.SmartCard@fb7efa
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message for class br.com.neac.petrobras.medidorgas.process.NastekCardProxy from opencard.core.service.SmartCard@fb7efa
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message checking [email protected]c68b6f
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardService.<init>
    --- message default constructor of br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardService
    [DEBUG    ] opencard.opt.applet.AppletProxy.<init>
    --- message (A0 00 00 00 62 03 01 0C 02,opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.AppletProxy
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.initialize
    --- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.<init>
    --- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    BasicAppletCardService - allocated CardChannel()
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message factory [email protected]c68b6f produced br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.sendCommandAPDU(channel,...)
    --- message sending opencard.core.terminal.CommandAPDU@1d92803
    0000: 00 20 00 00 00 05 . ....
    to <A0 00 00 00 62 03 01 0C 02>
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.selectApplet
    --- message selecting A0 00 00 00 62 03 01 0C 02
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] opencard.opt.applet.ISOAppletSelector.selectApplet
    --- message selecting A0 00 00 00 62 03 01 0C 02
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.ISOAppletSelector
    [DEBUG    ] opencard.core.service.CardChannel.sendCommandAPDU
    --- message opencard.core.terminal.CommandAPDU@1d206f0
    0000: 00 A4 04 00 09 A0 00 00 00 62 03 01 0C 02 00 .........b.....
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] opencard.core.service.CardChannel.response:
    --- message opencard.core.terminal.ResponseAPDU@1f23f8b
    0000: 90 00 ..
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] opencard.opt.applet.ISOAppletSelector.selectApplet
    --- message Selection response sw = 0x9000
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.ISOAppletSelector
    [DEBUG    ] opencard.core.service.CardChannel.sendCommandAPDU
    --- message opencard.core.terminal.CommandAPDU@1d92803
    0000: 00 20 00 00 00 05 . ....
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    opencard.core.terminal.CardTerminalException: Pcsc10CardTerminal: PCSC Exception in method SCardTransmit: error occurred with SCardTransmit
    return code = 00000057
    at com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.translatePcscException(Pcsc10CardTerminal.java:502)

    Hello, i really need help.
    I'm having the famous return code = 00000057 when i try to send an APDU command, I'm using a applet proxy, so it send an select APDU inside the OCF framework, and the result is success, so i'm able to send an select Applet, but when i try to send the following apdu:
    allocateCardChannel();
    // Set up the command APDU and send it to the card.
    getBalanceAPDU.setLength(0);
    getBalanceAPDU.append(MyAPPLET_CLA); // Class
    getBalanceAPDU.append(VERIFY_INS); // Instr'n
    getBalanceAPDU.append((byte) 0x00); // P1
    getBalanceAPDU.append((byte) 0x00); // P2
    getBalanceAPDU.append((byte) 0x00); // Lc
    getBalanceAPDU.append((byte) 0x05); // Le
    // Send command APDU and check the response.
    ResponseAPDU response;
    //response = new ResponseAPDU(07);
    response = sendCommandAPDU(getCardChannel(), MY_CARD_AID,
    getBalanceAPDU);
    i got that error. I pasted, all the debug message below. I already updated the pcsc-wrapper-2.0.jar file, but i'm still having this error, as i said i'm using an gem pc twin cardreader with gemxpresso card. My opencard.properties file:
    # Card service configuration #
    OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory \
    opencard.opt.util.PassThruCardServiceFactory \
    br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    #OpenCard.services = br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    # Card terminal configuration #
    #OpenCard.terminals = GemplusCardTerminalFactory
    OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
    #OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory
    #OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|myGEMPlus|GEM430PC|SHARED
    # Trace configuration #
    OpenCard.trace = opencard:9
    ----- the debug----
    [DEBUG    ] opencard.core.service.SmartCard.getRegistryEntry
    --- message tag OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.terminal.CardTerminal.<init>
    --- message (Gemplus USB Smart Card Reader 0, PCSC10, )
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.terminal.CardTerminal
    [DEBUG    ] opencard.core.event.EventGenerator.updateTerminals
    --- message new pollable Terminal = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.event.EventGenerator
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.cardInserted
    --- message slotID 0, )
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] opencard.core.event.EventGenerator.updateCards
    --- message card inserted slotID = 0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.event.EventGenerator
    [DEBUG    ] opencard.core.service.SmartCard.getRegistryEntry
    --- message tag OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory opencard.opt.util.PassThruCardServiceFactory br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.opt.service.OCF11CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.service.OCF11CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message opencard.opt.util.PassThruCardServiceFactory@94cc7
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    [DEBUG    ] opencard.core.service.CardServiceFactory.<init>
    --- message instantiating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceFactory
    [DEBUG    ] opencard.core.service.CardServiceRegistry.add
    --- message [email protected]fa0f0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    [DEBUG    ] opencard.core.service.SmartCard.<start>
    --- message finished
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getSmartCard
    --- message CTEvent opencard.core.event.CardTerminalEvent[source=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr ]
    ---source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    ---id 1
    card inserted in slot 0
    terminal com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
    --- message for slot #0
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
    --- message new SlotChannel is opencard.core.terminal.SlotChannel@182815a
    + state open
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
    + name Gemplus USB Smart Card Reader 0
    + type PCSC10
    + addr
    [DEBUG    ] opencard.core.service.CardServiceRegistry.allocateCardServiceScheduler
    --- message instantiating CardServiceScheduler
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceScheduler.<init>
    --- message slotChannel opencard.core.terminal.SlotChannel@182815a
    + state open
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardServiceScheduler
    [DEBUG    ] opencard.core.service.CardChannel.<init>
    --- message (opencard.core.terminal.SlotChannel@182815a
    + state open)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardChannel
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getSmartCard
    --- message using CardServiceScheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceScheduler.createSmartCard
    --- message creating SmartCard
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.SmartCard.<init>
    --- message scheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive, cid opencard.core.terminal.CardID@1a5ba75 ATR: 3B 7D 94 00 00 80 31 80 65 B0 83 01 02 90 83 00
    90 00
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.SmartCard
    [DEBUG    ] opencard.core.service.SmartCard.getCardService
    --- message (class br.com.neac.petrobras.medidorgas.process.NastekCardProxy)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.SmartCard@fb7efa
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message for class br.com.neac.petrobras.medidorgas.process.NastekCardProxy from opencard.core.service.SmartCard@fb7efa
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message checking [email protected]c68b6f
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] opencard.core.service.CardService.<init>
    --- message default constructor of br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.core.service.CardService
    [DEBUG    ] opencard.opt.applet.AppletProxy.<init>
    --- message (A0 00 00 00 62 03 01 0C 02,opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.AppletProxy
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.initialize
    --- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.<init>
    --- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    BasicAppletCardService - allocated CardChannel()
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
    --- message factory [email protected]c68b6f produced br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
    ++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
    ++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
    ++ registered factory [email protected]fa0f0
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
    --- message allocating
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.allocateCardChannel
    --- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    [DEBUG    ] opencard.core.service.CardChannel.open
    --- message opening CardChannel
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.sendCommandAPDU(channel,...)
    --- message sending opencard.core.terminal.CommandAPDU@1d92803
    0000: 00 20 00 00 00 05 . ....
    to <A0 00 00 00 62 03 01 0C 02>
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] opencard.opt.applet.BasicAppletCardService.selectApplet
    --- message selecting A0 00 00 00 62 03 01 0C 02
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.BasicAppletCardService
    [DEBUG    ] opencard.opt.applet.ISOAppletSelector.selectApplet
    --- message selecting A0 00 00 00 62 03 01 0C 02
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.ISOAppletSelector
    [DEBUG    ] opencard.core.service.CardChannel.sendCommandAPDU
    --- message opencard.core.terminal.CommandAPDU@1d206f0
    0000: 00 A4 04 00 09 A0 00 00 00 62 03 01 0C 02 00 .........b.....
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] opencard.core.service.CardChannel.response:
    --- message opencard.core.terminal.ResponseAPDU@1f23f8b
    0000: 90 00 ..
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] opencard.opt.applet.ISOAppletSelector.selectApplet
    --- message Selection response sw = 0x9000
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source class opencard.opt.applet.ISOAppletSelector
    [DEBUG    ] opencard.core.service.CardChannel.sendCommandAPDU
    --- message opencard.core.terminal.CommandAPDU@1d92803
    0000: 00 20 00 00 00 05 . ....
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, is open, not jammed
    [DEBUG    ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
    --- message releasing
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
    [DEBUG    ] opencard.core.service.CardServiceScheduler.releaseCardChannel
    --- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
    ++ channel is allocated
    [DEBUG    ] opencard.core.service.CardChannel.close
    --- message CardChannel closed
    --- thread Thread[AWT-EventQueue-0,6,main]
    --- source opencard.core.service.CardChannel@9bb457, not open, not jammed
    opencard.core.terminal.CardTerminalException: Pcsc10CardTerminal: PCSC Exception in method SCardTransmit: error occurred with SCardTransmit
    return code = 00000057
    at com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.translatePcscException(Pcsc10CardTerminal.java:502)

  • Exception Deployer fails with return code 1603 during Acrobat XI installation

    We are deploying Acrobat XI to Windows 7 clients and a percentage of them fail to execute Exception Deployer successfully and are returning the 1603 return code. I have pasted below relevant portions of the ExceptionDeployer.log file from two different computers with the same return code. Sometimes running the installation again works but sometimes it fails again with the same error code. I haven't been able to find exactly what it is that is failing or how to resolve this.
    4/4/2015 00:04:57 [INFO] ExceptionDeployer - ##################################################
    4/4/2015 00:04:57 [INFO] ExceptionDeployer - Launching the ExceptionDeployer...
    4/4/2015 00:04:57 [WARN] ExceptionDeployer - Failed to initialize the TokenResolver properly.
    4/4/2015 00:04:57 [INFO] ExceptionDeployer - **************************************************
    4/4/2015 00:04:57 [INFO] ExceptionDeployer -    AcrobatProfessional11.0-mul
    4/4/2015 00:05:59 [INFO] ExceptionDeployer - The process return code is (1603).
    4/4/2015 00:05:59 [ERROR] ExceptionDeployer - Exception deployment failed for payload (AcrobatProfessional11.0-mul)
    4/4/2015 00:05:59 [INFO] ExceptionDeployer - **************************************************
    4/6/2015 16:05:56 [INFO] ExceptionDeployer - ##################################################
    4/6/2015 16:05:56 [INFO] ExceptionDeployer - Launching the ExceptionDeployer...
    4/6/2015 16:05:56 [INFO] ExceptionDeployer - **************************************************
    4/6/2015 16:05:56 [INFO] ExceptionDeployer -    AcrobatProfessional11.0-mul
    4/6/2015 16:07:14 [INFO] ExceptionDeployer - The process return code is (1603).
    4/6/2015 16:07:14 [ERROR] ExceptionDeployer - Exception deployment failed for payload (AcrobatProfessional11.0-mul)
    4/6/2015 16:07:14 [INFO] ExceptionDeployer - **************************************************

    Hi ohtesw,
    Please check out this document: Error 1603: A fatal error occurred during installation.
    If the solutions in that document don't do the trick, please let us know.
    Best,
    Sara

  • SCardConnect error . return code: 80100004

    I am developing am application for GxpPro R3 using PC/SC on VB .NET.
    Though SCardEstablishContext, SCardListReaderGroups and SCardListReaders works fine, i get a return code of 80100004 for SCardConnect.
    Dim dwShareMode As Long = 1
    Dim dwPrefProtocol As Long = 3
    ReturnValue = SCardConnect(Me.nContext, cReaders(0), dwShareMode, dwPrefProtocol, phCard, ActiveProtocol)
    I have tried with all the combinations of dwShareMode and dwPrefProtocol with the same return code.
    snippet of my code below
    Me.nContext = 0
    ReturnValue = SCardEstablishContext(0, 0, 0, Me.nContext)
    Dim delimiter(1) As Char
    delimiter(0) = Convert.ToChar(0)
    Dim cGroupList As String = "" + Convert.ToChar(0)
    Dim nStringSize As Integer = -1
    ReturnValue = SCardListReaderGroups(Me.nContext, cGroupList, nStringSize)
    Dim cGroups() As String = cGroupList.Split(delimiter)
    Dim cReaderList = "" + Convert.ToChar(0)
    Dim nReaderCount As Integer = -1
    ReturnValue = SCardListReaders(Me.nContext, cGroups(0), cReaderList, nReaderCount)
    Dim cReaders() As String = cReaderList.Split(delimiter)
    Dim dwShareMode As Long = 1
    Dim dwPrefProtocol As Long = 3
    Dim phCard As Long = 0
    Dim ActiveProtocol As Long = 0
    ReturnValue = SCardConnect(Me.nContext, cReaders(0), dwShareMode, dwPrefProtocol, _
    phCard, ActiveProtocol)
    ~SUDHA

    Hi,
    This error specify that the data you add, already exist in the table.
    In this type of table, the field code and name must be unique for every lines.
    Try to change the value of this line : oUsrTbl.Name = "Name"
    Hope it's help you.
    Regards
    Michael

  • SCCM 2012 application run Powershell script and return codes

    Hi,
    I created an new application (imported as MSI) in SCCM 2012R2. After import I changed the deployment type installation program to run a Powershell script: powershell.exe -ExecutionPolicy Unrestricted -File "Install FactSet 2013 5I.ps1
    My goal is to close some processes before installing the MSI. This works. But on a failure the application program also return code 0 (AppEnforce.log). Is it possible to pass the MSI return codes to SCCM.
    Maybe anyone had the same or idea's to solve this? Thanks in advance.
    Regards,
    Peter
    Powershell script code:
    $ExitCode=0
    Function
    Stop-RunningApplication{
    Param(
    [parameter(Mandatory
    =$true)]
    [string]$ProcessName#
    Specify process names separated by commas
    # Split multiple processes on a comma and join with the regex operator '|' to perform "or" match against
    multiple applications
    $processName=$processName-split(",")
    -join("|")
    $process=Get-Process|Where{
    $_.ProcessName
    -match$processName}
    |Stop-Process-Force
    #Stop running processes
    Stop-RunningApplication
    -ProcessName"excel,outlook,fdsw32,marquee,POWERPNT,WINWORD"
    #Install FactSet 2013 5I
    $ExitCode
    =(Start-Process".\FactSet_Setup_2013_5I_x644.msi"'/qn
    FACTSET_CLOSE_PROCESSES=1 /l*v C:\Temp\InstFac20135I.log'-Wait-Passthru).ExitCode
    Environment]::Exit($ExitCode)
    Peter vd Bosch

    It's really hard to tell from the code above because of the way it's listed, but are sure that even executes? I see at least one stray curly brace and a stray square bracket.
    For the Start-Process cmdlet, have you tried without the -passthru parameter?
    Also, using the actual parameters will make the code much more readable instead of relying on position.
    Jason | http://blog.configmgrftw.com | @jasonsandys

  • Installation Nw04 Sp3:: Error: Return Code 4

    This is a message continues Wolfgang's previous message title:
    "Installation Nw04 EP Sp3". I met the same problem but can't solve it according the suggestions.
    Exception is:
    (message ID: com.sap.sdm.serverext.servertype.inqmy.extern.EngineCompOnlineDeployerImpl.performAction(DeploymentActionTypes).REMEXC)
    Error: Deployment NOT successful for DQE_JDBCDriver_library
    Error: -
    At least one of the Deployments failed -
    Info: Summarizing the deployment results:
    Error: Admitted: D:\Setup\SAP_NetWeav_04\Disk51030604_SNW_Inst_EP6_Trex61\EP1\DQE\SDA\FS\PAR\com.sapportals.dqe.admintools.sda
    Error: Aborted: D:\Setup\SAP_NetWeav_04\Disk51030604_SNW_Inst_EP6_Trex61\EP1\DQE\SDA\JAVA-LIB\com.sapportals.dqe.jdbcdriver.lib.sda
    Error: Admitted: C:\Program Files\sapinst_instdir\EP630\Advance_Portal\DQE_SERVICES\com.sapportals.dqe.service.sda
    Error: Processing error. Return code: 4
    Afterwards, I followed Abdul's suggestion to update com.sapportals.dqe.jdbcdriver.lib.sda
    1. Open (e.g. WinZip) the file <SDA_LOCATION>\com.sapportals.dqe.jdbcdriver.lib.sda
    2. Extract the file \server\provider.xml
    3. Edit provider.xml by removing the line "<jar-name>xercesImpl.jar</jar-name>"
    4. Insert provider.xml file back to com.sapportals.dqe.jdbcdriver.lib.sda
    5. (In case of applying this Note during installation) Click the 'Retry' button on SAPInst
    The same Return Code 4 error occurred.
    Can Wolfgang or somebody else suggest what is the solution.
    Thank you very much.
    Leon

    Hi Yongli,
    Have you restarted all instances (J2EE and ABAP) after the changes! I also had the problem but after a restart it works. I also started a new installation (not continued the old one).

  • CoCreateInstance fails with return code -2147221008

    I'm calling
      HRESULT retval = CoCreateInstance(SQLNCLI_CLSID, NULL,
                                          CLSCTX_INPROC_SERVER,
                                          IID_IDBInitialize,
                                          (void **) &m_pIDBInitialize);
    and it returns the above return code. I don't know what in the world it means or how to get an error message out of it.
    The only possible return values for CoCreateInstance listed in
    http://msdn.microsoft.com/en-us/library/windows/desktop/ms686615%28v=vs.85%29.aspx
    are
    S_OK
    REGDB_E_CLASSNOTREG
    CLASS_E_NOAGGREGATION
    E_NOINTERFACE
    E_POINTER
    #define S_OK                                   ((HRESULT)0L)
    #define REGDB_E_CLASSNOTREG              _HRESULT_TYPEDEF_(0x80040154L)
    #define CLASS_E_NOAGGREGATION            _HRESULT_TYPEDEF_(0x80040110L)
    #define E_NOINTERFACE                    _HRESULT_TYPEDEF_(0x80004002L)
    #define E_POINTER                        _HRESULT_TYPEDEF_(0x80004003L)
    The values in decimal respectively are 0, 2147746132, 2147746064, 2147500034 and 2147500035. None of them is the value I got.
    Please help before I shoot myself.

    Hello ,
    I would suggest you to have a look at
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/f8417fdc-03e3-4f73-b165-b39a90fb1b90/cocreateinstance-fails-with-return-code-2147221008
    It seems that the meaning of this error code is : "CoInitialize has not been called. "
    As I have given up VC++ since the arrival of VS 2003 and VC# , I cannot give you more explanations.
    A moderator may move your thread towards the VC++ forum if you want more explanations or help ( for myself , I prefer to do the move only after the original poster ( you PriorityCustomer ) has posted his/het agreement.
    Have a nice day
    Mark Post as helpful if it provides any help.Otherwise,leave it as it is.

  • Return code from Client_host command

    Hi,
    Is it possible to get the return code from the os when I issue the webutil Client_Host procedure?
    Thanks,
    Mary

    Mary
    You can use the WEBUTIL_HOST.HOST method instead of CLIENT_HOST. It is overloaded as both a Procedure and a function; the latter returns the client return code.
    Cheers, APC

Maybe you are looking for