Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-19338

Database Check Failed after upgrading from Ez Publish 4.6 > 4.7 rc1 with Oracle

    XMLWordPrintable

Details

    Description

      After making a clean installation of eZ Publish 4.6, with Oracle, and upgrading to eZ Publish 4.7 rc1 I get the following in the Database Consistency Check:

      The database is not consistent with the distribution database.

      To synchronize your database with the distribution setup, run the following SQL commands:

      ALTER TABLE ezcontentclass_attribute MODIFY (data_float1 DOUBLE PRECISION);
      ALTER TABLE ezcontentclass_attribute MODIFY (data_float2 DOUBLE PRECISION);
      ALTER TABLE ezcontentclass_attribute MODIFY (data_float3 DOUBLE PRECISION);
      ALTER TABLE ezcontentclass_attribute MODIFY (data_float4 DOUBLE PRECISION);
      ALTER TABLE ezcontentobject_attribute MODIFY (data_float DOUBLE PRECISION);
      ALTER TABLE ezpending_actions ADD id INTEGER NOT NULL;
      ALTER TABLE ezpending_actions ADD PRIMARY KEY ( id );
      ALTER TABLE ezx_ezpnet_module_branch ADD branch_id INTEGER DEFAULT 0 NOT NULL;

      CREATE TABLE ezstarrating (
      contentobject_attribute_id INTEGER DEFAULT 0 NOT NULL,
      contentobject_id INTEGER DEFAULT 0 NOT NULL,
      rating_average FLOAT DEFAULT 0 NOT NULL,
      rating_count INTEGER DEFAULT 0 NOT NULL,
      PRIMARY KEY ( contentobject_id, contentobject_attribute_id )
      );

      CREATE SEQUENCE s_starrating_data;

      CREATE TABLE ezstarrating_data (
      contentobject_attribute_id INTEGER DEFAULT 0 NOT NULL,
      contentobject_id INTEGER DEFAULT 0 NOT NULL,
      created_at INTEGER DEFAULT 0 NOT NULL,
      id INTEGER NOT NULL,
      rating FLOAT DEFAULT 0 NOT NULL,
      session_key VARCHAR2(32) NOT NULL,
      user_id INTEGER DEFAULT 0 NOT NULL,
      PRIMARY KEY ( id )
      );

      CREATE OR REPLACE TRIGGER ezstarrating_data_id_tr
      BEFORE INSERT ON ezstarrating_data FOR EACH ROW WHEN (new.id IS NULL)
      BEGIN
      SELECT s_starrating_data.nextval INTO :new.id FROM dual;
      END;
      /

      CREATE INDEX contentobject_id_co_attr_id ON ezstarrating_data ( contentobject_id, contentobject_attribute_id );

      CREATE INDEX user_id_session_key ON ezstarrating_data ( user_id, session_key );

      CREATE TABLE ezgmaplocation (
      address VARCHAR2(150),
      contentobject_attribute_id INTEGER DEFAULT 0 NOT NULL,
      contentobject_version INTEGER DEFAULT 0 NOT NULL,
      latitude FLOAT DEFAULT 0 NOT NULL,
      longitude FLOAT DEFAULT 0 NOT NULL,
      PRIMARY KEY ( contentobject_attribute_id, contentobject_version )
      );

      CREATE INDEX latitude_longitude_key ON ezgmaplocation ( latitude, longitude );

      CREATE TABLE ezm_block (
      block_type VARCHAR2(255),
      fetch_params CLOB,
      id CHAR(32) NOT NULL,
      is_removed INTEGER DEFAULT 0,
      last_update INTEGER DEFAULT 0,
      name VARCHAR2(255),
      node_id INTEGER DEFAULT 0 NOT NULL,
      overflow_id CHAR(32),
      rotation_interval INTEGER,
      rotation_type INTEGER,
      zone_id CHAR(32) NOT NULL,
      PRIMARY KEY ( id )
      );

      CREATE INDEX ezm_block__is_removed ON ezm_block ( is_removed );

      CREATE INDEX ezm_block__node_id ON ezm_block ( node_id );

      CREATE TABLE ezm_pool (
      block_id CHAR(32) NOT NULL,
      moved_to CHAR(32),
      node_id INTEGER DEFAULT 0 NOT NULL,
      object_id INTEGER DEFAULT 0 NOT NULL,
      priority INTEGER DEFAULT 0,
      rotation_until INTEGER DEFAULT 0,
      ts_hidden INTEGER DEFAULT 0,
      ts_publication INTEGER DEFAULT 0,
      ts_visible INTEGER DEFAULT 0,
      PRIMARY KEY ( block_id, object_id )
      );

      CREATE INDEX ezm_pool_block_id_ts_hidden ON ezm_pool ( block_id, ts_hidden );

      CREATE INDEX ezm_pool_block_id_ts_visible ON ezm_pool ( block_id, ts_visible );

      CREATE INDEX ezm_pool_block_id_ts_publ_prio ON ezm_pool ( block_id, ts_publication, priority );

      Steps to reproduce
      1. Make a clean installation of Ez Publish 4.6
      2. Activate the EzOracle extension, by adding ActiveExtensions[]=ezoracle in site.ini.append.php
      3. Run ./extension/ezoracle/bin/shell/ora-initialize.sh
      4. Add to site.ini.append.php
      
      ##################################
      [DatabaseSettings]
      DatabaseImplementation=ezoracle
      User=<user>
      Password=<password>
      Database=<instance>
      ##################################
      
      
      5. Register in Service Portal
      6. Run Sync_Network cronjob
      7. Run Monitor cronjob
      8. Upgrade to eZ Publish 4.7 rc1
      9. Run Sync_Network cronjob 
      10. Run Monitor cronjob
      11. Make a Database Consistency Check
      
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            pedro.resende pedro.resende
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: