def _initialize_tables(self): replication_factor = 3 # just need the local instance if self.locality == 0: replication_factor = 1 try: self.datalayer.createKeyspace(self.keyspace, Metadata(replicationFactor=replication_factor), self.locality) self.datalayer.createTable(self.keyspace, self.tablename, Metadata(tableType="default"), self.locality) self.datalayer.createMapTable(self.keyspace, self.maptablename, self.locality) self.datalayer.createSetTable(self.keyspace, self.settablename, self.locality) self.datalayer.createCounterTable(self.keyspace, self.countertablename, Metadata(tableType="counters"), self.locality) self.datalayer.createTable(self.keyspace, self.triggersinfotablename, Metadata(tableType="default"), self.locality) self.datalayer.createCounterTable(self.keyspace, self.countertriggerstable, Metadata(tableType="mfn_counter_trigger"), self.locality) self.datalayer.createTable(self.keyspace, self.countertriggersinfotable, Metadata(tableType="default"), self.locality) except Thrift.TException as exc: print("Could not initialize tables: " + str(exc)) raise
def createTriggerableTable(self, tableName): #print("[DataLayerClient] createTriggerableTable " + tableName + ", keyspace: " + self.keyspace) status = False for retry in range(MAX_RETRIES): try: status = self.datalayer.createTable(self.keyspace, tableName, Metadata(tableType="triggers"), self.locality) break except TTransport.TTransportException as exc: self.connect() except Exception as exc: print("[DataLayerClient] failed createTable: " + str(exc)) raise return status