Invalid Objects and What issue they can cause in application? - sql

I just wanted to know about some invalid objects which are from Oracle ebs 12.1.3. The list is
CST_LAYER_ACTUAL_COST_DTLS_V
IGW_BUDGET_CATEGORY_V
IGW_REPORT_PROCESSING
FV_FACTS_TBAL_TRX
FV_FACTS_TRX_REGISTER
FV_SF133_ONEYEAR
FV_SF133_NOYEAR
FV_FACTS_TRANSACTIONS
FV_FACTS_TBAL_TRANSACTIONS
ENI_DBI_CO_OBJIDS_MV
PJI_TIME_PA_RPT_STR_MV
POA_MID_BS_J_MV
POA_IDL_BS_J_MV
POA_ITEMS_MV
GL_ACCESS_SET_LEDGERS
LNS_LOAN_DTLS_ALL_MV
OZF_CUST_FUND_SUMMARY_MV
FV_SLA_FV_PROCESSING_PKG
OE_ITEMS_MV
PA_DEDUCTIONS_W
PA_DEDUCTIONS_PUB
PA_DEDUCTIONS_PUB
PA_DEDUCTIONS_W
PA_DCTN_APRV_NOTIFICATION
--object types--
CST_LAYER_ACTUAL_COST_DTLS_V VIEW
IGW_BUDGET_CATEGORY_V VIEW
IGW_REPORT_PROCESSING
PACKAGE BODY FV_FACTS_TBAL_TRX PACKAGE BODY
FV_FACTS_TRX_REGISTER PACKAGE BODY
FV_SF133_ONEYEAR PACKAGE BODY
FV_SF133_NOYEAR PACKAGE BODY
FV_FACTS_TRANSACTIONS
PACKAGE BODY FV_FACTS_TBAL_TRANSACTIONS PACKAGE BODY
ENI_DBI_CO_OBJIDS_MV MATERIALIZED VIEW
PJI_TIME_PA_RPT_STR_MV MATERIALIZED VIEW
POA_MID_BS_J_MV MATERIALIZED VIEW
POA_IDL_BS_J_MV MATERIALIZED VIEW
POA_ITEMS_MV MATERIALIZED VIEW
GL_ACCESS_SET_LEDGERS MATERIALIZED VIEW
LNS_LOAN_DTLS_ALL_MV MATERIALIZED VIEW
OZF_CUST_FUND_SUMMARY_MV MATERIALIZED VIEW
FV_SLA_FV_PROCESSING_PKG PACKAGE BODY
NIB_MV_TB MATERIALIZED VIEW
OE_ITEMS_MV MATERIALIZED VIEW
PA_DEDUCTIONS_W PACKAGE
PA_DEDUCTIONS_PUB PACKAGE
PA_DEDUCTIONS_PUB PACKAGE BODY
PA_DEDUCTIONS_W PACKAGE BODY
PA_DCTN_APRV_NOTIFICATION PACKAGE BODY
So I wanted to know that If I keep them invalid what problem they can cause?
Steps I took to know myself:-
I have searched over Oracle support and google by object name but the only thing i get there is patch no to resolve the issue or in some case that ignore these objects they will do nothing.
If anyone have information about these object and what problem they can cause in application. Please do share.
Thanks in Advance!!!

Tom Kyte, a noted Oracle expert, says
They will fix themselves as they are executed or accessed. I never
worry about some invalid objects -- you'll almost always have some
somewhere.
This is usually true as long as:
the database was installed correctly
patches and upgrades have been installed correctly
you have not changed oracle front end code or oracle database code
data that is being entered remains within expected ranges
Invalid materialized views are not usually significant. In 9, 10 and 11 they appear to become invalid as soon as new data is added to the underlying tables. They can still be used even if they are invalid.
Invalid views are compiled on access and if there are no errors become usable.
The same is true of packages and package bodies: if there are no errors they are compiled on access. How your front end handles the error message before the compilation is not the same for all applications. If you try and access a package that cannot compile due to a code error then you will not get any results and a PL/SQL error is returned.
To see what the cause of your problem is:
compile all invalid objects manually or use dbms_utility.compile_schema( 'YourSchema' );
for anything that will not compile you can find out more with the query
select * from all_errors:
If you find errors in Oracle supplied objects you then have to determine the source:
incorrect install or patching
known Oracle bug that should be patched
known Oracle bug that can be ignored
other cause which is beyond the scope of the question

Related

plsql : New function inside an existing package compilation and syntax check

How do I compile a new function created inside a package in plsql, to see syntactical error and so on
You can't compile a single function - compile the whole package.
If your concern is about invalidating the whole package in case that function has errors, then
create a standalone function (i.e. outside of the package)
debug it
once it is OK (doesn't have syntax errors, returns result as expected), include it into the package
In addition to #Littefoot's advise I'd say: use a proper GUI. Oracle has a free tool called sql developer. It has a great interface for editing database objects (packages/functions/procedures/triggers). It highlights errors and is very well documented (https://www.thatjeffsmith.com/sql-developer/). Note that is does not point out syntax errors - but once you're a bit used to working with pl/sql they become obvious very quickly.
In Oracle, after compiling a procedure/function/package. If there is an error then the command will return with the message:
ORA-24344: success with compilation error
You can then use:
SHOW ERRORS
or
SELECT * FROM USER_ERRORS;
or, for example, for errors with packages in a specific schema:
SELECT *
FROM ALL_ERRORS
WHERE owner = 'SCHEMA_NAME'
AND type IN ( 'PACKAGE', 'PACKAGE BODY');
Which will list the errors (complete with line numbers and error messages) and you can then debug the procedure/function/package and recompile it.
fiddle

Not able to start the ignite server through java code

I am using ignite native and using atomicity as TRANSACTIONAL_SNAPSHOT when I am trying the load the old storage which was configured with amoticity TRNASACTIONAL it is giving the Unknown page type issue after deleting the .dat file but if I am using new storage it is working fine. Can anybody help me?
org.h2.jdbc.JdbcSQLException: General error: "java.lang.IllegalStateException: Unknown page type: 10009 pageId: 0002ffff00000006"; SQL statement:
CREATE TABLE "DFM"."ANSWER_TYPE_ENUM" (_KEY VARCHAR INVISIBLE NOT NULL,_VAL OTHER INVISIBLE,"ID" VARCHAR,"ENUM_VALUE" VARCHAR) engine "org.apache.ignite.internal.processors.query.h2.H2TableEngine" [50000-197]
I've never seen errors like these, but I would say that TRANSACTIONAL_SNAPSHOT is experimental and should be avoided for now.

How to Call package successfully

got error when calling package
error is
Error starting at line : 1 in command -
PKG_Generate_GRNo.GenerateGR(TO_NUMBER(:P164_APP_ID,
'9999999'),:APP_USER,:P164_FIRST_NAME,:P164_LAST_NAME,:P164_EMAIL,:P164_SKYPE_ID,:P164_COUNTRY,:P164_DATE_OF_BIRTH)
Error report - Unknown Command
PKG_Generate_GRNo.GenerateGR(TO_NUMBER(:P164_APP_ID,
'9999999'),:APP_USER,:P164_FIRST_NAME,:P164_LAST_NAME,:P164_EMAIL,
:P164_SKYPE_ID,:P164_COUNTRY,:P164_DATE_OF_BIRTH);
Session state protection violation is definitely an Apex error, relating to your page settings. It seems your package is trying to change the state of a read-only page. See this other question.
The item identifier in the error message P164_COURSECOUNT has the same prefix as the parameters you pass to the package (:P164_APP_ID) so presumably they relate to the same page. We know nothing about your application or its architecture, so it's hard to offer concrete advice. Maybe you need to change the page or item settings, maybe you need to change what the package does. Only you can tell the right course of action.
As you didn't post the whole command, a note: you have to enclose it into begin-end block, e.g.
BEGIN
PKG_Generate_GRNo.GenerateGR (TO_NUMBER ( :P164_APP_ID, '9999999'),
:APP_USER,
:P164_FIRST_NAME,
:P164_LAST_NAME,
:P164_EMAIL,
:P164_SKYPE_ID,
:P164_COUNTRY,
:P164_DATE_OF_BIRTH);
END;
/

SAP HANA - Model inconsistency - during activation

In SAP HANA I get the following Error during Activation:
Repository: Encountered an error in repository runtime extension;Model inconsistency. Create Scenario failed: The following errors occurred: Index does not exist;Failed to get CalcIndex '_SYS_BIC:asdf/CA_asdf_BASE (t -1)' (2007)
What could be the reasons?
Unfortunately the error message does not indicate what the problem is :/
One possible reason is that the underlying view(s) are not activated.
As a result you can not activate the view on top.
In this case the error message indicates that the underlying view (CA_asdf_BASE) is not activated.
So ensure that all underlying views are activated.
If this does not help then try:
Revert to last active version
Repeat the last steps.
Also, try to draw down your data model and check if there is a recursion. Somehow that was the case in my example. I was trying to add a view A into view B, but as a matter of fact, view B had already used view A a few levels below. Logic/brain error :)

updateblob fails in Powerbuilder

In Powerbuilder I am trying to update a table (Oracle) with blob but get sqlerror, "Database statement must refer to blob variable". My declaration and updateblob statements are as follows:
blob lblob_newxml
long llong_subid
UPDATEBLOB RP_XML_FORMS SET XML_DOC = :lblob_newxml
WHERE SUBMISSION_ID = :llong_subid
USING SQLCA;
Does anybody know why it is happening and or how to solve this problem? Thanks.
To get more information on this problem and the possible causes, I'd run with one of the database traces turned on. (You can check out database trace options in the Connecting to Your Database manual; link may not be appropriate for your PB version, which you haven't mentioned yet.) This may or may not tell you more, but it tracks everything between the app and when the PB drivers pass the commands "over the wall" to the database's driver.
Good luck,
Terry.
"The PowerBuilder VM can get the SQL syntax for the following types of errors, and passes it to the Transaction object’s DBError event for the following types of errors: ..." (see this page).
If your lblob_newxml is null then use this update statement instead:
UPDATE RP_XML_FORMS SET XML_DOC = NULL
WHERE SUBMISSION_ID = :llong_subid
USING SQLCA;