T4210 - Issue

navek26

Member
We are upgrading from Xe and 9.1
We have customized P4210 and T4210 in Xe to meet business requirement
So we have done manual retrofitment for P4210 and T4210 in E9.1. But customization is not working as expected in E9.1. Interestingly its working fine in fat client but not in web client. In JDE log we could see below warning
When we browsed in Oracle support, oracle suggesting to take typedef of T4210 and paste in all.h file of business function using T4210 structure. We tried same but no luck.
Please let me know anything more needs to be done


RUN0000066 - Warning - ProcOpt Data Size Mismatch: Requested 6164 is less than Retrieved 6356 for App ,Version .
Data Structure allocated successfully. This usually means items have been added to the template and existing
business function will function correctly.

CAC0001025 - Application code leaked 6 caches which were detected when freeing environment JPY910 (EnvHandle SPP:0000 :0000 :0:1:11) for user SHAKTIS. Please refer to the debug log for details. If there are not enough details in the debug log to determine the cause, set Output=FILE in the [DEBUG] section of the JDE.INI and watch for this error message again. Or, set logCacheLeaksAtSignoff=TRUE in the [DEBUG] section of the JDE.INI and look for CAC0001036 error messages. This message (CAC0001025) will only appear with debug tools code or when debug logging is turned on.

JDB4100005 - Application code leaked 2 data pointers which were detected when freeing environment JPY910 (EnvHandle SPP:0000 :0000 :0:1:11) for user SHAKTIS. Please refer to the debug log for details. If there are not enough details in the debug log to determine the cause, set DataPointerTracing=1 and Output=FILE in the [DEBUG] section of the JDE.INI and watch for this error message again. Or, set logDPLeaksAtSignoff=TRUE in the [DEBUG] section of the JDE.INI and look for JDB4100006 error messages. This message (JDB4100005) will only appear with debug tools code or when debug logging is turned on.
 

Attachments

  • 187182-9.1 P4210 JDELog.txt
    6.8 KB · Views: 73
You need to paste the new typedef for T4210 into all the C++ BSFN that use it in a AllocatePOData call within the C

AllocatePOVersionData(hUser, _J("P4210" is what you need to search for

So B3401360 and B4205210 are in E900
 
[ QUOTE ]

RUN0000066 - Warning - ProcOpt Data Size Mismatch: Requested 6164 is less than Retrieved 6356 for App ,Version .
Data Structure allocated successfully. This usually means items have been added to the template and existing
business function will function correctly.


[/ QUOTE ]

Strictly speaking, this is just a warning and won't actually cause any errors, memory violations, buffer overruns, etc. AllocatePOVersionData throws this warning but it is just a warning. It basically says "you asked for x number of bytes and that is how much I am allocating and returning, however there are y bytes that I could return so I am just going to truncate those extra bytes off". As long as you started with the pristine T4210 object any custom params get added to the end and those are the params that get truncated off. If you DIDN'T start with a pristine version of T4210 and instead brought over the version from Xe... well that's a different story and all sorts of things could be going wrong.

Even though this is warning is just that, a warning I still like a clean log so I always do what Oracle recomends to get rid of these. However, Oracle seems to have employed some very poor C coders so I like to do a little additional cleanup during this process. You really should only have DST4210 defined ONE time in ONE .h file. If you need to declare a variable of type DST4210 then you should include that .h file when ever you need the DST4210 definition - do NOT re-paste the definition (which Oracle seems to have done at great length which makes absolutely no sense). For that reason I usually find the most appropriate place for the PO typedef and then comment out all the other places and simply add an #include to the ONE .h where it is defined. That way if you need to change it in the future, you simply re-paste in the ONE .h file where it is defined, do a full build to force a recompile of everything and your done. This really goes for ALL pre-compiler defintions that need to be used in multiple BSFNS (source files). Define it ONE time in a SINGLE .h file and then include the .h file where ever you need the defintion.


[ QUOTE ]

CAC0001025 - Application code leaked 6 caches which were detected when freeing environment JPY910 (EnvHandle SPP:0000 :0000 :0:1:11) for user SHAKTIS. Please refer to the debug log for details. If there are not enough details in the debug log to determine the cause, set Output=FILE in the [DEBUG] section of the JDE.INI and watch for this error message again. Or, set logCacheLeaksAtSignoff=TRUE in the [DEBUG] section of the JDE.INI and look for CAC0001036 error messages. This message (CAC0001025) will only appear with debug tools code or when debug logging is turned on.


JDB4100005 - Application code leaked 2 data pointers which were detected when freeing environment JPY910 (EnvHandle SPP:0000 :0000 :0:1:11) for user SHAKTIS. Please refer to the debug log for details. If there are not enough details in the debug log to determine the cause, set DataPointerTracing=1 and Output=FILE in the [DEBUG] section of the JDE.INI and watch for this error message again. Or, set logDPLeaksAtSignoff=TRUE in the [DEBUG] section of the JDE.INI and look for JDB4100006 error messages. This message (JDB4100005) will only appear with debug tools code or when debug logging is turned on.

[/ QUOTE ]


[/ QUOTE ]


These errors are probably not directly related to or caused by any modification to the T4210 object provided, again, you retofitted you mods to a 9.1 pristine object and didn't import the Xe modified object.
 
....and I'm assuming you added these new POs to the end and not the middle of the structure?
 
You can't add to the middle of any data structure except for a table. Even if it looks like you added to the middle the typedef will still append to the end.
 
Hi BOster

We have retrofitted T4210 manually in 9.1 (added Xe custom fields in PO)

As like Xe, we added custom fields in standard tabs and also we have custom tabs at last

This could cause the problem?

Thanks
Naveen
 
I am also facing same issue .Due to this warning /error report is taking 15 min to run instead of 1 min.
log is given below ,highly appreciate any suggestion based on below log .

runbatch.c935
RUNBATCH: Remote CP=1252, Remote OS=1, Local CP=1252, ConvertToASCII=0


417960/-163027248 WRK:Starting jdeCallObject Thu Jun 2 11:27:27.230686 rtk_frms.c648
RUN0000066 - Warning - ProcOpt Data Size Mismatch: Requested 2198 is less than Retrieved 2220 for App P4210,Version VPG124.
Data Structure allocated successfully. This usually means items have been added to the template and existing
business function will function correctly.


417960/-163027248 WRK:Starting jdeCallObject Thu Jun 2 11:38:57.832320 k2pdfutils.c500
No output written to PDF by R5742565-VPG110. No PDF will be created.


417960/-163027248 WRK:Starting jdeCallObject Thu Jun 2 11:38:57.892092 zdrv.cpp384
Terminating Z driver


417960/-163027248 WRK:Starting jdeCallObject Thu Jun 2 11:38:57.892300 zdrv.cpp401
Calling freeSession


417960/-163027248 WRK:Starting jdeCallObject Thu Jun 2 11:38:58.037119 jdecache.c1502
CAC0001025 - Application code leaked 2 caches which were detected when freeing environment JQA910 (EnvHandle 09dfa988) for user XXXXXX.
 
I would be surprised if the PO size mismatch is actually causing the UBE performance issue. The only real issue with the PO size mismatch is the "noise" it creates in the log.

If you want to get rid of it you will need to regen the T4210 DS and re-paste it into the C source file(s) where it currently exists. If it is in more than one place which it probably is (bad design) I would comment out the T4210 struct definitions in all but one .h file, then where ever it is needed simply do an #inlcude to that .h file. Once those edits are complete do a full build.
 
Hi BOster,
I am of the same opinion .this error should not cause any performance issue .
Log shows execution continue at 11.38 after 11.27 which is forcing me to believe it might be issue .

regards
pintya
 
Back
Top