• Tom Lane's avatar
    Fix citext upgrade script for disallowance of oidvector element assignment. · 7f7eec89
    Tom Lane authored
    In commit 45e02e32, we intentionally
    disallowed updates on individual elements of oidvector columns.  While that
    still seems like a sane idea in the abstract, we (I) forgot that citext's
    "upgrade from unpackaged" script did in fact perform exactly such updates,
    in order to fix the problem that citext indexes should have a collation
    but would not in databases dumped or upgraded from pre-9.1 installations.
    
    Even if we wanted to add casts to allow such updates, there's no practical
    way to do so in the back branches, so the only real alternative is to make
    citext's kluge even klugier.  In this patch, I cast the oidvector to text,
    fix its contents with regexp_replace, and cast back to oidvector.  (Ugh!)
    
    Since the aforementioned commit went into all active branches, we have to
    fix this in all branches that contain the now-broken update script.
    
    Per report from Eric Malm.
    7f7eec89
citext--unpackaged--1.0.sql 9.55 KB