anchor.diff:           parse_validate_eviction_policy(Params, BucketConfig, IsNew),
            quota_size_error(CommonParams, membase, IsNew, BucketConfig),
            get_storage_mode(Params, BucketConfig, IsNew),
  -         parse_validate_max_ttl(Params, BucketConfig, IsNew)
  +         parse_validate_max_ttl(Params, BucketConfig, IsNew),
  +         parse_validate_compression_mode(Params, BucketConfig, IsNew)
            | validate_bucket_auto_compaction_settings(Params)],
   
       validate_bucket_purge_interval(Params, BucketConfig, IsNew) ++
  
positive.code: parse_validate_replica_index("0") -> {ok, replica_index, false};
  parse_validate_replica_index("1") -> {ok, replica_index, true};
  parse_validate_replica_index(_ReplicaValue) -> {error, replicaIndex, <<"replicaIndex can only be 1 or 0">>}.
  
  parse_validate_max_ttl(Params, BucketConfig, IsNew) ->
      CanParse = cluster_compat_mode:is_enterprise() andalso cluster_compat_mode:is_cluster_vulcan(),
  
negative.code: 
      Suffix6 = case cluster_compat_mode:is_cluster_vulcan() of
                    true ->
                        CompMode = proplists:get_value(compression_mode, BucketConfig),
                        [{maxTTL, proplists:get_value(max_ttl, BucketConfig)},
                         {compressionMode, list_to_binary(CompMode)} | Suffix5];
                    false ->
                        Suffix5
                end,
  