1 Reply Latest reply: Sep 2, 2012 9:12 AM by Cjmurray-Oracle RSS

    11gR2 documentation errors for dbms_parallel_executed

      I searched the forum for "dbms_parallel_execute" and did not get any hits before posting. The results page asked if I meant "bums_parallel_execute" which AFAIK not exist. I often find the automated search suggestion results amusing, in this case suggesting (incorrectly) that Oracle codes special versions of their packages for migrant workers (consultants?) to use
      Oracle® Database PL/SQL Packages and Types Reference
      11g Release 2 (11.2)
      Part Number E25788-04
      The first item is a typo in the examples. Typically the line
        l_sql_stmt := 'update /*+ ROWID (dda) */ EMPLOYEES e 
            SET e.salary = e.salary + 10
            WHERE rowid BETWEEN :start_id AND :end_id';
      with the ROWID hint (which may be unnecessary) incorrectly specified. ROWID accepts one argument, a table/alias name, which is not specified in the SQL. In the one I copied above "dda" should be "e". This or something like it occurs in each of the three examples of using DBMS_PARALLEL_EXECUTE

      The second item is another typo in the arguments defined for the GET_ROWID_CHUNK procedure
         task_name       IN VARCHAR2,
         chunk_id        OUT NUMBER,
         start_rowid     OUT ROWID,      
         end_id          OUT ROWID,
         any_rows        OUT BOOLEAN);
      The "end_id" argument is "end_rowid" in the database on my laptop

      The third items is that the PL/SQL block for the third example to use DBMS_PARALLEL_EXECUTE in a user-defined framework is cut off. It ends with and END LOOP without an END for the block, also missing the line to drop the task.

      Edited by: riedelme on Aug 31, 2012 7:12 AM