aboutsummaryrefslogtreecommitdiff
path: root/weed/mq/topic/partition.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/mq/topic/partition.go')
-rw-r--r--weed/mq/topic/partition.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/weed/mq/topic/partition.go b/weed/mq/topic/partition.go
new file mode 100644
index 000000000..285bdcb36
--- /dev/null
+++ b/weed/mq/topic/partition.go
@@ -0,0 +1,32 @@
+package topic
+
+import "github.com/seaweedfs/seaweedfs/weed/pb/mq_pb"
+
+const PartitionCount = 4096
+
+type Partition struct {
+ RangeStart int32
+ RangeStop int32 // exclusive
+ RingSize int32
+}
+
+func (partition Partition) Equals(other Partition) bool {
+ if partition.RangeStart != other.RangeStart {
+ return false
+ }
+ if partition.RangeStop != other.RangeStop {
+ return false
+ }
+ if partition.RingSize != other.RingSize {
+ return false
+ }
+ return true
+}
+
+func FromPbPartition(partition *mq_pb.Partition) Partition {
+ return Partition{
+ RangeStart: partition.RangeStart,
+ RangeStop: partition.RangeStop,
+ RingSize: partition.RingSize,
+ }
+}