lionsoul2014/ip2region · error

failed to create v4 in-memory searcher: %w

Error message

failed to create v4 in-memory searcher: %w

What it means

Go service factory: creating the single shared in-memory v4 searcher (xdb.NewWithBuffer on the preloaded content) failed; the wrapped error usually indicates a malformed/inconsistent content buffer.

Source

Thrown at binding/golang/service/ip2region.go:52

}

// create a new Ip2Region service with specified v4 and v6 config.
// set it to nil to disabled the specified search for the specified version.
func NewIp2Region(v4Config *Config, v6Config *Config) (*Ip2Region, error) {
	var err error

	// check and init the v4 pool or in-memory searcher
	var v4Pool *SearcherPool
	var v4InMemSearcher *xdb.Searcher
	if v4Config == nil {
		// with IPv4 disabled ?
		v4Pool = nil
		v4InMemSearcher = nil
	} else if v4Config.cachePolicy == BufferCache {
		v4Pool = nil
		v4InMemSearcher, err = xdb.NewWithBuffer(v4Config.ipVersion, v4Config.cBuffer)
		if err != nil {
			return nil, fmt.Errorf("failed to create v4 in-memory searcher: %w", err)
		}
	} else {
		v4InMemSearcher = nil
		v4Pool, err = NewSearcherPool(v4Config)
		if err != nil {
			return nil, fmt.Errorf("failed to create v4 searcher pool: %w", err)
		}
	}

	// check and init the v6 pool or in-memory searcher
	var v6Pool *SearcherPool
	var v6InMemSearcher *xdb.Searcher
	if v6Config == nil {
		v6Pool = nil
		v6InMemSearcher = nil
	} else if v6Config.cachePolicy == BufferCache {
		v6Pool = nil
		v6InMemSearcher, err = xdb.NewWithBuffer(v6Config.ipVersion, v6Config.cBuffer)

View on GitHub (pinned to c1a1fc7d59)

Solutions

  1. Verify the v4 xdb content loaded into the config is complete and valid
  2. Recreate the config from a known-good xdb file
  3. Inspect the wrapped error for the exact buffer validation failure
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at binding/golang/service/ip2region.go:52 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of lionsoul2014/ip2region@c1a1fc7d59 (2026-09-02). Data as JSON: /api/errors/7468cd67548529f7. Report an issue: GitHub.