Beginn der ÄnderungFileNet P8 Content Engine, FileNet P8 Content Search Engine, Version 5.0.+   Datenbank:  Oracle          

Oracle-Datentyp DATE in den Datentyp TIMESTAMP konvertieren

Wenn Ihre Content Engine-Daten, für die Sie das Upgrade durchgeführt haben, Oracle-basierte Daten sind, werden beim automatischen Upgrade auf Version 5.0.0 die Content Engine-Eigenschaftsspalten DateTime vom Oracle-Datentyp DATE in den Oracle-Datentyp TIMESTAMP konvertiert. Bei einem funktionsbasierten Index mit einbezogenem Datentyp DATE kann diese Konvertierung während des automatischen Upgrades allerdings nicht vorgenommen werden. In diesem Fall müssen Sie den Index löschen, den Datentyp DATE manuell in den Datentyp TIMESTAMP konvertieren und anschließend den Originalindex in der Oracle-Datenbank neu erstellen.

Versionen von Oracle-basierten Content Engine-Daten vor 5.0.0 verwenden die Oracle-Eigenschaft DATE für die Content Engine-Eigenschaft DateTime. Ab Version 5.0.0 wird die Oracle-Eigenschaft DATE durch die Eigenschaft TIMESTAMP ersetzt.

Beim automatischen Upgrade von Content Engine-Daten der Version 5.0.0 werden durch die Eigenschaft DATE definierte Tabellenspalten automatisch in die Eigenschaft TIMESTAMP konvertiert, auch wenn ein Index mit der Eigenschaft DATE vorhanden ist. Diese Konvertierung schlägt allerdings für funktionsbasierte Indizes fehl, wie z. B. beim Schlüsselwort DESC (absteigend), das die Eigenschaft DATE verwendet.

Da eine Auflösung dieses Konvertierungsfehlers innerhalb des automatischen Upgrades nicht durchführbar ist, können Spalten des Typs DATE mit funktionsbasierten Indizes nur manuell in Spalten des Typs TIMESTAMP konvertiert werden.

Trifft eine der folgenden Bedingungen zu, muss Ihr Datenbankadministrator diese Prozedur manuell ausführen:

Durch eine Prüfung der P8-Systemfehlerprotokolle auf Fehler bei der Datentypkonvertierung können Sie feststellen, ob eine manuelle Konvertierung erforderlich ist. Unabhängig von den Bedingungen empfiehlt es sich, die Protokolle nach Abschluss des automatischen Updates zu überprüfen. Das folgende Beispiel zeigt eine Nachricht aus dem P8-Systemfehlerprotokoll, die darauf hinweist, dass eine manuelle Konvertierung erforderlich ist:

"2010-07-13T00:29:43.787Z 68416841 ENG  FNRCE0000E - ERROR ObjectStoreUpgrade
(DaphneStore) Date to Timestamp column conversion failed for column modify_date on 
table DocVersion. The most likely reason is oracle error 30556: functional index is 
defined on the column to be modified, in which case DBA should manually drop index, 
convert date column to timestamp and recreate index."

So konvertieren Sie den Datentyp DATE manuell in den Datentyp TIMESTAMP:

  1. Sofern noch nicht geschehen, entfernen Sie die Fehlerumgehung mit dem JVM-Switch 'V8Compatibility'. Falls Ihr System Oracle 11g verwendet und Sie für die Fehlerumgehung ein Rollback auf den Oracle 10g JDBC-Treiber durchführen mussten, entfernen Sie auch diese Fehlerumgehung, bei der ein Downgrade des JDBC-Treibers durchgeführt wurde. Anweisung hierzu finden Sie im technischen Hinweis Enabling Oracle Date Index Use in the FileNet Content Engine.
  2. Führen Sie die folgenden SQL-Befehle aus, um den Datentyp DATE in der Tabelle 'Event' in den Datentyp TIMESTAMP zu konvertieren: Beachten Sie dabei, dass eine Indexerstellung lange dauern kann, wenn sich in der Ereignistabelle 'Event' mehrere Millionen Einträge befinden.
    DROP INDEX I_Event48
    ALTER TABLE Event MODIFY create_date TIMESTAMP
    CREATE INDEX I_Event48 ON Event (source_object_id, create_date DESC) 
  3. Führen Sie zum Konvertieren von kundendefinierten Tabellenspalten des Datentyps DATE in den Datentyp TIMESTAMP die folgenden SQL-Befehle für jeden funktionsbasierten Index aus: Beachten Sie dabei, dass eine Indexerstellung lange dauern kann, wenn sich in der Tabelle mit dem Datentyp DATE mehrere Millionen Einträge befinden.
    DROP INDEX <Indexname>
    ALTER TABLE <Tabellenname> MODIFY <Spaltenname> TIMESTAMP
    CREATE INDEX <Indexname> ON <Tabellenname>(<Spaltennamen> <Modifikatoren>)


Feedback

Letzte Aktualisierung: November 2010


© Copyright IBM Corp. 2010.
Dieses Information Center basiert auf Eclipse-Technologie. (http://www.eclipse.org)
Ende der Änderung