Move SQL engine and PostgreSQL server to their own binaries (#8417)
* Drop SQL engine and PostgreSQL server * Split SQL tooling into weed-db and weed-sql * move * fix building
This commit is contained in:
@@ -16,8 +16,9 @@ RUN go mod download
|
||||
# Copy source code
|
||||
COPY . .
|
||||
|
||||
# Build the weed binary with Kafka gateway support
|
||||
# Build the weed binaries with Kafka gateway support
|
||||
RUN CGO_ENABLED=1 GOOS=linux go build -a -installsuffix cgo -ldflags '-extldflags "-static"' -o weed ./weed
|
||||
RUN CGO_ENABLED=1 GOOS=linux go build -a -installsuffix cgo -ldflags '-extldflags "-static"' -o weed-sql ./cmd/weed-sql
|
||||
|
||||
# Final stage
|
||||
FROM alpine:latest
|
||||
@@ -32,8 +33,9 @@ RUN addgroup -g 1000 seaweedfs && \
|
||||
# Set working directory
|
||||
WORKDIR /usr/bin
|
||||
|
||||
# Copy binary from builder
|
||||
# Copy binaries from builder
|
||||
COPY --from=builder /app/weed .
|
||||
COPY --from=builder /app/weed-sql .
|
||||
|
||||
# Create data directory
|
||||
RUN mkdir -p /data && chown seaweedfs:seaweedfs /data
|
||||
|
||||
3
test/kafka/test_json_timestamp.sh
Executable file → Normal file
3
test/kafka/test_json_timestamp.sh
Executable file → Normal file
@@ -14,8 +14,7 @@ sleep 2
|
||||
|
||||
echo "Querying messages..."
|
||||
cd /Users/chrislu/go/src/github.com/seaweedfs/seaweedfs/test/kafka/kafka-client-loadtest
|
||||
docker compose exec kafka-gateway /usr/local/bin/weed sql \
|
||||
docker compose exec kafka-gateway /usr/bin/weed-sql \
|
||||
-master=seaweedfs-master:9333 \
|
||||
-database=kafka \
|
||||
-query="SELECT id, timestamp, producer_id, counter, user_id, event_type FROM \"test-json-topic\" LIMIT 5;"
|
||||
|
||||
|
||||
@@ -13,8 +13,9 @@ RUN go mod download
|
||||
# Copy source code
|
||||
COPY . .
|
||||
|
||||
# Build the weed binary without CGO
|
||||
# Build the weed binaries without CGO
|
||||
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-s -w" -o weed ./weed/
|
||||
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-s -w" -o weed-db ./cmd/weed-db
|
||||
|
||||
# Final stage - minimal runtime image
|
||||
FROM alpine:latest
|
||||
@@ -24,11 +25,12 @@ RUN apk --no-cache add ca-certificates netcat-openbsd curl
|
||||
|
||||
WORKDIR /root/
|
||||
|
||||
# Copy the weed binary from builder stage
|
||||
# Copy the binaries from builder stage
|
||||
COPY --from=builder /app/weed .
|
||||
COPY --from=builder /app/weed-db .
|
||||
|
||||
# Make it executable
|
||||
RUN chmod +x ./weed
|
||||
RUN chmod +x ./weed ./weed-db
|
||||
|
||||
# Expose ports
|
||||
EXPOSE 9333 8888 8333 8085 9533 5432
|
||||
|
||||
@@ -280,7 +280,7 @@ This test setup proves:
|
||||
- Comprehensive error handling
|
||||
|
||||
### ✅ Performance and Scalability
|
||||
- Direct SQL engine integration (same as `weed sql`)
|
||||
- Direct SQL engine integration (same as `weed-sql`)
|
||||
- No translation overhead for real queries
|
||||
- Efficient data access from stored formats
|
||||
- Scalable architecture with service discovery
|
||||
|
||||
@@ -54,7 +54,7 @@ services:
|
||||
seaweedfs:
|
||||
condition: service_healthy
|
||||
command: >
|
||||
./weed db
|
||||
./weed-db
|
||||
-host=0.0.0.0
|
||||
-port=5432
|
||||
-master=seaweedfs:9333
|
||||
|
||||
0
test/postgres/run-tests.sh
Executable file → Normal file
0
test/postgres/run-tests.sh
Executable file → Normal file
0
test/postgres/validate-setup.sh
Executable file → Normal file
0
test/postgres/validate-setup.sh
Executable file → Normal file
Reference in New Issue
Block a user