MCPcopy Index your code
hub / github.com/apache/cassandra-python-driver / SchemaParserV4

Class SchemaParserV4

cassandra/metadata.py:2759–2895  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2757
2758
2759class SchemaParserV4(SchemaParserV3):
2760
2761 recognized_table_options = (
2762 'additional_write_policy',
2763 'bloom_filter_fp_chance',
2764 'caching',
2765 'cdc',
2766 'comment',
2767 'compaction',
2768 'compression',
2769 'crc_check_chance',
2770 'default_time_to_live',
2771 'gc_grace_seconds',
2772 'max_index_interval',
2773 'memtable_flush_period_in_ms',
2774 'min_index_interval',
2775 'read_repair',
2776 'speculative_retry')
2777
2778 _SELECT_VIRTUAL_KEYSPACES = 'SELECT * from system_virtual_schema.keyspaces'
2779 _SELECT_VIRTUAL_TABLES = 'SELECT * from system_virtual_schema.tables'
2780 _SELECT_VIRTUAL_COLUMNS = 'SELECT * from system_virtual_schema.columns'
2781
2782 def __init__(self, connection, timeout):
2783 super(SchemaParserV4, self).__init__(connection, timeout)
2784 self.virtual_keyspaces_rows = defaultdict(list)
2785 self.virtual_tables_rows = defaultdict(list)
2786 self.virtual_columns_rows = defaultdict(lambda: defaultdict(list))
2787
2788 def _query_all(self):
2789 cl = ConsistencyLevel.ONE
2790 # todo: this duplicates V3; we should find a way for _query_all methods
2791 # to extend each other.
2792 queries = [
2793 # copied from V3
2794 QueryMessage(query=self._SELECT_KEYSPACES, consistency_level=cl),
2795 QueryMessage(query=self._SELECT_TABLES, consistency_level=cl),
2796 QueryMessage(query=self._SELECT_COLUMNS, consistency_level=cl),
2797 QueryMessage(query=self._SELECT_TYPES, consistency_level=cl),
2798 QueryMessage(query=self._SELECT_FUNCTIONS, consistency_level=cl),
2799 QueryMessage(query=self._SELECT_AGGREGATES, consistency_level=cl),
2800 QueryMessage(query=self._SELECT_TRIGGERS, consistency_level=cl),
2801 QueryMessage(query=self._SELECT_INDEXES, consistency_level=cl),
2802 QueryMessage(query=self._SELECT_VIEWS, consistency_level=cl),
2803 # V4-only queries
2804 QueryMessage(query=self._SELECT_VIRTUAL_KEYSPACES, consistency_level=cl),
2805 QueryMessage(query=self._SELECT_VIRTUAL_TABLES, consistency_level=cl),
2806 QueryMessage(query=self._SELECT_VIRTUAL_COLUMNS, consistency_level=cl)
2807 ]
2808
2809 responses = self.connection.wait_for_responses(
2810 *queries, timeout=self.timeout, fail_on_error=False)
2811 (
2812 # copied from V3
2813 (ks_success, ks_result),
2814 (table_success, table_result),
2815 (col_success, col_result),
2816 (types_success, types_result),

Callers 1

get_schema_parserFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected