From f776a49322621b8ed42fc398e0cd20d07d4546ba Mon Sep 17 00:00:00 2001 From: chrislu Date: Tue, 2 Sep 2025 17:15:13 -0700 Subject: [PATCH] avoid sample data --- weed/query/engine/engine.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/weed/query/engine/engine.go b/weed/query/engine/engine.go index 17e1f0713..16ba2d184 100644 --- a/weed/query/engine/engine.go +++ b/weed/query/engine/engine.go @@ -713,7 +713,8 @@ func (e *SQLEngine) executeSelectStatement(ctx context.Context, stmt *sqlparser. if _, err := e.catalog.GetTableInfo(database, tableName); err != nil { // Topic not in catalog, try to discover and register it if regErr := e.discoverAndRegisterTopic(ctx, database, tableName); regErr != nil { - fmt.Printf("Warning: Failed to discover topic %s.%s: %v\n", database, tableName, regErr) + // Return error immediately for non-existent topics instead of falling back to sample data + return &QueryResult{Error: regErr}, regErr } } @@ -723,14 +724,15 @@ func (e *SQLEngine) executeSelectStatement(ctx context.Context, stmt *sqlparser. var filerClientErr error filerClient, filerClientErr = e.catalog.brokerClient.GetFilerClient() if filerClientErr != nil { - // Log warning but continue with sample data fallback - fmt.Printf("Warning: Failed to get filer client: %v, using sample data\n", filerClientErr) + // Return error if filer client is not available for topic access + return &QueryResult{Error: filerClientErr}, filerClientErr } hybridScanner, err := NewHybridMessageScanner(filerClient, e.catalog.brokerClient, database, tableName) if err != nil { - // Fallback to sample data if topic doesn't exist or filer unavailable - return e.executeSelectWithSampleData(ctx, stmt, database, tableName) + // Return error for topic access issues instead of misleading sample data + topicErr := fmt.Errorf("failed to access topic %s.%s: %v", database, tableName, err) + return &QueryResult{Error: topicErr}, topicErr } // Parse SELECT columns and detect aggregation functions