Skip to Content
0
Former Member
Feb 12, 2011 at 01:51 AM

CCM Publication Failed with runtime error TSV_TNEW_OCCURS_NO_ROLL_MEMORY

46 Views

Hi,

I met an issue when publishing a procurement catalog in CCM. I got runtime error on TSV_TNEW_OCCURS_NO_ROLL_MEMORY. We do have many items in this procurement however we also published this catalog a few weeks ago with no issue.

It looks like memory shortage so I requested our BASIS person to restart the catalog server. But when I re-published it, I got same runtime error.

Can anybody help me to get an idea on this issue and any suggestion?

Below I captured some information from ST22 error analysis. Sorry it's all in text as I don't know how I can post screenshots here.

Error analysis

The internal table "\DATA=GT_HISTOR

Y_BUF[86078]-REC" could not be filled.

Memory location: "Session memory"

You attempted to create an OCCURS area 12288 bytes long for the internal

table "\DATA=GT_HISTORY_BUF[86078]-

REC". This is because the first entry is to be stored

in the internal table.

The amount of memory requested is no longer available.

Last error logged in SAP kernel

Component............ "EM"

Place................ "SAP-Server SIRDCM_PCM_02 on host SIRDCM (wp 19)"

Version.............. 37

Error code........... 7

Error text........... "Warning: EM-Memory exhausted: Workprocess gets PRIV "

Description.......... " "

System call.......... " "

Module............... "emxx.c"

Line................. 1897

The error reported by the operating system is:

Error number..... " "

Error text....... " "

Information on where terminated

Termination occurred in the ABAP program "/CCM/CL_CHAR_VALUATION_MANAGERCP" -

in "DELETE_HISTORY".

The main program was "/CCM/PE_START_REG_PUBLICATION ".

In the source code you have the termination point in line 88

of the (Include) program "/CCM/CL_CHAR_VALUATION_MANAGERCM00S".

Source Code Extract

Line SourceCde

58 ls_timestamp-high = lv_timestamp_to.

59 APPEND ls_timestamp TO lt_timestamp.

60 lt_history_db = me->read_all_history_db( iv_guid = iv_guid

61 it_timestamp = lt_timestamp ).

62

63 * sort results from database

64 SORT lt_history_db BY process guid timestamp.

65

66 * now consolidate results with buffer table

67 LOOP AT lt_history_db REFERENCE INTO lr_history_db.

68 * only consider records that aren't in buffer

69 READ TABLE gt_history_buf BINARY SEARCH TRANSPORTING NO FIELDS

70 WITH KEY process = lr_history_db->process

71 guid = lr_history_db->guid

72 timestamp = lr_history_db->timestamp.

73 IF sy-subrc NE 0.

74 lv_sytabix = sy-tabix.

75 ls_history_buf-process = lr_history_db->process.

76 ls_history_buf-guid = lr_history_db->guid.

77 ls_history_buf-timestamp = lr_history_db->timestamp.

78 INSERT ls_history_buf INTO gt_history_buf INDEX lv_sytabix REFERENCE INTO lr_history_

79 ENDIF.

80

81 IF lr_history_buf IS BOUND AND

82 lr_history_buf->process = lr_history_db->process AND

83 lr_history_buf->guid = lr_history_db->guid AND

84 lr_history_buf->timestamp = lr_history_db->timestamp.

85

86 ls_history_obj_buf-rec = lr_history_db->*.

87 ls_history_obj_buf-rec_op = /ccm/cl_data_access_constants=>co_operation_delete.

>>>>> APPEND ls_history_obj_buf TO lr_history_buf->rec.

89

90 ELSE.

91 CLEAR lr_history_buf.

92 ENDIF.

93

94 ENDLOOP.

Many thanks!

Best Regards,

Ellly