Midnight Indexer
The Midnight Indexer is a set of components designed to optimize the flow of blockchain data from a Midnight node to end-user applications. It retrieves history of blocks, processes them, stores indexed data efficiently, and provides a GraphQL API for queries and subscriptions.
2 April 2024
Midnight Indexer 1.0.1 Release Notes
Stable Release
- Version: 1.0.1
- Audience: Node operators, developers integrating with the Midnight ecosystem
- Environment: Production-ready
This release (1.0.1) is considered stable and production-ready. It can safely be deployed in public and production environments.
Key Changes & Highlights
note
This release requires wallet-sdk v4.0.0+ (compatible with Lace Wallet v2.0.0 or higher).
Changelog
Bug Fixes
- Improved wallet session management by ensuring that active wallets are explicitly marked to avoid unintended disconnections.
- Fixed an issue where wallet subscriptions always restarted progress updates from index 0, regardless of the wallet's actual known index.
Breaking Changes
Migration from Scala-based to Rust-based indexer
Impact: API endpoints are similar, but internal implementation and performance characteristics differ Action Required:
- Test integrations against the new Rust-based indexer at:
https://indexer-rs.testnet-02.midnight.network/api/v1/graphql
- Begin migration from the old endpoint (
indexer.testnet-02...
) - Monitor for upcoming deprecation of Scala indexer in future release
Known Issues
- macOS Compatibility: Limited testing on macOS. Users may experience issues with native SQLite integration.
- Windows Support: Functional but not officially supported. Linux is the recommended environment.
Compatibility
- Operating Systems: Fully supported on Linux. Limited support for macOS and Windows.
- Third-Party Tools: Compatible with monitoring and analytics platforms; may require minor configuration updates.
- Midnight Ecosystem: Fully compatible with Midnight node APIs and associated infrastructure.
Additional Resources
- Community Support: Join the discussion on Discord
Upgrade/Migration Guide
Prerequisites
- PostgreSQL installed and configured (for production)
- Network access to a Midnight node
Installation & Migration:
- Deploy new indexer binary
- Connect to appropriate backend (SQLite or PostgreSQL)
- Point your API integration to the new endpoint
Post-Upgrade Checks
- Confirm GraphQL queries resolve as expected
- Monitor logs for error-free startup