14 Replies Latest reply: Oct 8, 2008 4:06 AM by 650184 RSS

    "ORA-06508: PL/SQL: could not find program unit being called"

    661954
      Hi All,

      I am not able to execute a mapping after deployment. it says "ORA-06508: PL/SQL: could not find program unit being called" Any help is greatly appreciated.

      Also I am getting smart recovery error message: orphan processes when I m trying to login the morning. It says to kill the processes using Alter Kill but the problem is not solved. Kindly help me out.

      Thanks
        • 1. Re: "ORA-06508: PL/SQL: could not find program unit being called"
          558993
          Hi,

          Either the mapping or one of the process called by the mapping is not available in ur database. Check whether all the components (procedures/functions etc) that is used in the mapping is available in the datbase.

          Regards
          Bharath
          • 2. Re: "ORA-06508: PL/SQL: could not find program unit being called"
            661954
            Hi Bharat,

            Thanks for your reply. There is a pre mapping function and a post mapping procedure used in the mapping and the source systems and the target tables can be viewed in the database. However, when i compile the package used for pre mapping n post mapping i get a warning saying PLS-00103: Encountered the symbol "PACKAGE" The symbol "PACKAGE" was ignored. I am banging my head over past 4 days. Its very urgent. Kindly help me where the problem might be.
            • 3. Re: "ORA-06508: PL/SQL: could not find program unit being called"
              558993
              Hi,

              Without the package i canot tell u anything. But this is the problem why u r getting an issue in the mapping. The package has to be corrected first. I think its just a syntax issue anyway. Try to use PL/SQL expert to get this solved or post the package here and i will have a look at it.


              Regards
              Bharath
              • 4. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                661954
                Hi Bharat,

                Thank you very much for your help. Yes indeed that is a problem with one of the packages i was using for post n pre mapping processes and that was taken care of by the DBA. I got a new validation problem with the mapping now it says
                VLD-1012. Mapping objects must be consistent with the warehouse objects. Synchronize to and from the pre mapping process being used. What does that supposed to mean? Your help will be highly appreciated.

                Thanks
                • 5. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                  650184
                  this means that the dfinition of the objects referred in the mapping has changed in the datbase for eg, a new column has been added to the table or removed from the table. You have follow the foll steps:
                  1. rename the existing object(table for eg) to a new tablename in the project explorer
                  2.do not change anything in mapping
                  3. import the changed table from the database
                  4.go to mapping
                  5. select the table that has been change and right click and select synchronize
                  6. remember to select by NAME and not ID
                  7. this will solve the problem.

                  now you need to determine if the dropped column needs to be removed from the filter9if you have used any) or to add the enw column from the table to filter or target

                  hope this helps
                  • 6. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                    558993
                    Hi,

                    U have corrected the pre mapping procedure in the database. U need to import it into the OWB environemnt and sync it with the mapping. U will be all set..

                    Regards
                    Bharath
                    • 7. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                      661954
                      Hi Bharat and user,

                      Thank you so much for your help guys. I was able to get rid of that error by reimporting the package. Also i tried synchronization and even that helps.
                      Again I m faced with 2 new problems.

                      I am using the tool for the first time and I am facing problems at every step

                      1. VLD- 2754 Attributes of updte matching criteria are not mapped in tables
                      2.VLD- 2750 Missing update matching criteria in table. I was wondering what those validation errors mean.

                      Also when i try to debug the mapping it gives me DBG-1012 debug deployment errors, can't run debug code.

                      PLS-00201: identifier 'PKG' must be declared

                      I tried to grant execute permissions to that particular user using the package and also tried by giving execute permission to the public on that package still none maps can be deployed.

                      Your help is highly needed.

                      Thanks
                      • 8. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                        558993
                        Hey,

                        I believe u have not connected all the attributes in the target table with a value. assuming u have a table A with cols 1,2,3,4,and 5. ur constraint is 2 and 3 say...

                        what u have done is u have got the table but u have not connected attributes 2 and 3 with values.. Sine there is no connection it will give u the error.

                        Also u have not set up the matching constraints if u r running as an insert/update. Check the table properties and also make sure u cmap the constaint cols with the correct values.

                        Regards
                        Bharath
                        • 9. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                          661954
                          Hi Bharat,
                          -
                          Thank you so much for your help. I changed the ALL_CONSTRAINTS to NO_CONSTRAINTS for that table and the error got resolved.

                          Thanks,
                          Priya.

                          Edited by: user8378661 on Oct 5, 2008 12:46 PM
                          • 10. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                            661954
                            Hi Bharat,

                            1. I have to create a mapping now that uses a foreign key which is a primary key of another table. Can you give me any ideas as how to create that?

                            2. Also I am getting PLS:00357 erro: Table, view or sequence reference XYZ is not allowed while trying to deploy a mapping. Here XYZ is a staging table from which I am loading data into another table. Could you kindly tell me where can the mapping go wrong.

                            Thanks n Regards,
                            Priya.
                            • 11. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                              558993
                              Hi,

                              What are u going to do with the foreign key? A mapping is independent of the foreign key. it more of a logic that u need to worry to create a mapping. All the constraints will be done at the DB level...

                              r u sure that all the tables/view/seq etc that u have used in the mapping are available in the database and r valid?looks like u have referred to some object which is either not valid or of invalid definition...check which object is having a problem and correct it at the database. The import it again and use it in the maooing. That should solve it.

                              Regards
                              Bharath
                              • 12. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                                650184
                                Hari, dont know why you advocate using DB all the time in which case OWB is useless.

                                Op,
                                You can use and force tthe constraints to be used using the mapping properties and specify whether you want to compare by ALL constraints or NONE.

                                Secondly on the error , i think it is mroe to do with privilages, are you using some seuqence of views in your mapping which does not have grants to owb user, if so then please give those grants and it should work.
                                • 13. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                                  558993
                                  Hi,

                                  I have been using OWB for th past 2.5+ years and i have had many issues with implementing real DB stuff with OWB. Tables,constraints,views etc....i have tried all of them and some where or thr pther i found a bug which led to other complications. The bugs may have been closed in the next versions but i would rather rely on the DB to do real DB stuff rather than OWB....

                                  For the issue the loading can be done in with the required contraint but all i am saying is create the table and contraint at the database and use it in OWB rather than use OWB to create the tables and constraints....

                                  I initially taught of it as a previledge issue only but she did mention in another thread saying 2 of her mappings which are similar are running successfully...thats the reason i asked her to check the objects at the DB....

                                  Regards
                                  Bharath
                                  • 14. Re: "ORA-06508: PL/SQL: could not find program unit being called"
                                    650184
                                    All,
                                    Please dont take this approach as this does not help.this is mis-use of OWB and its functionality and i strongly DO NOT RECOMMEND THIS APPROACH.

                                    Hari,
                                    Please dont pass your mis-conceptions to others .Seems like you dont know how to use OWB features and hence you are relying on DB, i have worked on OWb for more than 5 years and on Oracle DB for more than 12 years and these are poles apart from each other. They are used for different purposes so dont mix them up.

                                    Oracle DB works on different principles and OWB works on different if you try to find synergy and replicate the DB stuff in OWB then no point in using OWB you might as well use DB all the time.