• J
    Fix gp_default_storage_options GUC master/segment value conflict. · b11fc6d5
    Jimmy Yih 提交于
    The gp_default_storage_options GUC had two scenarios in which the value between
    master and segments could be conflicting which would cause tables to possibly
    have different storage parameters between master and segments.
    
    First Scenario:
    The below gpconfig example would give newly created user tables a default storage
    parameter of AO on segments while master sets the table as heap. Fixed by not
    allowing the user to make them different values.
    gpconfig -c gp_default_storage_options -v "'appendonly=true'" -m "'appendonly=false'"
    
    Second Scenario:
    During a psql session not in transaction, a session-level gp_default_storage_options
    GUC value can be set which will also be dispatched to segment processes. Those
    segment processes when idle for a period of time will be stopped and the next SQL
    (e.g. CREATE TABLE) will spawn new segment processes which will not have the
    session-level GUC value set. Fixed by setting the value at cdbgang creation.
    b11fc6d5
guc_gp.c 174.0 KB