简体   繁体   中英

REP-56048: Engine rwEng-0 crashed., job Id: 1398

Dear All,

I am working on oracle WebLogic forms & reports 12c version: (12.2.1.4)

While calling the reports with pass Lexical parameter from the parameter form the report terminated with error:

REP-56048: Engine rwEng-0 crashed., job Id: 2094.

If I pass the Lexical parameter to report locally in the report developer tool, then it works fine. When I pass only bind parameters to report, then it also works fine. The problem when passing the Lexical parameter from parameter form live.

Please help.

Well, looks like you hit a known problem . Oracle says

... check the Reports Server and engine trace files. A typical crash resembles the following in the Reports Server trace file:

<snip>
2005/6/1 3:38:36:147] State 56016 (JobManager:updateJobStatus): Job 17 status is:
  Terminated with error:
REP-56048: Engine rwEng-0 crashed, job Id: 17
[2005/6/1 3:38:36:157] Debug 50103 (JobManager:notifyWaitingJobs): Master job 17
  notify its duplicated jobs.
[2005/6/1 3:38:36:157] Debug 50103 (JobManager:updateJobStatus): Finished updating
  job: 17
<snip>

Action to be done:

Identify the report that is causing the engine crash. You can do this by identifying the job ID. In the preceding examples, the engine crashed while running jobid 17. In the server trace file, search for the jobid = 17 Get command line string. This line contains the complete command line that includes the report name also. Enable tracing and engine diagnosis. Run the problematic report multiple times to reproduce the crash. When the crash is reproduced, pass on the trace files and diagnosis output to Oracle Support Services for analysis .


Alternatively, as you said

If I pass only bind parameters to report, then it works fine

then use bind parameters (if possible).


[EDIT] , based on your comment:

If you are passing several values in the same parameter, then - if they are separated by comma - you can split that string into rows and use values as if they were returned by a subquery. It means that parameter's datatype would then be CHAR , not NUMBER .

I don't have your tables so I'm posting an example based on Scott's schema - passing EMPNO values and retrieving rows for those employees.

In Reports Builder, query would look like this:

select empno, job, ename
from emp
where empno in (select trim(regexp_substr(:par_empno, '[^,]+', 1, level))
                from dual
                connect by level <= regexp_count(:par_empno, ',') + 1
               )
order by empno;  

Testing, in SQL*Plus:

SQL> select empno, job, ename
  2  from emp
  3  where empno in (select trim(regexp_substr('&&par_empno', '[^,]+', 1, level))
  4                  from dual
  5                  connect by level <= regexp_count('&&par_empno', ',') + 1
  6                 )
  7  order by empno;
Enter value for par_empno: 7369, 7499, 7521

     EMPNO JOB       ENAME
---------- --------- ----------
      7369 CLERK     SMITH
      7499 SALESMAN  ALLEN
      7521 SALESMAN  WARD

SQL>

To me, it looks as if you could use such an approach.

It could be that you are running into character set issues. Make sure you have set the correct character set in the reports server configuration file

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM