def get_params_for_vtgate_conn(vtgate_addrs, timeout, user=None, password=None): """Return a one-element (addr, timeout, user, password) params dict list.""" db_params_list = [] addrs = [] if isinstance(vtgate_addrs, dict): if 'vt' not in vtgate_addrs: raise ValueError( "required vtgate service addrs 'vt' does not exist") addrs = vtgate_addrs['vt'] random.shuffle(addrs) elif isinstance(vtgate_addrs, list): random.shuffle(vtgate_addrs) addrs = vtgate_addrs else: raise dbexceptions.Error('Wrong type for vtgate addrs %s' % vtgate_addrs) for addr in addrs: vt_params = dict() vt_params['addr'] = addr vt_params['timeout'] = timeout vt_params['user'] = user vt_params['password'] = password db_params_list.append(vt_params) return db_params_list
def get_params_for_vtgate_conn(vtgate_addrs, timeout, encrypted=False, user=None, password=None): db_params_list = [] addrs = [] if isinstance(vtgate_addrs, dict): service = '_vt' if encrypted: service = '_vts' if service not in vtgate_addrs: raise Exception("required vtgate service addrs %s not exist" % service) addrs = vtgate_addrs[service] random.shuffle(addrs) elif isinstance(vtgate_addrs, list): random.shuffle(vtgate_addrs) addrs = vtgate_addrs else: raise dbexceptions.Error("Wrong type for vtgate addrs %s" % vtgate_addrs) for addr in addrs: vt_params = dict() vt_params['addr'] = addr vt_params['timeout'] = timeout vt_params['encrypted'] = encrypted vt_params['user'] = user vt_params['password'] = password db_params_list.append(vt_params) return db_params_list
def write_transaction_setup(self): if self.master_access_disabled: raise dbexceptions.Error( "Cannot write, master access is disabled.") self._tablet_type = shard_constants.TABLET_TYPE_MASTER
def read_from_master_setup(self): self._tablet_type = shard_constants.TABLET_TYPE_MASTER if self.master_access_disabled: raise dbexceptions.Error("Master access is disabled.") if app_read_only_mode() and self.change_master_read_to_replica: self._tablet_type = shard_constants.TABLET_TYPE_REPLICA