DBA Data[Home] [Help]

APPS.FND_LOG_REPOSITORY dependencies on FND_LOG

Line 1: package body FND_LOG_REPOSITORY as

1: package body FND_LOG_REPOSITORY as
2: /* $Header: AFUTLGRB.pls 120.12.12010000.3 2010/03/17 18:18:29 pferguso ship $ */
3:
4: --
5: -- PRIVATE TYPES, VARIABLES

Line 56: ** FND_LOG_REPOSITORY.String_Unchecked_Internal2

52: /*
53: ** For GET_CONTEXT Function
54: ** Types for storing context info before calling autonomous
55: ** logging procedures, like
56: ** FND_LOG_REPOSITORY.String_Unchecked_Internal2
57: */
58: type CONTEXT_REC is record (
59: a_col varchar2(30),
60: a_val varchar2(4000) );

Line 66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;

62: index by binary_integer;
63:
64: /* For Proxy Alerting */
65: G_PRX_CHILD_TRANS_CONTEXT_ID NUMBER;
66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;
67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;

Line 67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;

63:
64: /* For Proxy Alerting */
65: G_PRX_CHILD_TRANS_CONTEXT_ID NUMBER;
66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;
67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;

Line 68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;

64: /* For Proxy Alerting */
65: G_PRX_CHILD_TRANS_CONTEXT_ID NUMBER;
66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;
67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;

Line 69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;

65: G_PRX_CHILD_TRANS_CONTEXT_ID NUMBER;
66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;
67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;

Line 70: G_PRX_MODULE fnd_log_messages.module%TYPE;

66: G_PRX_SESSION_ID fnd_log_messages.session_id%TYPE;
67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;

Line 71: G_PRX_NODE fnd_log_messages.node%TYPE;

67: G_PRX_USER_ID fnd_log_messages.user_id%TYPE;
68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;

Line 72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;

68: G_PRX_SESSION_MODULE fnd_log_exceptions.session_module%TYPE;
69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;

Line 73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;

69: G_PRX_SESSION_ACTION fnd_log_exceptions.session_action%TYPE;
70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;
77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;

Line 74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;

70: G_PRX_MODULE fnd_log_messages.module%TYPE;
71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;
77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;
78:

Line 75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;

71: G_PRX_NODE fnd_log_messages.node%TYPE;
72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;
77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;
78:
79: /*

Line 76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;

72: G_PRX_NODE_IP_ADDRESS fnd_log_messages.node_ip_address%TYPE;
73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;
77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;
78:
79: /*
80: * For Proxy Alerting: Index values to use within CONTEXT_ARRAY.

Line 77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;

73: G_PRX_PROCESS_ID fnd_log_messages.process_id%TYPE;
74: G_PRX_JVM_ID fnd_log_messages.jvm_id%TYPE;
75: G_PRX_THREAD_ID fnd_log_messages.thread_id%TYPE;
76: G_PRX_AUDSID fnd_log_messages.audsid%TYPE;
77: G_PRX_DB_INSTANCE fnd_log_messages.db_instance%TYPE;
78:
79: /*
80: * For Proxy Alerting: Index values to use within CONTEXT_ARRAY.
81: * This is mostly for code readability in order to avoid passing

Line 109: /* fnd_log_enabled_tracing BOOLEAN := FALSE; */

105: CCI_THREAD_ID CONSTANT NUMBER := 16;
106: CCI_AUDSID CONSTANT NUMBER := 17;
107: CCI_DB_INSTANCE CONSTANT NUMBER := 18;
108:
109: /* fnd_log_enabled_tracing BOOLEAN := FALSE; */
110:
111: /***For debugging purpose */
112: PROCEDURE DEBUG(p_msg IN VARCHAR2) is
113: l_num number;

Line 124: --insert into DEBUG_FND_LOG_REPOSITORY(MSG) values(p_msg);

120: --UTL_FILE.PUT_LINE(config_file, l_msg);
121: --UTL_FILE.fclose(config_file);
122:
123: ------Debug using DB
124: --insert into DEBUG_FND_LOG_REPOSITORY(MSG) values(p_msg);
125: --commit;
126: --dbms_output.put_line(p_msg);
127: l_msg := null;
128: end DEBUG;

Line 174: select count(*) into l_alertCount from FND_LOG_UNIQUE_EXCEPTIONS

170:
171:
172: if (l_sys_al_level >= p_msg_sev)THEN
173: l_pr_al_count := fnd_profile.value('OAM_MAX_SYSTEM_ALERT');
174: select count(*) into l_alertCount from FND_LOG_UNIQUE_EXCEPTIONS
175: where STATUS = 'N';
176: DEBUG('IS_ALERTING_ENABLED: can log msg Sevrity lower Next chek:l_pr_al_count' || l_pr_al_count);
177: DEBUG('IS_ALERTING_ENABLED::l_alertCount' || l_alertCount);
178: if (l_alertCount < l_pr_al_count) then

Line 193: ** FND_LOG_REPOSITORY.INIT_TRANSACTION_INTERNAL

189: end IS_ALERTING_ENABLED;
190:
191:
192: /*
193: ** FND_LOG_REPOSITORY.INIT_TRANSACTION_INTERNAL
194: **
195: ** Description:
196: ** Initializes a log transaction. A log transaction
197: ** corresponds to an instance or invocation of a single

Line 218: insert into FND_LOG_TRANSACTION_CONTEXT

214: P_PARENT_CONTEXT_ID IN NUMBER DEFAULT NULL) is
215: pragma AUTONOMOUS_TRANSACTION;
216: l_transaction_context_id number;
217: begin
218: insert into FND_LOG_TRANSACTION_CONTEXT
219: (TRANSACTION_CONTEXT_ID,
220: SESSION_ID,
221: TRANSACTION_TYPE,
222: TRANSACTION_ID,

Line 233: (FND_LOG_TRANSACTION_CTX_ID_S.nextval,

229: COMPONENT_ID,
230: CREATION_DATE,
231: PARENT_CONTEXT_ID
232: ) values
233: (FND_LOG_TRANSACTION_CTX_ID_S.nextval,
234: nvl(P_SESSION_ID, -1),
235: P_TRANSACTION_TYPE,
236: nvl(P_TRANSACTION_ID, -1),
237: nvl(P_USER_ID, -1),

Line 249: FND_LOG.G_TRANSACTION_CONTEXT_ID := l_transaction_context_id;

245: P_PARENT_CONTEXT_ID
246: ) RETURNING TRANSACTION_CONTEXT_ID into l_transaction_context_id;
247:
248: if (p_parent_context_id is null) then
249: FND_LOG.G_TRANSACTION_CONTEXT_ID := l_transaction_context_id;
250: else
251: -- called for a proxy so set the child transaction context id
252: G_PRX_CHILD_TRANS_CONTEXT_ID := l_transaction_context_id;
253: end if;

Line 262: ** FND_LOG_REPOSITORY.String_Unchecked_Internal2

258:
259: /*
260: ** GET_CONTEXT- Gathers context info within the session,
261: ** before calling autonomous logging procedures, like
262: ** FND_LOG_REPOSITORY.String_Unchecked_Internal2
263: */
264: PROCEDURE GET_CONTEXT (SESSION_ID IN NUMBER DEFAULT NULL,
265: USER_ID IN NUMBER DEFAULT NULL,
266: NODE IN VARCHAR2 DEFAULT NULL,

Line 385: if (FND_LOG.G_TRANSACTION_CONTEXT_ID is NULL) THEN

381: CONTEXT_OUT(9).a_val := DB_INSTANCE;
382: end if;
383:
384: /* 10. TRANSACTION_CONTEXT_ID */
385: if (FND_LOG.G_TRANSACTION_CONTEXT_ID is NULL) THEN
386:
387: /* create a new transaction context on the fly */
388: FND_LOG.G_TRANSACTION_CONTEXT_ID := init_trans_int_with_context(
389: fnd_global.conc_request_id,

Line 388: FND_LOG.G_TRANSACTION_CONTEXT_ID := init_trans_int_with_context(

384: /* 10. TRANSACTION_CONTEXT_ID */
385: if (FND_LOG.G_TRANSACTION_CONTEXT_ID is NULL) THEN
386:
387: /* create a new transaction context on the fly */
388: FND_LOG.G_TRANSACTION_CONTEXT_ID := init_trans_int_with_context(
389: fnd_global.conc_request_id,
390: fnd_global.form_id,
391: fnd_global.form_appl_id,
392: fnd_global.conc_process_id,

Line 405: CONTEXT_OUT(10).a_val := FND_LOG.G_TRANSACTION_CONTEXT_ID;

401:
402:
403: end if;
404:
405: CONTEXT_OUT(10).a_val := FND_LOG.G_TRANSACTION_CONTEXT_ID;
406:
407: end GET_CONTEXT;
408:
409: /*

Line 412: ** FND_LOG_REPOSITORY.Init_Transaction_Internal

408:
409: /*
410: ** GET_TRANSACTION_CONTEXT- Gathers transaction context info within
411: ** the session, before calling autonomous procedures, like
412: ** FND_LOG_REPOSITORY.Init_Transaction_Internal
413: */
414: PROCEDURE GET_TRANSACTION_CONTEXT ( SESSION_ID IN NUMBER DEFAULT NULL,
415: USER_ID IN NUMBER DEFAULT NULL,
416: RESP_APPL_ID IN NUMBER DEFAULT NULL,

Line 525: ** Inserts extended exception information into FND_LOG_EXCEPTIONS and

521: /*
522: ** Private - for ATG only.
523: ** POST_EXCEPTION
524: ** Description:
525: ** Inserts extended exception information into FND_LOG_EXCEPTIONS and
526: ** posts the exception / unexpected error to the Business Event System
527: **
528: ** Arguments:
529: ** Module - Module name (See FND_LOG standards)

Line 529: ** Module - Module name (See FND_LOG standards)

525: ** Inserts extended exception information into FND_LOG_EXCEPTIONS and
526: ** posts the exception / unexpected error to the Business Event System
527: **
528: ** Arguments:
529: ** Module - Module name (See FND_LOG standards)
530: ** Message_Id - The unique identifier of the message from
531: ** FND_LOG_MESSAGES.Log_Sequence
532: */
533: FUNCTION POST_EXCEPTION ( P_MODULE IN VARCHAR2,

Line 531: ** FND_LOG_MESSAGES.Log_Sequence

527: **
528: ** Arguments:
529: ** Module - Module name (See FND_LOG standards)
530: ** Message_Id - The unique identifier of the message from
531: ** FND_LOG_MESSAGES.Log_Sequence
532: */
533: FUNCTION POST_EXCEPTION ( P_MODULE IN VARCHAR2,
534: P_LOG_SEQUENCE IN NUMBER,
535: P_MESSAGE_APP IN VARCHAR2 DEFAULT NULL,

Line 563: from FND_LOG_MESSAGES

559: begin
560:
561: select MESSAGE_TEXT, TRANSACTION_CONTEXT_ID
562: into l_enc_msg, l_txn_id
563: from FND_LOG_MESSAGES
564: where LOG_SEQUENCE = P_LOG_SEQUENCE;
565:
566:
567:

Line 572: from fnd_log_transaction_context

568: --8609702
569: begin
570: select transaction_type
571: into l_transaction_type
572: from fnd_log_transaction_context
573: where transaction_context_id = l_txn_id;
574:
575: if (l_transaction_type = 'UNKNOWN') then
576: return false;

Line 634: 'FND_LOG_REPOSITORY.POST_EXCEPTION', FALSE);

630: FND_MESSAGE.SET_NAME ('FND', 'SQL-Generic error');
631: FND_MESSAGE.SET_TOKEN ('ERRNO', sqlcode, FALSE);
632: FND_MESSAGE.SET_TOKEN ('REASON', sqlerrm, FALSE);
633: FND_MESSAGE.SET_TOKEN ('ROUTINE',
634: 'FND_LOG_REPOSITORY.POST_EXCEPTION', FALSE);
635:
636: rollback;
637: return FALSE;
638: end;

Line 673: /* Unique exception enhancement: Check fnd_log_unique_exceptions table for a row */

669: dbms_session.set_nls('NLS_DATE_LANGUAGE', '"' || l_cur_date_lang || '"');
670: dbms_session.set_nls('NLS_SORT', '"' || l_cur_sort || '"');
671:
672:
673: /* Unique exception enhancement: Check fnd_log_unique_exceptions table for a row */
674: /* with this same message. If one exists already, increment the exception count */
675: /* If this is the first one, insert a new row into fnd_log_unique_exceptions */
676: begin
677: l_is_new_alert := false;

Line 675: /* If this is the first one, insert a new row into fnd_log_unique_exceptions */

671:
672:
673: /* Unique exception enhancement: Check fnd_log_unique_exceptions table for a row */
674: /* with this same message. If one exists already, increment the exception count */
675: /* If this is the first one, insert a new row into fnd_log_unique_exceptions */
676: begin
677: l_is_new_alert := false;
678: select unique_exception_id, count
679: into l_ex_id, l_occ_count

Line 680: from fnd_log_unique_exceptions

676: begin
677: l_is_new_alert := false;
678: select unique_exception_id, count
679: into l_ex_id, l_occ_count
680: from fnd_log_unique_exceptions
681: where encoded_message = l_enc_msg
682: and status in ('N', 'O');
683:
684: /** Check if limit for occrrences has been reached **/

Line 692: update fnd_log_unique_exceptions flue

688: DEBUG('Not Logging occ l_occ_count = l_max_occ_count'|| l_max_occ_count);
689: return FALSE;
690: end if;
691:
692: update fnd_log_unique_exceptions flue
693: set flue.count = flue.count + 1
694: where flue.unique_exception_id = l_ex_id;
695:
696: exception

Line 698: select fnd_log_unique_exception_s.nextval

694: where flue.unique_exception_id = l_ex_id;
695:
696: exception
697: when no_data_found then
698: select fnd_log_unique_exception_s.nextval
699: into l_ex_id
700: from dual;
701:
702: insert into fnd_log_unique_exceptions (

Line 702: insert into fnd_log_unique_exceptions (

698: select fnd_log_unique_exception_s.nextval
699: into l_ex_id
700: from dual;
701:
702: insert into fnd_log_unique_exceptions (
703: UNIQUE_EXCEPTION_ID,
704: ENCODED_MESSAGE,
705: ENGLISH_MESSAGE,
706: STATUS,

Line 735: /* Log extended exception information in FND_LOG_EXCEPTIONS */

731:
732: end;
733:
734:
735: /* Log extended exception information in FND_LOG_EXCEPTIONS */
736: insert into FND_LOG_EXCEPTIONS (
737: LOG_SEQUENCE,
738: SESSION_MODULE,
739: SESSION_ACTION,

Line 736: insert into FND_LOG_EXCEPTIONS (

732: end;
733:
734:
735: /* Log extended exception information in FND_LOG_EXCEPTIONS */
736: insert into FND_LOG_EXCEPTIONS (
737: LOG_SEQUENCE,
738: SESSION_MODULE,
739: SESSION_ACTION,
740: UNIQUE_EXCEPTION_ID,

Line 771: 'FND_LOG_REPOSITORY.POST_EXCEPTION', FALSE);

767: FND_MESSAGE.SET_NAME ('FND', 'SQL-Generic error');
768: FND_MESSAGE.SET_TOKEN ('ERRNO', sqlcode, FALSE);
769: FND_MESSAGE.SET_TOKEN ('REASON', sqlerrm, FALSE);
770: FND_MESSAGE.SET_TOKEN ('ROUTINE',
771: 'FND_LOG_REPOSITORY.POST_EXCEPTION', FALSE);
772: rollback;
773: return FALSE;
774:
775: end POST_EXCEPTION;

Line 821: INSERT INTO FND_LOG_MESSAGES (

817: /* log to table */
818: end if;
819:
820:
821: INSERT INTO FND_LOG_MESSAGES (
822: ECID_ID,
823: ECID_SEQ,
824: CALLSTACK,
825: ERRORSTACK,

Line 845: FND_LOG_MESSAGES_S.NEXTVAL

841: SUBSTRB(MESSAGE_TEXT, 1, 4000),
842: SESSION_ID_Z,
843: USER_ID_Z,
844: SYSDATE,
845: FND_LOG_MESSAGES_S.NEXTVAL
846: );
847:
848: commit;
849: end;

Line 902: STR_UNCHKED_INT_WITH_CONTEXT(6, 'fnd.plsql.fnd_log_repository', 'Buffered Logging Failed! ' ||

898: when others then
899: AFLOG_BUFFER_MODE_X := 0;
900: G_BUFFER_POS := 1;
901: DELETE_BUFFERED_TABLES;
902: STR_UNCHKED_INT_WITH_CONTEXT(6, 'fnd.plsql.fnd_log_repository', 'Buffered Logging Failed! ' ||
903: 'Please report to Oracle Development. sqlcode=' || sqlcode ||
904: '; sqlerrm=' || sqlerrm);
905: return l_log_seq;
906: end FLUSH;

Line 1007: select FND_LOG_MESSAGES_S.NEXTVAL

1003:
1004: /* This is the default Sequenced mode for AFLOG_BUFFER_MODE */
1005: /* if ( AFLOG_BUFFER_MODE_X = 2 ) then */
1006: -- Better to always do this so log_level>=4 messages are in sequence
1007: select FND_LOG_MESSAGES_S.NEXTVAL
1008: into LOG_SEQUENCE_TABLE(G_BUFFER_POS)
1009: from dual;
1010: /* end if; */
1011:

Line 1048: INSERT INTO FND_LOG_MESSAGES (

1044: end if;
1045: else
1046:
1047:
1048: INSERT INTO FND_LOG_MESSAGES (
1049: ECID_ID,
1050: ECID_SEQ,
1051: CALLSTACK,
1052: ERRORSTACK,

Line 1081: FND_LOG_MESSAGES_S.NEXTVAL,

1077: SUBSTRB(MESSAGE_TEXT, 1, 4000),
1078: SESSION_ID,
1079: nvl(USER_ID, -1),
1080: SYSDATE,
1081: FND_LOG_MESSAGES_S.NEXTVAL,
1082: ENCODED,
1083: substrb(NODE,1,60),
1084: substrb(NODE_IP_ADDRESS,1,30),
1085: substrb(PROCESS_ID,1,120),

Line 1270: if (l_encoded = 'Y') and (LOG_LEVEL = FND_LOG.LEVEL_UNEXPECTED) then

1266: CALL_STACK => CALL_STACK,
1267: ERR_STACK => ERR_STACK);
1268:
1269: /* Unexpected errors are posted as exceptions */
1270: if (l_encoded = 'Y') and (LOG_LEVEL = FND_LOG.LEVEL_UNEXPECTED) then
1271: l_posted := POST_EXCEPTION(P_MODULE => l_module,
1272: P_LOG_SEQUENCE => l_log_sequence);
1273: end if;
1274:

Line 1287: INSERT INTO FND_LOG_ATTACHMENTS fla

1283: PMIMETYPE IN VARCHAR2, PENCODING IN VARCHAR2, PLANG IN VARCHAR2,
1284: PFILE_EXTN IN VARCHAR2, PDESC IN VARCHAR2) is
1285: pragma AUTONOMOUS_TRANSACTION;
1286: begin
1287: INSERT INTO FND_LOG_ATTACHMENTS fla
1288: (
1289: LOG_SEQUENCE,
1290: CHARSET,
1291: MIMETYPE,

Line 1334: from FND_LOG_ATTACHMENTS fla

1330: end if;
1331:
1332: select content
1333: into LOG_BLOB
1334: from FND_LOG_ATTACHMENTS fla
1335: where fla.log_sequence = P_LOG_SEQUENCE for UPDATE;
1336: return;
1337:
1338: EXCEPTION

Line 1343: from fnd_log_messages flm

1339: WHEN NO_DATA_FOUND THEN
1340: begin
1341: select flm.log_sequence
1342: into l_log_sequence
1343: from fnd_log_messages flm
1344: where flm.log_sequence = P_LOG_SEQUENCE;
1345:
1346: -- If log_sequence does not exist in fnd_log_messages
1347: -- its an invalid log_sequence, return NULL

Line 1346: -- If log_sequence does not exist in fnd_log_messages

1342: into l_log_sequence
1343: from fnd_log_messages flm
1344: where flm.log_sequence = P_LOG_SEQUENCE;
1345:
1346: -- If log_sequence does not exist in fnd_log_messages
1347: -- its an invalid log_sequence, return NULL
1348: EXCEPTION
1349: WHEN NO_DATA_FOUND THEN
1350: LOG_BLOB := NULL;

Line 1359: from FND_LOG_ATTACHMENTS fla

1355: INSERT_BLOB(P_LOG_SEQUENCE, P_CHARSET, P_MIMETYPE, P_ENCODING, P_LANG, P_FILE_EXTN, P_DESC);
1356:
1357: select content
1358: into LOG_BLOB
1359: from FND_LOG_ATTACHMENTS fla
1360: where fla.log_sequence = P_LOG_SEQUENCE for UPDATE;
1361: end GET_BLOB_INTERNAL;
1362:
1363: /*

Line 1364: ** FND_LOG_REPOSITORY.METRIC_INTERNAL

1360: where fla.log_sequence = P_LOG_SEQUENCE for UPDATE;
1361: end GET_BLOB_INTERNAL;
1362:
1363: /*
1364: ** FND_LOG_REPOSITORY.METRIC_INTERNAL
1365: ** Description:
1366: ** Private -- Should only be called by METRIC_INTERNAL_WITH_CONTEXT
1367: ** Writes a metric value out to the FND tables in an autonomous
1368: ** transaction.

Line 1389: insert into FND_LOG_METRICS

1385: AUDSID IN VARCHAR2,
1386: DB_INSTANCE IN VARCHAR2) is
1387: pragma AUTONOMOUS_TRANSACTION;
1388: begin
1389: insert into FND_LOG_METRICS
1390: (MODULE,
1391: METRIC_CODE,
1392: METRIC_SEQUENCE,
1393: TYPE,

Line 1441: FND_LOG_REPOSITORY.G_METRIC_DATE := FND_CONC_DATE.STRING_TO_DATE(DATE_VC);

1437: PROCEDURE METRIC_STRING_TO_DATE(DATE_VC IN VARCHAR2 DEFAULT NULL) is
1438: begin
1439:
1440: if (DATE_VC IS NOT NULL) then
1441: FND_LOG_REPOSITORY.G_METRIC_DATE := FND_CONC_DATE.STRING_TO_DATE(DATE_VC);
1442: if (FND_LOG_REPOSITORY.G_METRIC_DATE IS NULL) then
1443: select SYSDATE
1444: into FND_LOG_REPOSITORY.G_METRIC_DATE
1445: from dual;

Line 1442: if (FND_LOG_REPOSITORY.G_METRIC_DATE IS NULL) then

1438: begin
1439:
1440: if (DATE_VC IS NOT NULL) then
1441: FND_LOG_REPOSITORY.G_METRIC_DATE := FND_CONC_DATE.STRING_TO_DATE(DATE_VC);
1442: if (FND_LOG_REPOSITORY.G_METRIC_DATE IS NULL) then
1443: select SYSDATE
1444: into FND_LOG_REPOSITORY.G_METRIC_DATE
1445: from dual;
1446: end if;

Line 1444: into FND_LOG_REPOSITORY.G_METRIC_DATE

1440: if (DATE_VC IS NOT NULL) then
1441: FND_LOG_REPOSITORY.G_METRIC_DATE := FND_CONC_DATE.STRING_TO_DATE(DATE_VC);
1442: if (FND_LOG_REPOSITORY.G_METRIC_DATE IS NULL) then
1443: select SYSDATE
1444: into FND_LOG_REPOSITORY.G_METRIC_DATE
1445: from dual;
1446: end if;
1447: else
1448: select SYSDATE

Line 1449: into FND_LOG_REPOSITORY.G_METRIC_DATE

1445: from dual;
1446: end if;
1447: else
1448: select SYSDATE
1449: into FND_LOG_REPOSITORY.G_METRIC_DATE
1450: from dual;
1451: end if;
1452:
1453: end METRIC_STRING_TO_DATE;

Line 1508: select FND_LOG_METRICS_S.NEXTVAL

1504: into l_context(11).a_val, l_context(12).a_val
1505: from v$session
1506: where audsid = TXN_SESSION;
1507:
1508: select FND_LOG_METRICS_S.NEXTVAL
1509: into l_metric_sequence
1510: from dual;
1511:
1512: if (METRIC_VALUE_STRING is NOT NULL) then

Line 1519: l_metric_value_date := FND_LOG_REPOSITORY.G_METRIC_DATE;

1515: l_type := 'N';
1516: else
1517: l_type := 'D';
1518: if (METRIC_VALUE_DATE is NULL) then
1519: l_metric_value_date := FND_LOG_REPOSITORY.G_METRIC_DATE;
1520: else
1521: l_metric_value_date := METRIC_VALUE_DATE;
1522: end if;
1523:

Line 1553: ** FND_LOG_REPOSITORY.METRICS_EVENT_INTERNAL

1549:
1550: end METRIC_INTERNAL_WITH_CONTEXT;
1551:
1552: /*
1553: ** FND_LOG_REPOSITORY.METRICS_EVENT_INTERNAL
1554: ** Description:
1555: ** Private -- Should only be called by METRICS_EVENT_INT_WITH_CONTEXT
1556: ** Posts the pending metrics for the current component
1557: ** session to the Business Event system and updates the pending

Line 1576: 2983052: Check for rows in FND_LOG_METRICS

1572:
1573: begin
1574:
1575: /*
1576: 2983052: Check for rows in FND_LOG_METRICS
1577: If no metrics actually logged, don't raise an event.
1578: */
1579: select count(1)
1580: into cnt

Line 1581: from FND_LOG_METRICS

1577: If no metrics actually logged, don't raise an event.
1578: */
1579: select count(1)
1580: into cnt
1581: from FND_LOG_METRICS
1582: where TRANSACTION_CONTEXT_ID = CONTEXT_ID;
1583:
1584: if cnt = 0 then
1585: return;

Line 1592: update FND_LOG_METRICS

1588: select FND_METRICS_EVENT_KEY_S.nextval
1589: into l_event_key
1590: from dual;
1591:
1592: update FND_LOG_METRICS
1593: set EVENT_KEY = l_event_key
1594: where EVENT_KEY is NULL
1595: and TRANSACTION_CONTEXT_ID = CONTEXT_ID;
1596:

Line 1607: 'FND_LOG_REPOSITORY.METRIC_EVENT_INTERNAL', FALSE);

1603: FND_MESSAGE.SET_NAME ('FND', 'SQL-Generic error');
1604: FND_MESSAGE.SET_TOKEN ('ERRNO', sqlcode, FALSE);
1605: FND_MESSAGE.SET_TOKEN ('REASON', sqlerrm, FALSE);
1606: FND_MESSAGE.SET_TOKEN ('ROUTINE',
1607: 'FND_LOG_REPOSITORY.METRIC_EVENT_INTERNAL', FALSE);
1608: rollback;
1609: end;
1610:
1611: end METRICS_EVENT_INTERNAL;

Line 1614: ** FND_LOG_REPOSITORY.METRICS_EVENT_INT_WITH_CONTEXT

1610:
1611: end METRICS_EVENT_INTERNAL;
1612:
1613: /*
1614: ** FND_LOG_REPOSITORY.METRICS_EVENT_INT_WITH_CONTEXT
1615: ** Description:
1616: ** A wrapper API that calls Metrics_Event_Internal using the
1617: ** context values from internal cache of the context values.
1618: ** This routine is only to be called from the AOL implementations of

Line 1631: l_context_id := FND_LOG.G_TRANSACTION_CONTEXT_ID;

1627: begin
1628: if CONTEXT_ID is NOT NULL then
1629: l_context_id := CONTEXT_ID;
1630: else
1631: l_context_id := FND_LOG.G_TRANSACTION_CONTEXT_ID;
1632: end if;
1633:
1634: METRICS_EVENT_INTERNAL(l_context_id);
1635:

Line 1641: ** FND_LOG_REPOSITORY.INIT_TRANS_INT_WITH_CONTEXT

1637:
1638:
1639:
1640: /*
1641: ** FND_LOG_REPOSITORY.INIT_TRANS_INT_WITH_CONTEXT
1642: ** Description:
1643: ** A wrapper API that calls Init_Transaction_Internal using the
1644: ** context values from internal cache of the context values.
1645: ** This routine is only to be called from the AOL implementations of

Line 1729: from fnd_log_transaction_context

1725: -- see if a transaction context exists for this process
1726: begin
1727: select transaction_context_id
1728: into l_transaction_context_id
1729: from fnd_log_transaction_context
1730: where transaction_type = 'SERVICE'
1731: and transaction_id = concurrent_process_id;
1732:
1733: return l_transaction_context_id;

Line 1752: from fnd_log_transaction_context

1748: -- see if a transaction context exists for this request
1749: begin
1750: select transaction_context_id
1751: into l_transaction_context_id
1752: from fnd_log_transaction_context
1753: where transaction_type = 'REQUEST'
1754: and transaction_id = conc_request_id;
1755:
1756: return l_transaction_context_id;

Line 1785: from fnd_log_transaction_context

1781: -- see if a transaction context exists for this form
1782: begin
1783: select transaction_context_id
1784: into l_transaction_context_id
1785: from fnd_log_transaction_context
1786: where transaction_type = 'FORM'
1787: and transaction_id = l_transaction_id;
1788:
1789: return l_transaction_context_id;

Line 1808: from fnd_log_transaction_context

1804: -- see if a transaction context exists for this instance
1805: begin
1806: select transaction_context_id
1807: into l_transaction_context_id
1808: from fnd_log_transaction_context
1809: where transaction_type = 'SOA_INSTANCE'
1810: and transaction_id = soa_instance_id;
1811:
1812: return l_transaction_context_id;

Line 1837: from fnd_log_transaction_context

1833: if icx_sec.g_transaction_id is not null and icx_sec.g_transaction_id > 0 then
1834: begin
1835: select transaction_context_id
1836: into l_transaction_context_id
1837: from fnd_log_transaction_context
1838: where transaction_type = 'ICX'
1839: and transaction_id = icx_sec.g_transaction_id
1840: and session_id = icx_sec.g_session_id
1841: and user_id = to_number(l_context(2).a_val)

Line 1870: from fnd_log_transaction_context

1866: -- Check for coarser ICX Session
1867: begin
1868: select transaction_context_id
1869: into l_transaction_context_id
1870: from fnd_log_transaction_context
1871: where transaction_type = 'ICX'
1872: and session_id = icx_sec.g_session_id
1873: and transaction_id = -1
1874: and user_id = to_number(l_context(2).a_val)

Line 1911: from fnd_log_transaction_context

1907:
1908: begin
1909: select transaction_context_id
1910: into l_transaction_context_id
1911: from fnd_log_transaction_context
1912: where transaction_type = 'UNKNOWN'
1913: and session_id = -1
1914: and transaction_id = -1
1915: and user_id = to_number(l_context(2).a_val)

Line 1945: return FND_LOG.G_TRANSACTION_CONTEXT_ID;

1941: P_RESP_APPL_ID => to_number(l_context(3).a_val),
1942: P_RESPONSIBILITY_ID => to_number(l_context(4).a_val),
1943: P_SECURITY_GROUP_ID => to_number(l_context(5).a_val));
1944:
1945: return FND_LOG.G_TRANSACTION_CONTEXT_ID;
1946:
1947: end INIT_TRANS_INT_WITH_CONTEXT;
1948:
1949:

Line 2000: FND_LOG.G_CURRENT_RUNTIME_LEVEL := AFLOG_LEVEL_X;

1996: /* Set up the global level in the log package so it won't have */
1997: /* to call through in order to find out whether logging is */
1998: /* enabled at this level. */
1999: if (AFLOG_ENABLED_X) then
2000: FND_LOG.G_CURRENT_RUNTIME_LEVEL := AFLOG_LEVEL_X;
2001:
2002: /* Tracing disabled for initial 12.0 release
2003: if (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) then
2004: DBMS_TRACE.SET_PLSQL_TRACE(DBMS_TRACE.trace_all_exceptions);

Line 2003: if (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) then

1999: if (AFLOG_ENABLED_X) then
2000: FND_LOG.G_CURRENT_RUNTIME_LEVEL := AFLOG_LEVEL_X;
2001:
2002: /* Tracing disabled for initial 12.0 release
2003: if (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) then
2004: DBMS_TRACE.SET_PLSQL_TRACE(DBMS_TRACE.trace_all_exceptions);
2005: fnd_log_enabled_tracing := true;
2006: elsif (fnd_log_enabled_tracing) then
2007: DBMS_TRACE.CLEAR_PLSQL_TRACE;

Line 2005: fnd_log_enabled_tracing := true;

2001:
2002: /* Tracing disabled for initial 12.0 release
2003: if (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) then
2004: DBMS_TRACE.SET_PLSQL_TRACE(DBMS_TRACE.trace_all_exceptions);
2005: fnd_log_enabled_tracing := true;
2006: elsif (fnd_log_enabled_tracing) then
2007: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2008: fnd_log_enabled_tracing := false;
2009: end if;

Line 2006: elsif (fnd_log_enabled_tracing) then

2002: /* Tracing disabled for initial 12.0 release
2003: if (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) then
2004: DBMS_TRACE.SET_PLSQL_TRACE(DBMS_TRACE.trace_all_exceptions);
2005: fnd_log_enabled_tracing := true;
2006: elsif (fnd_log_enabled_tracing) then
2007: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2008: fnd_log_enabled_tracing := false;
2009: end if;
2010: */

Line 2008: fnd_log_enabled_tracing := false;

2004: DBMS_TRACE.SET_PLSQL_TRACE(DBMS_TRACE.trace_all_exceptions);
2005: fnd_log_enabled_tracing := true;
2006: elsif (fnd_log_enabled_tracing) then
2007: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2008: fnd_log_enabled_tracing := false;
2009: end if;
2010: */
2011: else
2012: FND_LOG.G_CURRENT_RUNTIME_LEVEL := 99999;

Line 2012: FND_LOG.G_CURRENT_RUNTIME_LEVEL := 99999;

2008: fnd_log_enabled_tracing := false;
2009: end if;
2010: */
2011: else
2012: FND_LOG.G_CURRENT_RUNTIME_LEVEL := 99999;
2013: /*
2014: if (fnd_log_enabled_tracing) then
2015: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2016: fnd_log_enabled_tracing := false;

Line 2014: if (fnd_log_enabled_tracing) then

2010: */
2011: else
2012: FND_LOG.G_CURRENT_RUNTIME_LEVEL := 99999;
2013: /*
2014: if (fnd_log_enabled_tracing) then
2015: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2016: fnd_log_enabled_tracing := false;
2017: end if;
2018: */

Line 2016: fnd_log_enabled_tracing := false;

2012: FND_LOG.G_CURRENT_RUNTIME_LEVEL := 99999;
2013: /*
2014: if (fnd_log_enabled_tracing) then
2015: DBMS_TRACE.CLEAR_PLSQL_TRACE;
2016: fnd_log_enabled_tracing := false;
2017: end if;
2018: */
2019: end if;
2020:

Line 2043: FND_LOG.G_TRANSACTION_CONTEXT_ID := null;

2039:
2040: SELF_INITED_X := TRUE;
2041:
2042: /* Deferred Init: All initialization is now deferred to GET_CONTEXT */
2043: FND_LOG.G_TRANSACTION_CONTEXT_ID := null;
2044:
2045: exception
2046: when OTHERS then
2047: /* Make sure that an exception here does not stop Apps initialization */

Line 2069: if(FND_LOG.G_TRANSACTION_CONTEXT_ID is null) then

2065: begin
2066:
2067: if(NOT SELF_INITED_X) then
2068: SELF_INIT;
2069: if(FND_LOG.G_TRANSACTION_CONTEXT_ID is null) then
2070: GET_CONTEXT(CONTEXT_OUT => l_context);
2071: end if;
2072: end if;
2073:

Line 2074: select FND_LOG_MESSAGES_S.NEXTVAL

2070: GET_CONTEXT(CONTEXT_OUT => l_context);
2071: end if;
2072: end if;
2073:
2074: select FND_LOG_MESSAGES_S.NEXTVAL
2075: into LOG_SEQUENCE_OUT
2076: from dual;
2077:
2078: TIMESTAMP_OUT := sysdate;

Line 2081: TXN_ID_OUT := FND_LOG.G_TRANSACTION_CONTEXT_ID;

2077:
2078: TIMESTAMP_OUT := sysdate;
2079: DBSESSIONID_OUT := TXN_SESSION;
2080: DBINSTANCE_OUT := TXN_INSTANCE;
2081: TXN_ID_OUT := FND_LOG.G_TRANSACTION_CONTEXT_ID;
2082:
2083: end GET_BULK_CONTEXT_PVT;
2084:
2085: /**

Line 2124: INSERT INTO FND_LOG_MESSAGES (

2120: l_process_id := substrb(nvl(PROCESS_ID_IN, TXN_PROCESS),1,120);
2121: l_jvm_id := substrb(JVM_ID_IN,1,120);
2122:
2123: FORALL i IN 1..SIZE_IN
2124: INSERT INTO FND_LOG_MESSAGES (
2125: MODULE,
2126: LOG_LEVEL,
2127: MESSAGE_TEXT,
2128: SESSION_ID,

Line 2149: nvl(LOG_SEQUENCE_IN(i), FND_LOG_MESSAGES_S.NEXTVAL),

2145: MESSAGE_TEXT_IN(i),
2146: SESSION_ID_IN(i),
2147: nvl(USER_ID_IN(i), -1),
2148: nvl(TIMESTAMP_IN(i), sysdate),
2149: nvl(LOG_SEQUENCE_IN(i), FND_LOG_MESSAGES_S.NEXTVAL),
2150: ENCODED_IN(i),
2151: l_node,
2152: l_node_ip_address,
2153: l_process_id,

Line 2168: if (ENCODED_IN(i) = 'Y') and (LOG_LEVEL_IN(i) = FND_LOG.LEVEL_UNEXPECTED) then

2164: /* Typically there won't be any UNEXPECTED messages logged using this Function */
2165: /* Unexpected errors are posted as exceptions */
2166: /*
2167: FOR i IN 1..SIZE_IN LOOP
2168: if (ENCODED_IN(i) = 'Y') and (LOG_LEVEL_IN(i) = FND_LOG.LEVEL_UNEXPECTED) then
2169: l_posted := POST_EXCEPTION(P_MODULE => MODULE_IN(i),
2170: P_LOG_SEQUENCE => LOG_SEQUENCE_IN(i),
2171: P_SESSION_MODULE => NULL,
2172: P_SESSION_ACTION => NULL);

Line 2314: from fnd_log_transaction_context

2310: --
2311: -- Check if child context already exists
2312: --
2313: select transaction_context_id into G_PRX_CHILD_TRANS_CONTEXT_ID
2314: from fnd_log_transaction_context
2315: where transaction_id = p_transaction_id
2316: and transaction_type = p_transaction_type
2317: and parent_context_id = p_parent_context_id;
2318: exception

Line 2339: -- row for child context in fnd_log_transaction_context

2335: end if;
2336:
2337: --
2338: -- Here, call init_transaction_internal to create a new
2339: -- row for child context in fnd_log_transaction_context
2340: --
2341: init_transaction_internal(
2342: p_transaction_type => p_transaction_type,
2343: p_transaction_id => p_transaction_id,

Line 2443: if(FND_LOG.G_TRANSACTION_CONTEXT_ID is null) then

2439: if(NOT SELF_INITED_X) then
2440: SELF_INIT;
2441: end if;
2442:
2443: if(FND_LOG.G_TRANSACTION_CONTEXT_ID is null) then
2444: GET_CONTEXT(CONTEXT_OUT => l_context);
2445: end if;
2446:
2447:

Line 2452: p_parent_context_id => fnd_log.g_transaction_context_id,

2448: -- Now, initialize the child transaction context if not already
2449: -- initialized.
2450: if (G_PRX_CHILD_TRANS_CONTEXT_ID is null) then
2451: INIT_CHILD_CONTEXT(
2452: p_parent_context_id => fnd_log.g_transaction_context_id,
2453: p_transaction_id => p_request_id,
2454: p_transaction_type => 'REQUEST');
2455: end if;
2456:

Line 2530: saved_context := FND_LOG.G_TRANSACTION_CONTEXT_ID;

2526: if(NOT SELF_INITED_X) then
2527: SELF_INIT;
2528: end if;
2529:
2530: saved_context := FND_LOG.G_TRANSACTION_CONTEXT_ID;
2531: FND_LOG.G_TRANSACTION_CONTEXT_ID := TRANSACTION_CONTEXT_ID;
2532:
2533:
2534: l_log_sequence := STR_UNCHKED_INT_WITH_CONTEXT(LOG_LEVEL => LOG_LEVEL,

Line 2531: FND_LOG.G_TRANSACTION_CONTEXT_ID := TRANSACTION_CONTEXT_ID;

2527: SELF_INIT;
2528: end if;
2529:
2530: saved_context := FND_LOG.G_TRANSACTION_CONTEXT_ID;
2531: FND_LOG.G_TRANSACTION_CONTEXT_ID := TRANSACTION_CONTEXT_ID;
2532:
2533:
2534: l_log_sequence := STR_UNCHKED_INT_WITH_CONTEXT(LOG_LEVEL => LOG_LEVEL,
2535: MODULE => MODULE,

Line 2551: FND_LOG.G_TRANSACTION_CONTEXT_ID := saved_context;

2547: CALL_STACK => CALL_STACK,
2548: ERR_STACK => ERR_STACK);
2549:
2550:
2551: FND_LOG.G_TRANSACTION_CONTEXT_ID := saved_context;
2552:
2553: return l_log_sequence;
2554:
2555: end;

Line 2559: end FND_LOG_REPOSITORY;

2555: end;
2556:
2557:
2558:
2559: end FND_LOG_REPOSITORY;