Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Runtime Error LOAD_PROGRAM_CLASS_MISMATCH

Former Member
0 Kudos

Hi Experts,

On running the inbound IDOC processing program(RBDAPP01) as a background job, we got run time error LOAD_PROGRAM_CLASS_MISMATCH.

Short Text:

Class interface was changed at runtime.

Error Analysis: 

The section "PUBLIC" of the interface of the class "CVI_EI_API_MAP_STRUCTURE" was changed during program flow, which caused inconsistencies at  runtime.

The program "CL_IM_CVI_ADDRESS_UPD_IMPL====CP" uses the interface version 20120911131848.

The program "CMD_EI_API====================CP" uses the interface version 20120921140355.

The internal session was started at 20120921213158.       

System Environment:

SAP-Release 701

Could you please let me know how to resolve.

Thanks in Advance.

Regards,

Sudhir Kancheti.

5 REPLIES 5

Former Member
0 Kudos

Hi

It seems a transport was done while program RBDAPP01 is running

The modifications are done in class CL_IM_CVI_ADDRESS_UPD_IMPL, so I suppose a modification was done in an implemantation of BADI ADDRESS_UPDATE.

Another modification seems to be done in class CMD_EI_API.

Max

0 Kudos

Hi,

I have compared the code with existing version, there was no changes has been made. Also checked the TR movement during that time.

In ST22, the error is at line no: 31, in the class interface (CL_IM_CVI_ADDRESS_UPD_IML), method (IF_EX_ADDRESS_UPDATE~ADDRESS1_SAVED).

Could you please let me know do I need to implement any OSS note for this.

Regards,

Sudhir Kancheti.

0 Kudos

Hi

That method is implemented in BADI, so it's not standard, you should have an implementation for BADI ADDRESS_UPDATE.

If no transport was loaded in production system, you should check if it was done before (sometime the system load the new code in the buffer in delay).

if there aren't a recent transport, try to run again the program

Max

Former Member
0 Kudos

Hi,

It  means The program "CL_IM_CVI_ADDRESS_UPD_IMPL====CP" uses the interface version: 11.09.2012 / 13:18:48

The program "CMD_EI_API====================CP" on the other hand uses the more current version :21.09.2012/ 14:03:55

also check in st22 whether the dump only occurs on one server.

solution is 1. regenerate "CL_IM_CVI_ADDRESS_UPD_IMPL====CP" so that it also uses the newest version.

2. If several servers are "affected" according to St22, then generate the program

on any server. If the problem is not solved afterwards, start all application

servers to delete the buffers.

Former Member
0 Kudos

Hi All,

I was facing the exact same error. I solved it the hard way.

Everytime I would get a dump, i would see the point in the source code where it was triggered,open that class method in SE24 and manually regenerate the active object (Ctrl. + F3). After about 2-3 attempts at this I was able to use the transaction.

I have no idea why there was a mismatch in the loaded program or what the root cause is. But this is the solution that worked for me.

I hope that helps.