Files
ruflo/docs/ruvector-postgres/scripts/test-connection.sh
T
rUvandClaude Opus 4.5 a207caa4e2 Checkpoint: File edits
Automatic checkpoint created by Claude Code
- Branch: main
- Timestamp: 2026-01-17T20:27:01Z
- Changes: 1 file(s)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 20:27:01 +00:00

92 lines
2.9 KiB
Bash

#!/bin/bash
# Test connection to RuVector PostgreSQL
set -e
HOST="${PGHOST:-localhost}"
PORT="${PGPORT:-5432}"
DATABASE="${PGDATABASE:-claude_flow}"
USER="${PGUSER:-claude}"
PASSWORD="${PGPASSWORD:-claude-flow-test}"
echo "🔍 Testing RuVector PostgreSQL Connection"
echo "=========================================="
echo ""
# Test basic connection
echo "1. Testing connection..."
PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -c "SELECT 1;" > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo " ✅ Connection successful"
else
echo " ❌ Connection failed"
exit 1
fi
# Check PostgreSQL version
echo ""
echo "2. PostgreSQL version:"
PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c "SELECT version();" | head -1
# Check pgvector extension
echo ""
echo "3. Checking pgvector extension..."
RESULT=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT extversion FROM pg_extension WHERE extname = 'vector';" 2>/dev/null | tr -d ' ')
if [ -n "$RESULT" ]; then
echo " ✅ pgvector version: $RESULT"
else
echo " ❌ pgvector extension not found"
fi
# Check schema
echo ""
echo "4. Checking claude_flow schema..."
RESULT=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT COUNT(*) FROM information_schema.schemata WHERE schema_name = 'claude_flow';" | tr -d ' ')
if [ "$RESULT" = "1" ]; then
echo " ✅ Schema exists"
else
echo " ❌ Schema not found"
fi
# Check tables
echo ""
echo "5. Checking tables..."
TABLES=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT table_name FROM information_schema.tables WHERE table_schema = 'claude_flow';" | tr -d ' ' | grep -v "^$")
for table in $TABLES; do
echo " ✅ Table: $table"
done
# Check indices
echo ""
echo "6. Checking HNSW indices..."
INDICES=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT indexname FROM pg_indexes WHERE schemaname = 'claude_flow' AND indexdef LIKE '%hnsw%';" | tr -d ' ' | grep -v "^$")
for idx in $INDICES; do
echo " ✅ Index: $idx"
done
# Count sample data
echo ""
echo "7. Sample data:"
COUNT=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT COUNT(*) FROM claude_flow.embeddings;" | tr -d ' ')
echo " 📊 Embeddings: $COUNT rows"
COUNT=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT COUNT(*) FROM claude_flow.patterns;" | tr -d ' ')
echo " 📊 Patterns: $COUNT rows"
COUNT=$(PGPASSWORD=$PASSWORD psql -h $HOST -p $PORT -U $USER -d $DATABASE -t -c \
"SELECT COUNT(*) FROM claude_flow.agents;" | tr -d ' ')
echo " 📊 Agents: $COUNT rows"
echo ""
echo "=========================================="
echo "✅ All checks passed! RuVector is ready."
echo ""
echo "Connection string:"
echo " postgresql://$USER:****@$HOST:$PORT/$DATABASE"