Versions in this module Expand all Collapse all v0 v0.11.0 Sep 9, 2026 Changes in this version + type BatchProcessor struct + func NewBatchProcessor(batchSize int, maxBatchSizeMB int, memManager *MemoryManager) *BatchProcessor + func (bp *BatchProcessor) AddFile(file *MigrationFile) (bool, error) + func (bp *BatchProcessor) GetCurrentBatch() []*MigrationFile + func (bp *BatchProcessor) HasPendingBatch() bool + type CacheItem struct + Key K + Value V + type ConsoleProgressReporter struct + func NewConsoleProgressReporter(ctx context.Context, printInterval time.Duration) *ConsoleProgressReporter + type DeduplicationStats struct + UniqueItems int + type Deduplicator struct + func NewDeduplicator[T any](hashFunc func(T) string) *Deduplicator[T] + func (d *Deduplicator[T]) GetStats() DeduplicationStats + func (d *Deduplicator[T]) IsDuplicate(item T) bool + func (d *Deduplicator[T]) Reset() + type DefaultProgressReporter struct + func NewProgressReporter(ctx context.Context, updateCallback func(ProgressSummary)) *DefaultProgressReporter + func (pr *DefaultProgressReporter) AddError(err error) + func (pr *DefaultProgressReporter) AddWarning(message string) + func (pr *DefaultProgressReporter) Complete(success bool) + func (pr *DefaultProgressReporter) FinishPhase(phase ProcessingPhase, success bool, message string) + func (pr *DefaultProgressReporter) GetSummary() ProgressSummary + func (pr *DefaultProgressReporter) SetOverallProgress(current, total int) + func (pr *DefaultProgressReporter) StartPhase(phase ProcessingPhase, total int) + func (pr *DefaultProgressReporter) UpdateProgress(current int, message string) + type FileStreamReader struct + func NewFileStreamReader(reader io.Reader, bufferSizeKB int, memManager *MemoryManager) *FileStreamReader + func (fsr *FileStreamReader) GetPosition() int64 + func (fsr *FileStreamReader) ReadChunk() ([]byte, error) + type LRUCache struct + func NewLRUCache[K comparable, V any](capacity int) *LRUCache[K, V] + func (c *LRUCache[K, V]) Clear() + func (c *LRUCache[K, V]) Get(key K) (V, bool) + func (c *LRUCache[K, V]) HitRate() float64 + func (c *LRUCache[K, V]) Put(key K, value V) + func (c *LRUCache[K, V]) Size() int + type MemoryManager struct + func NewMemoryManager(maxMemoryMB int) *MemoryManager + func (mm *MemoryManager) GetBuffer() []byte + func (mm *MemoryManager) GetMemoryStats() MemoryStats + func (mm *MemoryManager) GetStatement() *types.Statement + func (mm *MemoryManager) PutBuffer(buf []byte) + func (mm *MemoryManager) PutStatement(stmt *types.Statement) + func (mm *MemoryManager) ReleaseMemory(size int64) + func (mm *MemoryManager) TrackMemoryUsage(size int64) bool + type MemoryOptimizedStatement struct + func NewMemoryOptimizedStatement(mm *MemoryManager, stmt *types.Statement) *MemoryOptimizedStatement + func (mos *MemoryOptimizedStatement) Release() + type MemoryStats struct + CacheHitRate float64 + CacheSize int + CurrentMemoryBytes int64 + MaxMemoryBytes int64 + SystemMemoryBytes int64 + type MigrationFile struct + Content []byte + Path string + Sequence int + Size int64 + type PhaseInfo struct + Current int + Duration time.Duration + EndTime time.Time + IsActive bool + IsComplete bool + Message string + Progress float64 + StartTime time.Time + Success bool + Total int + type ProcessedFile struct + Errors []error + MemoryUsed int64 + Migration *types.Migration + OriginalFile *MigrationFile + ProcessTime time.Duration + type ProcessingPhase string + const PhaseAnalysis + const PhaseCompletion + const PhaseDependencies + const PhaseDiscovery + const PhaseGeneration + const PhaseOptimization + const PhaseOutput + const PhaseParsing + const PhaseSquashing + const PhaseValidation + type ProcessingStats struct + AverageFileSize int64 + FilesErrored int64 + FilesProcessed int64 + FilesSkipped int64 + PeakMemoryUsage int64 + ProcessingTime int64 + ThroughputMBps float64 + TotalBytes int64 + type ProgressAggregator struct + func NewProgressAggregator() *ProgressAggregator + func (pa *ProgressAggregator) AddSource(name string, reporter ProgressReporter, weight float64) + func (pa *ProgressAggregator) GetAggregatedProgress() ProgressSummary + type ProgressReporter interface + AddError func(err error) + AddWarning func(message string) + FinishPhase func(phase ProcessingPhase, success bool, message string) + GetSummary func() ProgressSummary + SetOverallProgress func(current, total int) + StartPhase func(phase ProcessingPhase, total int) + UpdateProgress func(current int, message string) + type ProgressSummary struct + CurrentPhase ProcessingPhase + Duration time.Duration + EndTime time.Time + Errors []string + IsComplete bool + OverallProgress float64 + PhaseDetails map[ProcessingPhase]PhaseInfo + PhaseProgress map[ProcessingPhase]float64 + StartTime time.Time + Success bool + Warnings []string + type ProgressTracker struct + func NewProgressTracker(total int64, updateFreq time.Duration, callback func(int64, int64, float64)) *ProgressTracker + func (pt *ProgressTracker) GetProgress() (current, total int64, percentage float64) + func (pt *ProgressTracker) Update(increment int64) + type StreamingProcessor struct + func NewStreamingProcessor(batchSize, workerCount int, memManager *MemoryManager) *StreamingProcessor + func (sp *StreamingProcessor) GetResults() <-chan *ProcessedFile + func (sp *StreamingProcessor) GetStats() ProcessingStats + func (sp *StreamingProcessor) ProcessDirectory(dir string) error + func (sp *StreamingProcessor) Start() + func (sp *StreamingProcessor) Stop() error