alaa_wmde added a comment.

  Reading the documentation of the constants in core Defines.php they don't 
match the previously explained process to me.
  
    /**@{
     * Schema change migration flags.
     *
     * Used as values of a feature flag for an orderly transition from an old
     * schema to a new schema. The numeric values of these constants are 
compatible with the
     * SCHEMA_COMPAT_XXX bitfield semantics. High bits are used to ensure that 
the numeric
     * ordering follows the order in which the migration stages should be used.
     *
     * - MIGRATION_OLD: Only read and write the old schema. The new schema need 
not
     *   even exist. This is used from when the patch is merged until the schema
     *   change is actually applied to the database.
     * - MIGRATION_WRITE_BOTH: Write both the old and new schema. Read the new
     *   schema preferentially, falling back to the old. This is used while the
     *   change is being tested, allowing easy roll-back to the old schema.
     * - MIGRATION_WRITE_NEW: Write only the new schema. Read the new schema
     *   preferentially, falling back to the old. This is used while running the
     *   maintenance script to migrate existing entries in the old schema to the
     *   new schema.
     * - MIGRATION_NEW: Only read and write the new schema. The old schema (and 
the
     *   feature flag) may now be removed.
     */
    define( 'MIGRATION_OLD', 0x00000000 | SCHEMA_COMPAT_OLD );
    define( 'MIGRATION_WRITE_BOTH', 0x10000000 | SCHEMA_COMPAT_READ_BOTH | 
SCHEMA_COMPAT_WRITE_BOTH );
    define( 'MIGRATION_WRITE_NEW', 0x20000000 | SCHEMA_COMPAT_READ_BOTH | 
SCHEMA_COMPAT_WRITE_NEW );
    define( 'MIGRATION_NEW', 0x30000000 | SCHEMA_COMPAT_NEW );
  
  As far as I have learned, we follow this process:
  write/read old -> write both, read old -> write both, read new -> write/read 
new
  
  So either we have different migraiton processes, and we are using a different 
one, that is:
  write/read old => write both, read old and fallback to new, write both, read 
new and fallback to old, write/read new.
  
  Or I learned completely wrong.
  
  So currently the implementation we have does the following:
  on MIGRATION_OLD' => write/read old
  on MIGRATION_WRITE_BOTH => write both, read old
  on MIGRATION_WRITE_NEW' => write both, read new
  on MIGRATION_NEW => write/read new

TASK DETAIL
  https://phabricator.wikimedia.org/T225053

EMAIL PREFERENCES
  https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: alaa_wmde
Cc: hoo, Lucas_Werkmeister_WMDE, Ladsgroup, Aklapper, alaa_wmde, Daryl-TTMG, 
RomaAmorRoma, 0010318400, E.S.A-Sheild, darthmon_wmde, joker88john, CucyNoiD, 
Nandana, NebulousIris, Gaboe420, Versusxo, Majesticalreaper22, Giuliamocci, 
Adrian1985, Cpaulf30, Lahi, Gq86, Baloch007, Darkminds3113, Bsandipan, Lordiis, 
GoranSMilovanovic, Adik2382, Th3d3v1ls, Ramalepe, Liugev6, QZanden, 
LawExplorer, WSH1906, Lewizho99, Maathavan, _jensen, rosalieper, Jonas, 
Wikidata-bugs, aude, Lydia_Pintscher, Mbch331
_______________________________________________
Wikidata-bugs mailing list
Wikidata-bugs@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs

Reply via email to