Skip to content

Conversation

@tharropoulos
Copy link
Contributor

Change Summary

• implement record batching with buffer size and time-based flush triggers
• add buffer_size_limit and flush_interval_seconds config parameters
• support environment variables TYPESENSE_BUFFER_SIZE_LIMIT and TYPESENSE_FLUSH_INTERVAL_SECONDS
• add validation rules ensuring parameters are positive integers
• update typesensehelper constructor to accept batching parameters
• replace immediate record import with buffered approach for better performance
• add example configuration to typesense_docs.json
• update documentation with batching configuration options

performance impact: reduces api calls to typesense by batching records instead of sending them immediately in small chunks

PR Checklist

• add buffer_size_limit and flush_interval_seconds parameters to typesensehelper
• replace immediate record import with buffered approach
• flush records based on buffer size or time interval thresholds
• update all test instances with new constructor parameters
• add buffer_size_limit and flush_interval_seconds to configloader
• support environment variables for batching configuration
• add validation rules for batching parameters
• create test suites for batching parameter validation
• update main index to use config values instead of hardcoded values
• add example batching configuration to typesense_docs.json
@tharropoulos tharropoulos force-pushed the batching-rate-limitting branch from 0c416b8 to 87c2aaf Compare September 2, 2025 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant