- How do I replace Laravel Scout with this OpenSearch adapter?
- Use SEAL’s Engine to wrap Scout’s Searchable trait. Bind the adapter in Laravel’s service container, then replace Scout queries with SEAL’s Engine::search(). Start with dual-write mode to validate data consistency before full migration.
- Does this adapter support OpenSearch’s async indexing or point-in-time search?
- The adapter is still under heavy development, so check the latest SEAL and OpenSearch PHP client releases for feature parity. Async indexing and point-in-time search may require manual configuration via the OpenSearch client.
- What Laravel versions are officially supported?
- No explicit Laravel version constraints exist, but PHP 8.0+ is required. Tested with Laravel 9/10; ensure your app’s dependencies align with SEAL’s requirements (likely v1.x).
- How do I handle connection failures or schema validation errors?
- The adapter relies on the OpenSearch PHP client’s built-in error handling. Wrap Engine calls in try-catch blocks to handle exceptions. For schema validation, SEAL’s Engine validates documents before indexing, but OpenSearch-specific errors may need custom handling.
- Can I use this adapter with non-Laravel PHP projects?
- Yes, the adapter is framework-agnostic. Use SEAL’s Engine directly with dependency injection (e.g., via PHP-DI or manual instantiation). Laravel-specific features like Scout integration require additional setup.
- What’s the roadmap for stabilizing this package?
- The project is actively developed under the CMSIG/SEAL umbrella. Check the [SEAL discussions](https://github.com/PHP-CMSIG/search/discussions) for updates. No official v1.0 roadmap exists yet, but feedback is welcome via GitHub issues.
- Does this support OpenSearch’s security filters or TLS?
- Yes, TLS and basic auth are supported via DSN (e.g., `opensearch://user:pass@host?tls=true`) or manual ClientBuilder configuration. For advanced security filters, use the OpenSearch client’s built-in features.
- How do I migrate from Elasticsearch to OpenSearch using this adapter?
- Phase 1: Deploy dual-write (Scout + SEAL). Phase 2: Rewrite queries to use SEAL’s Engine. Phase 3: Migrate indices via OpenSearch’s reindex API. Use SEAL’s Engine to route queries during transition.
- Are there performance benchmarks or Laravel monitoring integrations?
- No benchmarks or built-in metrics exist yet. For monitoring, integrate Laravel tools like Horizon with the OpenSearch client’s low-level metrics or use OpenSearch’s native APIs for query latency/index health.
- What alternatives exist for OpenSearch in Laravel?
- For Laravel, consider Scout (Elasticsearch), Algolia, or Meilisearch. For abstraction layers, SEAL is the only OpenSearch-native option. If stability is critical, wait for SEAL’s v1.0 or use the OpenSearch PHP client directly.