Skip to content

Commit fa84495

Browse files
committed
Successfully insert message into Cassandra db
1 parent 67860e2 commit fa84495

3 files changed

Lines changed: 15 additions & 4 deletions

File tree

backend/cassandra/client.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ func CassandraSession() *gocql.Session {
2323
if err != nil {
2424
log.Fatal(err)
2525
}
26-
defer session.Close()
2726
fmt.Println("Connected to Cassandra Nodes:")
2827
for _, host := range cluster.Hosts {
2928
fmt.Println("- Node:", host)

backend/cassandra/service.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,26 @@ package cassandra
22

33
import (
44
"fmt"
5+
"time"
6+
57
"github.com/Leo7Deng/ChatApp/models"
68
"github.com/gocql/gocql"
79
"github.com/google/uuid"
810
)
911

1012
func InsertMessage(session *gocql.Session, message models.Message) error {
1113
messageID := uuid.New().String()
14+
// convert time string to cassandra timestamp
15+
parsedTime, err := time.Parse(time.RFC3339, message.CreatedAt)
16+
if err != nil {
17+
fmt.Println("Error parsing time:", err)
18+
return err
19+
}
1220
query := session.Query(`
1321
INSERT INTO chat_app.messages (circle_id, created_at, message_id, author_id, content)
1422
VALUES (?, ?, ?, ?, ?)`,
15-
message.CircleID, message.CreatedAt, messageID, message.AuthorID, message.Content)
16-
err := query.Exec()
23+
message.CircleID, parsedTime, messageID, message.AuthorID, message.Content)
24+
err = query.Exec()
1725
if err != nil {
1826
fmt.Println("Error inserting message into Cassandra:", err)
1927
return err

backend/docker-compose.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ services:
7070
CASSANDRA_LISTEN_ADDRESS: "cassandra-node1"
7171
CASSANDRA_ENDPOINT_SNITCH: "GossipingPropertyFileSnitch"
7272
CASSANDRA_CLUSTER_NAME: "cassandra-cluster"
73-
# CASSANDRA_SEEDS: "cassandra-node1,cassandra-node2"
73+
CASSANDRA_SEEDS: "cassandra-node1"
7474
CASSANDRA_NUM_TOKENS: 8
7575
CASSANDRA_DC: "dc1"
7676
ports:
@@ -102,6 +102,8 @@ services:
102102
CASSANDRA_SEEDS: "cassandra-node1"
103103
CASSANDRA_NUM_TOKENS: 8
104104
CASSANDRA_DC: "dc1"
105+
ports:
106+
- "9043:9042"
105107
volumes:
106108
- cassandra-data-node2:/var/lib/cassandra
107109
healthcheck:
@@ -129,6 +131,8 @@ services:
129131
CASSANDRA_SEEDS: "cassandra-node1"
130132
CASSANDRA_NUM_TOKENS: 8
131133
CASSANDRA_DC: "dc1"
134+
ports:
135+
- "9044:9042"
132136
volumes:
133137
- cassandra-data-node3:/var/lib/cassandra
134138
healthcheck:

0 commit comments

Comments
 (0)