<commit_before>/**
 * This file is part of the "libfnord" project
 *   Copyright (c) 2015 <NAME>
 *
 * FnordMetric is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License v3.0. You should have received a
 * copy of the GNU General Public License along with this program. If not, see
 * <http://www.gnu.org/licenses/>.
 */
package zbase;

enum TablePartitionerType {
  TBL_PARTITION_TIMEWINDOW = 0;
  TBL_PARTITION_FIXED = 1;
};

enum TableStorage {
  TBL_STORAGE_LOG = 0;
  TBL_STORAGE_STATIC = 2;
  //TBL_STORAGE_BTREE = 3;
};

message TableConfig {

  /**
   * The schema for this table
   */
  required bytes schema = 1;

  /**
   * The partitioner for this table
   */
  required TablePartitionerType partitioner = 2;

  /**
   * What kind of data is stored in this table?
   */
  required TableStorage storage = 3;

  /**
   * The maximum sstable size in bytes
   */
  optional uint64 sstable_size = 5 [default = 536870912];

  /**
   * The number of shards for this table
   */
  optional uint64 num_shards = 7;

  /**
   * How often should we re-build the cstable indexes if the partition has
   * changed in microseconds (this is basically a rate-limit for the
   * CSTableIndex subprocess)
   */
  optional uint64 cstable_build_interval = 9 [default = 10000000];

  optional TimeWindowPartitionerConfig time_window_partitioner_config = 8;

};

message TimeWindowPartitionerConfig {

  /**
   * The partition size in microseconds
   */
  required uint64 partition_size = 1;

};

message TableDefinition {

  required string customer = 1;

  required string table_name = 2;

  optional uint64 version = 3;

  required TableConfig config = 4;

};

message TableDefinitionList {

  repeated TableDefinition tables = 1;

  optional uint64 version = 2;

};
<commit_msg>added next_field_id to table definition<commit_after>/**
 * This file is part of the "libfnord" project
 *   Copyright (c) 2015 <NAME>
 *
 * FnordMetric is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License v3.0. You should have received a
 * copy of the GNU General Public License along with this program. If not, see
 * <http://www.gnu.org/licenses/>.
 */
package zbase;

enum TablePartitionerType {
  TBL_PARTITION_TIMEWINDOW = 0;
  TBL_PARTITION_FIXED = 1;
};

enum TableStorage {
  TBL_STORAGE_LOG = 0;
  TBL_STORAGE_STATIC = 2;
  //TBL_STORAGE_BTREE = 3;
};

message TableConfig {

  /**
   * The schema for this table
   */
  required bytes schema = 1;

  /**
   * The partitioner for this table
   */
  required TablePartitionerType partitioner = 2;

  /**
   * What kind of data is stored in this table?
   */
  required TableStorage storage = 3;

  /**
   * The maximum sstable size in bytes
   */
  optional uint64 sstable_size = 5 [default = 536870912];

  /**
   * The number of shards for this table
   */
  optional uint64 num_shards = 7;

  /**
   * How often should we re-build the cstable indexes if the partition has
   * changed in microseconds (this is basically a rate-limit for the
   * CSTableIndex subprocess)
   */
  optional uint64 cstable_build_interval = 9 [default = 10000000];

  optional TimeWindowPartitionerConfig time_window_partitioner_config = 8;

};

message TimeWindowPartitionerConfig {

  /**
   * The partition size in microseconds
   */
  required uint64 partition_size = 1;

};

message TableDefinition {

  required string customer = 1;

  required string table_name = 2;

  optional uint64 version = 3;

  required TableConfig config = 4;

  optional uint64 next_field_id = 5;
};

message TableDefinitionList {

  repeated TableDefinition tables = 1;

  optional uint64 version = 2;

};

{'fraction_non_alphanumeric': 0.08174240387200861, 'fraction_numerical': 0.029846732992739985, 'mean_word_length': 3.2857142857142856, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 2, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2469415', 'n_tokens_mistral': 1244, 'n_tokens_neox': 1124, 'n_words': 406}