7 Replies Latest reply: Jan 2, 2013 3:23 AM by Filip Gh RSS

    Oracle Portal item cannot be deleted using dav (Bad File Descriptor)

    Filip Gh
      I cannot delete an Oracle Portal item with webdav. I get an error 500 and the item is not deleted.
      When this same user logs in as portal user with a browser, the item kan be deleted.
      So the user permissions are probably not the problem.

      What can be the problem?
      How do I have to solve this?

      <h1>Info found in log files</h1>
      <h2>C:\OraHome_2\webcache\logs</h2>
      Here I find an access.log file, but this one does not seem to contain anything useful.
      <h2>C:\OraHome_2\Apache\Apache\logs\</h2>
      Here I find two recent log files:
      <h3>access_log.1340236800</h3>
      HTTP/1.1" 207 3215
      192.168.6.57 - - [21/Jun/2012:09:28:53 +0200] "DELETE /dav_portal/portal/Bibnet/Open_Vlacc_regelgeving/Werkgroepen/vlacc_wgCAT/fgtest.txt HTTP/1.1" 500 431

      <h3>error_log.1340236800</h3>
      [Thu Jun 21 09:28:53 2012] [error] [client 192.168.6.57] [ecid: 3781906711623,1] Could not DELETE /dav_portal/portal/Bibnet/Open_Vlacc_regelgeving/Werkgroepen/vlacc_wgCAT/fgtest.txt. [500, #0] [mod_dav.c line 2008]
      [Thu Jun 21 09:28:53 2012] [error] [client 192.168.6.57] [ecid: 3781906711623,1] (9)Bad file descriptor: Delete unsuccessful. [500, #0] [dav_ora_repos.c line 8913]

      In the error log, you also often find back message :
      [Thu Jun 21 10:33:02 2012] [notice] [client 192.168.6.57] [ecid: 3421133404379,1] ORA-20504: User not authorized to perform the requested operation
      This has probably nothing to do with it, you also have this message when the delete is successful.




      <h1>Versions I have used</h1>
      Dav client: I have tried with clients "Oracle Drive 10.2.0.0.27 Patch" and Cyberduck 4.2.1
      Oracle Portal 10.1.4
      In the errorX.log file, I find back these lines too:
      [Thu Jun 21 09:53:17 2012] [notice] [client 192.168.6.57] [ecid: 4348843884218,1] OraDAV: Initializing OraDAV Portal Driver (1.0.3.2.3-0030) using API version 2.00
      [Thu Jun 21 09:53:17 2012] [notice] [client 192.168.6.57] [ecid: 4348843884218,1] OraDAV: oradav_driver_info Name=interMedia Version=2.3
        • 1. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
          Filip Gh
          I give here some related errors
          <h1>In the alert log I find these every time I try to delete a file using dav</h1>

          Errors in file <b>c:\admin\vcob2\udump\vcob2_ora_1160.trc </b>:
          ORA-00603: ORACLE server session terminated by fatal error
          ORA-00034: cannot ROLLBACK in current PL/SQL session
          ORA-00034: cannot COMMIT in current PL/SQL session
          ORA-06512: at "SYS.DBMS_LOCK", line 250
          ORA-06512: at "CTXSYS.DRIOPT", line 91

          <h1>The trace file vcob2_ora_1160.trc contains this interesting error:</h1>

          sedmp: internal or fatal error
          ORA-00603: ORACLE server session terminated by fatal error
          ORA-00034: cannot ROLLBACK in current PL/SQL session
          ORA-00034: cannot COMMIT in current PL/SQL session
          ORA-06512: at "SYS.DBMS_LOCK", line 250
          ORA-06512: at "CTXSYS.DRIOPT", line 91
          Current SQL statement for this session:
          BEGIN ctxsys.drvdml.lock_opt_rebuild(:idxid, :idxpid, ctxsys.drvdml.s_mode, null, TRUE); INSERT INTO "PORTAL"."DR$WWSBR_THING_CTX_INDX$N" (NLT_DOCID,NLT_MARK) VALUES(:docid,'U'); END;
          ----- PL/SQL Call Stack -----
          object line object
          handle number name
          2633068C 91 package body CTXSYS.DRIOPT
          2633068C 112 package body CTXSYS.DRIOPT
          26331984 851 package body CTXSYS.DRVDML
          26332C4C 1 anonymous block
          2635C06C 43 CTXSYS.TEXTINDEXMETHODS
          2635C06C 649 CTXSYS.TEXTINDEXMETHODS
          29AD5538 6642 package body PORTAL.WWV_THINGDB
          29986DD8 2706 package body PORTAL.WWPOB_API_ITEM
          29AD5538 6319 package body PORTAL.WWV_THINGDB
          29986DD8 2403 package body PORTAL.WWPOB_API_ITEM
          298A2930 4927 package body PORTAL.WWSBR_API_DAV
          298A2930 5211 package body PORTAL.WWSBR_API_DAV
          298A55F4 4491 package body PORTAL.WWDAV_INTERNAL
          298AAB5C 2587 package body PORTAL.WWDAV_API_DRIVER
          263A930C 1 anonymous block
          • 2. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
            Erik Janssen-Oracle
            You may want to try a rebuild of the DAV tables in Oracle Portal. Before you do so, take a backup of the Portal repository database to ensure that you can revert back in case of disaster.

            Rebuilding the DAV tables is done with the following instructions :

            <li> Start SQL*PLUS and connect to the Portal metadata repository database as PORTAL user
            <li> Execute wwdav_loader.create_dav_content :
            SQL> exec wwdav_loader.create_dav_content();{code}
            
            Thanks,
            EJ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
            • 4. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
              Filip Gh
              Extra information:
              On2012-02-24, these patches were done:
              8202632 , 6880880, 13460967 , 10182209 (this one is for Portal)
              As a result, these two packages have been modified on that date 2012-02-24:
              PORTAL.WWDAV_INTERNAL PORTAL.WWDAV_API_DRIVER

              The problem has probably started since that upgrade.
              These two packages are mentioned in the trace file.
              • 5. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
                Filip Gh
                The error does not occur when you check "keep deleted items" in the page group.
                But this workaround is not always acceptable. We sometimes want to permanently delete an item.
                • 6. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
                  Erik Janssen-Oracle
                  Which version of the database do you use? There was an issue in the 11.2.01 database with the same symptoms :

                  >
                  sedmp: internal or fatal error
                  ORA-00603: ORACLE server session terminated by fatal error
                  ORA-00034: cannot ROLLBACK in current PL/SQL session
                  ORA-00034: cannot COMMIT in current PL/SQL session
                  ORA-06512: at "SYS.DBMS_LOCK", line 250
                  ORA-06512: at "CTXSYS.DRIOPT", line 91
                  Current SQL statement for this session:
                  BEGIN ctxsys.drvdml.lock_opt_rebuild(:idxid, :idxpid, ctxsys.drvdml.s_mode, null, TRUE); INSERT INTO "PORTAL"."DR$WWSBR_THING_CTX_INDX$N" (NLT_DOCID,NLT_MARK) VALUES(:docid,'U'); END;
                  >

                  The issue was fixed after applying the 11.2.0.2 patch set.

                  Thanks,
                  EJ
                  • 7. Re: Oracle Portal item cannot be deleted using dav (Bad File Descriptor)
                    Filip Gh
                    h1. See here the database version
                    select * from v$version;

                    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - Prod
                    PL/SQL Release 10.2.0.5.0 - Production
                    "CORE     10.2.0.5.0     Production"
                    TNS for 32-bit Windows: Version 10.2.0.5.0 - Production
                    NLSRTL Version 10.2.0.5.0 - Production