【问题标题】:caching options with deprecated syntax不推荐使用语法的缓存选项
【发布时间】:2017-03-27 18:09:27
【问题描述】:

我们看到这样的警告:

WARN  [SharedPool-Worker-3] 2017-03-23 11:57:06,054 CFPropDefs.java:172 - Setting caching options with deprecated syntax.

当像这样创建 CF 时:

CREATE TABLE "CF_ConversationIndex" (
  key blob,
  column1 blob,
  column2 timeuuid,
  column3 blob,
  value blob,
  PRIMARY KEY (key, column1, column2, column3) ) WITH COMPACT STORAGE
  AND CLUSTERING ORDER BY (column1 ASC, column2 ASC, column3 ASC)
  AND bloom_filter_fp_chance = 0.01
  AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
  AND comment = 'Maintain the conversationID/ThreadID.'
  AND compaction = {'min_threshold': '4', 'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy',
                    'max_threshold': '32'}
  AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.SnappyCompressor'}
  AND dclocal_read_repair_chance = 0.1
  AND default_time_to_live = 0
  AND gc_grace_seconds = 1036800
  AND max_index_interval = 2048
  AND memtable_flush_period_in_ms = 0
  AND min_index_interval = 128
  AND read_repair_chance = 0.0
  AND speculative_retry = 'NONE';

在 C* 2.1.17 集群上,根据CQL 3.1 for C* 2.1,缓存选项看起来不错

【问题讨论】:

    标签: cassandra cassandra-2.1


    【解决方案1】:

    在缓存选项中,删除单引号并将双引号更改为单引号

    AND caching = {'keys':'ALL', 'rows_per_partition':'NONE'}
    

    【讨论】:

      【解决方案2】:

      尝试在没有“ ' ”的情况下执行它:

      AND caching = {"keys":"ALL", "rows_per_partition":"NONE"}
      

      也许这对错误消息有所了解,语法看起来不错:

      public CachingOptions getCachingOptions() throws SyntaxException, ConfigurationException
      {
          CachingOptions options = null;
          Object val = properties.get(KW_CACHING);
          if (val == null)
              return null;
          else if (val instanceof Map)
              options = CachingOptions.fromMap(getMap(KW_CACHING));
          else if (val instanceof String) // legacy syntax
          {
              options = CachingOptions.fromString(getSimple(KW_CACHING));
              logger.warn("Setting caching options with deprecated syntax.");
          }
          return options;
      }
      

      缓存文档的链接: http://apiwave.com/java/snippets/addition/org.apache.cassandra.cache.CachingOptions

      【讨论】:

      • 谢谢,似乎 CQL:描述模式/表仍然显示旧语法(正确地应该更改为映射而不是字符串;)
      猜你喜欢
      • 1970-01-01
      • 2011-07-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-26
      • 2018-09-11
      • 1970-01-01
      • 2017-06-07
      • 1970-01-01
      相关资源
      最近更新 更多