Showing posts with label ODI. Show all posts
Showing posts with label ODI. Show all posts

Monday, November 21, 2022

 Opatch reports 'Cyclic Dependency Detected' error when patching ODI 


When applying a Patch Set Update (PSU) to WebLogic Server on Linux platforms, it fails with "ApplySession::apply failed: oracle.glcm.opatch.common.api.install.HomeOperationsException"


java.lang.RuntimeException: ApplySession failed in system modification phase... 'ApplySession::apply failed: oracle.glcm.opatch.common.api.install.HomeOperationsException: A failure occurred while processing patch: <PATCH_ID>'


The Linux 'ulimit' open process limit may be set too low.


We need to add user limits in /etc/security/limits.conf file as root user

vi /etc/security/limits.conf

*          soft    nproc           65536

*          hard    nproc           65536

*          soft    nofile          65536

*          hard    nofile          65536

Note: "*" represents all users, if you want to add limits for specific user replace "*" with user name.


oracle          soft    nproc           65536
oracle          hard    nproc           65536
oracle          soft    nofile          65536
oracle          hard    nofile          65536

Wednesday, July 20, 2022

Perfect order of ODI export and import

 Smart Export / Import is the recommended way to achieve such a migration. This is the easiest way to make sure all the dependencies are taken along and it's possible to skip the Topology when importing.

If the Smart Export / Import is not used, the objects should be imported in a specific order to avoid missing references :

1.     Projects : Empty

2.     Variables (as even the Physical Topology can use variables)

3.     If not existing : Physical Topology

4.     If not existing : Logical Topology

5.     Projects Folders, KMs, Sequences, User Functions

6.     Models

7.     Interfaces and Procedures

8.     Packages

9.     Scenario and Load Plans

How To Refresh ODI 12c Component-Style (Built-in) Knowledge Modules

 How To Refresh ODI 12c Component-Style (Built-in) Knowledge Modules

Regardless of the version of ODI 12c used, component-style (built-in) KMs can be refreshed by executing the following SDK command from the ODI Studio Groovy editor:

OdiAdapter.getInstance(odiInstance).refreshRepositorySeededObjects (odiInstance, true);

Friday, May 1, 2020

SQL query to find whether OdiSendMail is configured or not ODI 12c

In the SQL developer connect to the ODI work repository user (Ex: DEV_ODI_REPO) and run the below query.

select SCEN_NAME,TASK_NAME3,DEF_TXT from snp_scen_task snp_scen_task,




AND DEF_TXT like '%OdiSendMail%';

Run the below SQL query to get the load plan name and load plan step name with the corresponding scenario name.








AND DEF_TXT LIKE '%OdiSendMail%');

Friday, January 17, 2020

Steps for restricting user to specific Work repository and Project in ODI

Steps for Restricting Visibility of Work Repositories for a specific user

We have created a new work repository and When ODI developers connect to the ODI studio, they can edit the connection parameters.
In particular, they can manually select the Work Repository that they will connect to.
Repository access can be password protected, but for security reasons it is best to not even list repositories that users should not have access to it.

Select the ODI Security navigator

Right-click on the CONNECT profile and select Duplicate Selection.
ODI creates a new profile called Copy of CONNECT

Click on Yes

Double-click on the new profile to rename it

Expand the new profile to list all objects. At the bottom of the list of objects you will see an entry for Work Repositories.
Expand Work Repositories: you should now see the View method

Double-click the View method and deselect the Generic Privilege check-box

Save the changes to the view method

Drag and drop the new profile on each developer’s name and select Yes when you are prompted to grant this profile to the user. You can then add any other profile in order to complete the privileges for that user.

Once the new privilege has been assigned to the developers, you have to drag and drop the work repository name from Topology onto the user name in the Security module. To perform this operation, we have to dissociate the Security navigator from the other navigators.

When we drag and drop the repository on the user, we are prompted to confirm that we want to grant this privilege to the user. select Yes. We then have to “activate” the privilege.
There are two possible options in that activation window, make sure to select the bigger check-mark as highlighted

Drag and drop the project we want to grant for the user as below and click on Yes.

Select “Allow all methods in all repositories” as activation method.

Click on Yes

Click on Save

Now in the ODI Studio, only the allowed repository will be visible

Login to Weblogic console
Go to services – Data Sources
Click on New – Generic Data Source

Provide Name and JNDI Name and click on Next

Provide the suitable driver and click on Next

Provide the database details and click on Next

Click on the Test configuration

If the test got succeeded click on Next

Select bia_odi_cluster and click on Finish and then click on Activate changes.

Restart all the servers and services.

Login to ODI console master repository

Click on Management

Right-click on repository connections and click on create

Provide the new work repository jndi details and click on next

Now logout and login with the user to the specific repository

Expand the Projects and check for the project we assigned.

Start ODI Studio and login to the work repository where the projects we want to restrict and navigate to the Security view.

Verify that all the object methods in the NG DESIGNER The profile has the "Generic Privilege" box unchecked.

Like this uncheck Generic Privilege for all the view objects in Designer
For Project access restriction, affect the following Profiles to your User:

From Designer, drag and drop the Projects to allocate to the User
When performing this operation, a window is displayed which prompts for method, and Work Repository selection.
Select all desired methods, and Work Repositories with the checkboxes

Uncheck the methods we don’t want and click on save

Login to the ODI console with the non-supervisor user to the work repository and check for the restricted project. Users should not see any project.

Test Case1:
Executing a scenario as an admin user and checking for its session in odi_user

Execute the scenario as below

Provide agent and context and click on Execute Scenario

Click on OK

Logout and login as non-supervisor user now and check for the executed scenario session

Test Case2:
Executing a scenario as odi_user and checking for its session

Execute the scenario as below

Provide agent and context and click on Execute Scenario

Click on Ok

Check for the executed session now

  Opatch reports 'Cyclic Dependency Detected' error when patching ODI   Issue: When applying a Patch Set Update (PSU) to WebLogic Se...