Opened 14 years ago

Closed 14 years ago

#264 closed defect (fixed)

SQL Error

Reported by: osjonathan Owned by: geonetwork-devel@…
Priority: major Milestone: v2.6.0 RC2
Component: General Version: v2.6.0
Keywords: Cc:

Description

I tried to delete the "sample" group from 2.6.0RC0. The page gave me the following error:

SQLException : ORA-02292: integrity constraint (GEONETWORK.SYS_C003369) violated - child record found

The console contains this error:

2010-08-02 09:13:17,451 ERROR [jeeves.service] - Exception when executing service 2010-08-02 09:13:17,451 ERROR [jeeves.service] - (C) Exc : java.sql.SQLException: ORA-02292: integrity constraint (GEONETWORK.SYS_C003 369) violated - child record found

2010-08-02 09:13:17,451 DEBUG [jeeves.service] - Raised exception while executing service <error id="error">

<message>ORA-02292: integrity constraint (GEONETWORK.SYS_C003369) violated - child record found</message> <class>SQLException</class> <stack>

<at class="oracle.jdbc.driver.DatabaseError" file="DatabaseError.java" line="112" method="throwSqlException" /> <at class="oracle.jdbc.driver.T4CTTIoer" file="T4CTTIoer.java" line="331" method="processError" /> <at class="oracle.jdbc.driver.T4CTTIoer" file="T4CTTIoer.java" line="288" method="processError" /> <at class="oracle.jdbc.driver.T4C8Oall" file="T4C8Oall.java" line="745" method="receive" /> <at class="oracle.jdbc.driver.T4CPreparedStatement" file="T4CPreparedStatement.java" line="216" method="doOall8" /> <at class="oracle.jdbc.driver.T4CPreparedStatement" file="T4CPreparedStatement.java" line="966" method="executeForRows" /> <at class="oracle.jdbc.driver.OracleStatement" file="OracleStatement.java" line="1170" method="doExecuteWithTimeout" /> <at class="oracle.jdbc.driver.OraclePreparedStatement" file="OraclePreparedStatement.java" line="3339" method="executeInternal" /> <at class="oracle.jdbc.driver.OraclePreparedStatement" file="OraclePreparedStatement.java" line="3423" method="executeUpdate" /> <at class="jeeves.resources.dbms.Dbms" file="Dbms.java" line="263" method="execute" />

</stack> <request>

<language>en</language> <service>group.remove</service>

</request>

</error>

Database is Oracle 10.2.0.4. My guess is because something in the database is still using the "sample" group (a template). If that's the case GeoNetwork should either give a "something is in this group" error, or should re-assign things using that group to no group.

Change History (2)

comment:1 by ticheler, 14 years ago

Milestone: v2.6.0 RC0v2.6.0 RC2

comment:2 by josegar74, 14 years ago

Resolution: fixed
Status: newclosed

Probably caused because some metadata records should be owned by sample group. Set no group owner automatically seem not a good option to be done by GeoNetwork.

Use Transfer Ownership to transfer the metadata ownership from sample group to another group, later can be possible delete the sample group without errors

Note: See TracTickets for help on using tickets.