plugin

package
v0.0.0-debug-20260702 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2026 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package plugin is the IVF-FLAT vector index plugin registration point.

Phase 4a (current)

Skeleton landed. Catalog hooks (HiddenTableTypes, ParamsFromTree, DefaultOptions, SupportedOpTypes, ExperimentalFlag, SyncDescriptor) are fully implemented in runtime/. Compile and plan hooks are STUBS (see compile/compile.go and plan/plan.go). The plugin is intentionally NOT registered in pkg/indexplugin/all/all.go yet — the stub hooks would break IVF-FLAT DDL/query if dispatch routed through them. The remaining inline IVFFLAT case arms in pkg/sql/compile and pkg/sql/plan continue to handle IVF-FLAT until the lifts complete.

Phases 4b–4g (remaining)

  • 4b: collapse the inline `else if catalog.IsIvfIndexAlgo(...)` fallbacks in pkg/sql/compile/iscp_util.go and other dispatch sites — they're dead once the plugin is registered. Defer until 4c lands so registration is safe.
  • 4c: lift compile DDL (handleVectorIvfFlatIndex + 5 helpers).
  • 4d: lift buildIvfFlatSecondaryIndexDef.
  • 4e: lift apply_indices_ivfflat.go (auto/pre/post mode, two-scan).
  • 4f: lift DML sync (appendPreInsertSkVectorPlan + DELETE arms).
  • 4g: lift IVF-FLAT case of indexParamsToMap + ivfflat.go table-function builders. Add init() registration once 4c–4f are complete (uncomment the `func init()` block below).

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Plugin

type Plugin struct {
	// contains filtered or unexported fields
}

Plugin is the IVF-FLAT AlgoPlugin. Mirrors the IVF-PQ structure.

func New

func New() *Plugin

func (*Plugin) Algo

func (*Plugin) Algo() string

func (*Plugin) Catalog

func (p *Plugin) Catalog() catalogplugin.Hooks

func (*Plugin) Compile

func (p *Plugin) Compile() compileplugin.Hooks

func (*Plugin) Idxcron

func (p *Plugin) Idxcron() idxcronplugin.Hooks

func (*Plugin) Plan

func (p *Plugin) Plan() planplugin.Hooks

Directories

Path Synopsis
Package compile implements the IVF-FLAT plugin's compile-layer (DDL) hooks.
Package compile implements the IVF-FLAT plugin's compile-layer (DDL) hooks.
Package idxcron is IVF-FLAT's idxcron hook implementation.
Package idxcron is IVF-FLAT's idxcron hook implementation.
Package iscp provides IVF-FLAT's ISCP hook layer.
Package iscp provides IVF-FLAT's ISCP hook layer.
Package plan implements the Ivfflat plugin's plan-layer hooks.
Package plan implements the Ivfflat plugin's plan-layer hooks.
Package runtime holds IVF-FLAT's catalog-side metadata: hidden-table types, parameter schema, op-type set, default options, sync descriptor.
Package runtime holds IVF-FLAT's catalog-side metadata: hidden-table types, parameter schema, op-type set, default options, sync descriptor.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL