My Oracle Support Banner

What is the Transaction Nature of a Runtime Request and How do you get Runtime Error - No_such_transaction (Doc ID 1388270.1)

Last updated on OCTOBER 12, 2016

Applies to:

Oracle Knowledge - Version 8.0.x and later
Information in this document applies to any platform.


When this error happens on the runtime results are not returned to the application after the request is submitted. Examination of the Runtime instance/wrapper log reveals  NO_SUCH_TRANSACTION messages:

25910 Consumer-default-0(3917)] Event(Code=EXECUTE_REQUEST_FAILED, id=#0B594I3917P3909) with Failure occurred at 29-9-11 12:48: Execution of request 218 failed, cause: com.inquira.request.RequestProcessorException: [Consumer-default-0 @ Thu Sep 29 12:48:44 CEST 2011] (REQUEST_PROCESSOR_HANDLER_FAILED)
com.inquira.request.HandlerException: [Consumer-default-0 @ Thu Sep 29 12:48:44 CEST 2011] (NO_SUCH_TRANSACTION -2147483648)
at com.inquira.response.CollectResultsHandler.getResultState(
at com.inquira.response.CollectResultsHandler.getAllResults(
at com.inquira.response.CollectResultsHandler.handle(
at com.inquira.infra.requestprocessor.Processor.handlerLoop(
at com.inquira.infra.requestprocessor.Processor.process(
at com.inquira.infra.requestprocessor.Processor.process(
Causing: com.inquira.request.HandlerException: [Consumer-default-0 @ Thu Sep 29 12:48:44 CEST 2011] (ERROR_GETTING_RESULTS)
at com.inquira.response.CollectResultsHandler.handle(
...4 more
Causing: com.inquira.request.RequestProcessorException: [Consumer-default-0 @ Thu Sep 29 12:48:44 CEST 2011] (REQUEST_PROCESSOR_HANDLER_FAILED)
at com.inquira.infra.requestprocessor.Processor.handlerLoop(
...3 more
Causing: com.inquira.request.RequestProcessorException: [Consumer-default-0 @ Thu Sep 29 12:48:44 CEST 2011] (REQUEST_PROCESSOR_HANDLER_FAILED)
at com.inquira.infra.requestprocessor.Processor.process(
...2 more


The unique search id used in infocenter is an IM server id that correlates to the user request history.  The user request history is the series of transactions or requests made to the runtime.  The runtime transaction is not maintained on the runtime, it is maintained in the GIML that is passed as part of the search request.  As long as the GIML is maintained it can be used on a subsequent request.  The transaction consistency is maintained by the session id, the ordering of the transaction ids, and the language locale that the request is submitted for. Since the session has to be maintained across these transactions a timeout on the session can disrupt the series of requests. When customers leave their computer sit and they come back to a different session id, even though everything else is in tact, the error no_such_transaction will occur on the runtime and the user will have to start over with their question. The Giml makes the transaction independent of the runtime, There is enough info in the giml to make the next action very fast on any runtime. If the next request hits the same runtime before its cache is cleared then it will be even faster.  The giml is a binary object that is passed from the runtime to the search requestor and back to the next runtime request. 

The Giml only holds three transactions, so if you do a next, facet and previous and clear the facet it will not work. But most user actions fall into a working within three requests.  This is very very rare to happen.

The transaction id is generated by the requestor. So IM has the transaction id. It does not matter if there are overlapping transaction ids because they are correlated to the GIML and not anything else on the runtime. The runtime has a request ID to identify the transaction.


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.