mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 01:10:23 +08:00
Implement generic pool member scoring and probing
This commit is contained in:
@@ -537,6 +537,38 @@ CREATE TABLE IF NOT EXISTS public.provider_api_keys (
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.pool_member_scores (
|
||||
id character varying(192) NOT NULL,
|
||||
pool_kind character varying(64) NOT NULL,
|
||||
pool_id character varying(64) NOT NULL,
|
||||
member_kind character varying(64) NOT NULL,
|
||||
member_id character varying(64) NOT NULL,
|
||||
capability character varying(64) NOT NULL,
|
||||
scope_kind character varying(64) NOT NULL,
|
||||
scope_id character varying(128),
|
||||
score double precision DEFAULT 0 NOT NULL,
|
||||
hard_state character varying(64) DEFAULT 'unknown'::character varying NOT NULL,
|
||||
score_version bigint DEFAULT 1 NOT NULL,
|
||||
score_reason jsonb NOT NULL,
|
||||
last_ranked_at bigint,
|
||||
last_scheduled_at bigint,
|
||||
last_success_at bigint,
|
||||
last_failure_at bigint,
|
||||
failure_count bigint DEFAULT 0 NOT NULL,
|
||||
last_probe_attempt_at bigint,
|
||||
last_probe_success_at bigint,
|
||||
last_probe_failure_at bigint,
|
||||
probe_failure_count bigint DEFAULT 0 NOT NULL,
|
||||
probe_status character varying(64) DEFAULT 'never'::character varying NOT NULL,
|
||||
updated_at bigint NOT NULL
|
||||
);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: provider_endpoints; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -252,6 +252,21 @@ END $mig$;
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores pool_member_scores_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
DO $mig$ BEGIN
|
||||
ALTER TABLE ONLY public.pool_member_scores
|
||||
ADD CONSTRAINT pool_member_scores_pkey PRIMARY KEY (id);
|
||||
EXCEPTION
|
||||
WHEN duplicate_object THEN NULL;
|
||||
WHEN duplicate_table THEN NULL;
|
||||
WHEN invalid_table_definition THEN NULL;
|
||||
END $mig$;
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: provider_endpoints provider_endpoints_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -877,6 +877,38 @@ CREATE INDEX IF NOT EXISTS ix_provider_api_keys_id ON public.provider_api_keys U
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_rank_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_rank_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score DESC);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_member_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_member_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, member_kind, member_id);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_probe_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_probe_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, probe_status, last_probe_success_at);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_updated_at_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_updated_at_idx ON public.pool_member_scores USING btree (updated_at);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: ix_provider_endpoints_id; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -127,6 +127,36 @@ CREATE TABLE IF NOT EXISTS provider_api_keys (
|
||||
KEY provider_api_keys_provider_id_idx (provider_id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS pool_member_scores (
|
||||
id VARCHAR(192) PRIMARY KEY,
|
||||
pool_kind VARCHAR(64) NOT NULL,
|
||||
pool_id VARCHAR(64) NOT NULL,
|
||||
member_kind VARCHAR(64) NOT NULL,
|
||||
member_id VARCHAR(64) NOT NULL,
|
||||
capability VARCHAR(64) NOT NULL,
|
||||
scope_kind VARCHAR(64) NOT NULL,
|
||||
scope_id VARCHAR(128),
|
||||
score DOUBLE NOT NULL DEFAULT 0,
|
||||
hard_state VARCHAR(64) NOT NULL DEFAULT 'unknown',
|
||||
score_version BIGINT NOT NULL DEFAULT 1,
|
||||
score_reason TEXT NOT NULL,
|
||||
last_ranked_at BIGINT,
|
||||
last_scheduled_at BIGINT,
|
||||
last_success_at BIGINT,
|
||||
last_failure_at BIGINT,
|
||||
failure_count BIGINT NOT NULL DEFAULT 0,
|
||||
last_probe_attempt_at BIGINT,
|
||||
last_probe_success_at BIGINT,
|
||||
last_probe_failure_at BIGINT,
|
||||
probe_failure_count BIGINT NOT NULL DEFAULT 0,
|
||||
probe_status VARCHAR(64) NOT NULL DEFAULT 'never',
|
||||
updated_at BIGINT NOT NULL,
|
||||
KEY pool_member_scores_rank_idx (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score DESC),
|
||||
KEY pool_member_scores_member_idx (pool_kind, pool_id, member_kind, member_id),
|
||||
KEY pool_member_scores_probe_idx (pool_kind, pool_id, probe_status, last_probe_success_at),
|
||||
KEY pool_member_scores_updated_at_idx (updated_at)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS gemini_file_mappings (
|
||||
id VARCHAR(64) PRIMARY KEY,
|
||||
file_name VARCHAR(512) NOT NULL,
|
||||
|
||||
@@ -534,6 +534,38 @@ CREATE TABLE IF NOT EXISTS public.provider_api_keys (
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.pool_member_scores (
|
||||
id character varying(192) NOT NULL,
|
||||
pool_kind character varying(64) NOT NULL,
|
||||
pool_id character varying(64) NOT NULL,
|
||||
member_kind character varying(64) NOT NULL,
|
||||
member_id character varying(64) NOT NULL,
|
||||
capability character varying(64) NOT NULL,
|
||||
scope_kind character varying(64) NOT NULL,
|
||||
scope_id character varying(128),
|
||||
score double precision DEFAULT 0 NOT NULL,
|
||||
hard_state character varying(64) DEFAULT 'unknown'::character varying NOT NULL,
|
||||
score_version bigint DEFAULT 1 NOT NULL,
|
||||
score_reason jsonb NOT NULL,
|
||||
last_ranked_at bigint,
|
||||
last_scheduled_at bigint,
|
||||
last_success_at bigint,
|
||||
last_failure_at bigint,
|
||||
failure_count bigint DEFAULT 0 NOT NULL,
|
||||
last_probe_attempt_at bigint,
|
||||
last_probe_success_at bigint,
|
||||
last_probe_failure_at bigint,
|
||||
probe_failure_count bigint DEFAULT 0 NOT NULL,
|
||||
probe_status character varying(64) DEFAULT 'never'::character varying NOT NULL,
|
||||
updated_at bigint NOT NULL
|
||||
);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: provider_endpoints; Type: TABLE; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -252,6 +252,21 @@ END $mig$;
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores pool_member_scores_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
DO $mig$ BEGIN
|
||||
ALTER TABLE ONLY public.pool_member_scores
|
||||
ADD CONSTRAINT pool_member_scores_pkey PRIMARY KEY (id);
|
||||
EXCEPTION
|
||||
WHEN duplicate_object THEN NULL;
|
||||
WHEN duplicate_table THEN NULL;
|
||||
WHEN invalid_table_definition THEN NULL;
|
||||
END $mig$;
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: provider_endpoints provider_endpoints_pkey; Type: CONSTRAINT; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -869,6 +869,38 @@ CREATE INDEX IF NOT EXISTS ix_provider_api_keys_id ON public.provider_api_keys U
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_rank_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_rank_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score DESC);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_member_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_member_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, member_kind, member_id);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_probe_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_probe_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, probe_status, last_probe_success_at);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: pool_member_scores_updated_at_idx; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_updated_at_idx ON public.pool_member_scores USING btree (updated_at);
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Name: ix_provider_endpoints_id; Type: INDEX; Schema: public; Owner: -
|
||||
--
|
||||
|
||||
@@ -134,6 +134,36 @@ CREATE TABLE IF NOT EXISTS provider_api_keys (
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS provider_api_keys_provider_id_idx ON provider_api_keys (provider_id);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS pool_member_scores (
|
||||
id TEXT PRIMARY KEY,
|
||||
pool_kind TEXT NOT NULL,
|
||||
pool_id TEXT NOT NULL,
|
||||
member_kind TEXT NOT NULL,
|
||||
member_id TEXT NOT NULL,
|
||||
capability TEXT NOT NULL,
|
||||
scope_kind TEXT NOT NULL,
|
||||
scope_id TEXT,
|
||||
score REAL NOT NULL DEFAULT 0,
|
||||
hard_state TEXT NOT NULL DEFAULT 'unknown',
|
||||
score_version INTEGER NOT NULL DEFAULT 1,
|
||||
score_reason TEXT NOT NULL,
|
||||
last_ranked_at INTEGER,
|
||||
last_scheduled_at INTEGER,
|
||||
last_success_at INTEGER,
|
||||
last_failure_at INTEGER,
|
||||
failure_count INTEGER NOT NULL DEFAULT 0,
|
||||
last_probe_attempt_at INTEGER,
|
||||
last_probe_success_at INTEGER,
|
||||
last_probe_failure_at INTEGER,
|
||||
probe_failure_count INTEGER NOT NULL DEFAULT 0,
|
||||
probe_status TEXT NOT NULL DEFAULT 'never',
|
||||
updated_at INTEGER NOT NULL
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_rank_idx ON pool_member_scores (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score DESC);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_member_idx ON pool_member_scores (pool_kind, pool_id, member_kind, member_id);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_probe_idx ON pool_member_scores (pool_kind, pool_id, probe_status, last_probe_success_at);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_updated_at_idx ON pool_member_scores (updated_at);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS gemini_file_mappings (
|
||||
id TEXT PRIMARY KEY,
|
||||
file_name TEXT NOT NULL UNIQUE,
|
||||
|
||||
@@ -130,6 +130,37 @@ CREATE TABLE IF NOT EXISTS provider_api_keys (
|
||||
KEY provider_api_keys_provider_id_idx (`provider_id`)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS pool_member_scores (
|
||||
`id` VARCHAR(192) NOT NULL,
|
||||
`pool_kind` VARCHAR(64) NOT NULL,
|
||||
`pool_id` VARCHAR(64) NOT NULL,
|
||||
`member_kind` VARCHAR(64) NOT NULL,
|
||||
`member_id` VARCHAR(64) NOT NULL,
|
||||
`capability` VARCHAR(64) NOT NULL,
|
||||
`scope_kind` VARCHAR(64) NOT NULL,
|
||||
`scope_id` VARCHAR(128),
|
||||
`score` DOUBLE NOT NULL DEFAULT 0,
|
||||
`hard_state` VARCHAR(64) NOT NULL DEFAULT 'unknown',
|
||||
`score_version` BIGINT NOT NULL DEFAULT 1,
|
||||
`score_reason` JSON NOT NULL,
|
||||
`last_ranked_at` BIGINT,
|
||||
`last_scheduled_at` BIGINT,
|
||||
`last_success_at` BIGINT,
|
||||
`last_failure_at` BIGINT,
|
||||
`failure_count` BIGINT NOT NULL DEFAULT 0,
|
||||
`last_probe_attempt_at` BIGINT,
|
||||
`last_probe_success_at` BIGINT,
|
||||
`last_probe_failure_at` BIGINT,
|
||||
`probe_failure_count` BIGINT NOT NULL DEFAULT 0,
|
||||
`probe_status` VARCHAR(64) NOT NULL DEFAULT 'never',
|
||||
`updated_at` BIGINT NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY pool_member_scores_rank_idx (`pool_kind`, `pool_id`, `capability`, `scope_kind`, `scope_id`, `hard_state`, `score`),
|
||||
KEY pool_member_scores_member_idx (`pool_kind`, `pool_id`, `member_kind`, `member_id`),
|
||||
KEY pool_member_scores_probe_idx (`pool_kind`, `pool_id`, `probe_status`, `last_probe_success_at`),
|
||||
KEY pool_member_scores_updated_at_idx (`updated_at`)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS api_key_provider_mappings (
|
||||
`id` VARCHAR(64) NOT NULL,
|
||||
`api_key_id` VARCHAR(64) NOT NULL,
|
||||
|
||||
@@ -134,6 +134,38 @@ CREATE TABLE IF NOT EXISTS public.provider_api_keys (
|
||||
ALTER TABLE ONLY public.provider_api_keys ADD CONSTRAINT provider_api_keys_pkey PRIMARY KEY (id);
|
||||
CREATE INDEX IF NOT EXISTS provider_api_keys_provider_id_idx ON public.provider_api_keys USING btree (provider_id);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.pool_member_scores (
|
||||
id character varying(192) NOT NULL,
|
||||
pool_kind character varying(64) NOT NULL,
|
||||
pool_id character varying(64) NOT NULL,
|
||||
member_kind character varying(64) NOT NULL,
|
||||
member_id character varying(64) NOT NULL,
|
||||
capability character varying(64) NOT NULL,
|
||||
scope_kind character varying(64) NOT NULL,
|
||||
scope_id character varying(128),
|
||||
score double precision DEFAULT 0 NOT NULL,
|
||||
hard_state character varying(64) DEFAULT 'unknown' NOT NULL,
|
||||
score_version bigint DEFAULT 1 NOT NULL,
|
||||
score_reason jsonb NOT NULL,
|
||||
last_ranked_at bigint,
|
||||
last_scheduled_at bigint,
|
||||
last_success_at bigint,
|
||||
last_failure_at bigint,
|
||||
failure_count bigint DEFAULT 0 NOT NULL,
|
||||
last_probe_attempt_at bigint,
|
||||
last_probe_success_at bigint,
|
||||
last_probe_failure_at bigint,
|
||||
probe_failure_count bigint DEFAULT 0 NOT NULL,
|
||||
probe_status character varying(64) DEFAULT 'never' NOT NULL,
|
||||
updated_at bigint NOT NULL
|
||||
);
|
||||
|
||||
ALTER TABLE ONLY public.pool_member_scores ADD CONSTRAINT pool_member_scores_pkey PRIMARY KEY (id);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_rank_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_member_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, member_kind, member_id);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_probe_idx ON public.pool_member_scores USING btree (pool_kind, pool_id, probe_status, last_probe_success_at);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_updated_at_idx ON public.pool_member_scores USING btree (updated_at);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS public.api_key_provider_mappings (
|
||||
id character varying(64) NOT NULL,
|
||||
api_key_id character varying(64) NOT NULL,
|
||||
|
||||
@@ -126,6 +126,36 @@ CREATE TABLE IF NOT EXISTS provider_api_keys (
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS provider_api_keys_provider_id_idx ON provider_api_keys (provider_id);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS pool_member_scores (
|
||||
id TEXT PRIMARY KEY NOT NULL,
|
||||
pool_kind TEXT NOT NULL,
|
||||
pool_id TEXT NOT NULL,
|
||||
member_kind TEXT NOT NULL,
|
||||
member_id TEXT NOT NULL,
|
||||
capability TEXT NOT NULL,
|
||||
scope_kind TEXT NOT NULL,
|
||||
scope_id TEXT,
|
||||
score REAL NOT NULL DEFAULT 0,
|
||||
hard_state TEXT NOT NULL DEFAULT 'unknown',
|
||||
score_version INTEGER NOT NULL DEFAULT 1,
|
||||
score_reason TEXT NOT NULL,
|
||||
last_ranked_at INTEGER,
|
||||
last_scheduled_at INTEGER,
|
||||
last_success_at INTEGER,
|
||||
last_failure_at INTEGER,
|
||||
failure_count INTEGER NOT NULL DEFAULT 0,
|
||||
last_probe_attempt_at INTEGER,
|
||||
last_probe_success_at INTEGER,
|
||||
last_probe_failure_at INTEGER,
|
||||
probe_failure_count INTEGER NOT NULL DEFAULT 0,
|
||||
probe_status TEXT NOT NULL DEFAULT 'never',
|
||||
updated_at INTEGER NOT NULL
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_rank_idx ON pool_member_scores (pool_kind, pool_id, capability, scope_kind, scope_id, hard_state, score);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_member_idx ON pool_member_scores (pool_kind, pool_id, member_kind, member_id);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_probe_idx ON pool_member_scores (pool_kind, pool_id, probe_status, last_probe_success_at);
|
||||
CREATE INDEX IF NOT EXISTS pool_member_scores_updated_at_idx ON pool_member_scores (updated_at);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS api_key_provider_mappings (
|
||||
id TEXT PRIMARY KEY NOT NULL,
|
||||
api_key_id TEXT NOT NULL,
|
||||
|
||||
@@ -579,6 +579,143 @@ type = "unix_seconds"
|
||||
name = "provider_api_keys_provider_id_idx"
|
||||
columns = ["provider_id"]
|
||||
|
||||
[table.pool_member_scores]
|
||||
domain = "provider_catalog"
|
||||
order = 44
|
||||
primary_key = ["id"]
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "id"
|
||||
type = "text_id"
|
||||
length = 192
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "pool_kind"
|
||||
type = "text"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "pool_id"
|
||||
type = "text_id"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "member_kind"
|
||||
type = "text"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "member_id"
|
||||
type = "text_id"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "capability"
|
||||
type = "text"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "scope_kind"
|
||||
type = "text"
|
||||
length = 64
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "scope_id"
|
||||
type = "text_id"
|
||||
length = 128
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "score"
|
||||
type = "float64"
|
||||
default = 0
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "hard_state"
|
||||
type = "text"
|
||||
length = 64
|
||||
default = "unknown"
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "score_version"
|
||||
type = "int64"
|
||||
default = 1
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "score_reason"
|
||||
type = "json"
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_ranked_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_scheduled_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_success_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_failure_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "failure_count"
|
||||
type = "int64"
|
||||
default = 0
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_probe_attempt_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_probe_success_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "last_probe_failure_at"
|
||||
type = "unix_seconds"
|
||||
nullable = true
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "probe_failure_count"
|
||||
type = "int64"
|
||||
default = 0
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "probe_status"
|
||||
type = "text"
|
||||
length = 64
|
||||
default = "never"
|
||||
|
||||
[[table.pool_member_scores.columns]]
|
||||
name = "updated_at"
|
||||
type = "unix_seconds"
|
||||
|
||||
[[table.pool_member_scores.indexes]]
|
||||
name = "pool_member_scores_rank_idx"
|
||||
columns = ["pool_kind", "pool_id", "capability", "scope_kind", "scope_id", "hard_state", "score"]
|
||||
|
||||
[[table.pool_member_scores.indexes]]
|
||||
name = "pool_member_scores_member_idx"
|
||||
columns = ["pool_kind", "pool_id", "member_kind", "member_id"]
|
||||
|
||||
[[table.pool_member_scores.indexes]]
|
||||
name = "pool_member_scores_probe_idx"
|
||||
columns = ["pool_kind", "pool_id", "probe_status", "last_probe_success_at"]
|
||||
|
||||
[[table.pool_member_scores.indexes]]
|
||||
name = "pool_member_scores_updated_at_idx"
|
||||
columns = ["updated_at"]
|
||||
|
||||
[table.api_key_provider_mappings]
|
||||
domain = "provider_catalog"
|
||||
order = 45
|
||||
|
||||
Reference in New Issue
Block a user