mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 09:20:22 +08:00
Implement generic pool member scoring and probing
This commit is contained in:
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user