rm StoreChunk
diff --git a/chunk/server.go b/chunk/server.go
index 0566c16..1e7b534 100644
--- a/chunk/server.go
+++ b/chunk/server.go
@@ -108,18 +108,6 @@
 	}
 }
 
-func (s *ChunkServer) StoreChunk(
-	ctx context.Context,
-	req *api.StoreChunkRequest) (resp *api.StoreChunkResponse, err error) {
-	chunk := s.factory.New(len(req.Data))
-	s.chunks.Store(req.ChunkId, chunk)
-	_, err = chunk.WriterAt().WriteAt(req.Data, 0)
-	if err == nil {
-		resp = &api.StoreChunkResponse{}
-	}
-	return
-}
-
 func (s *ChunkServer) RemoveChunk(
 	ctx context.Context,
 	req *api.RemoveChunkRequest) (resp *api.RemoveChunkResponse, err error) {
diff --git a/chunk/server_test.go b/chunk/server_test.go
index 70f209f..2c6fb83 100644
--- a/chunk/server_test.go
+++ b/chunk/server_test.go
@@ -10,8 +10,16 @@
 
 func TestStoreChunk(t *testing.T) {
 	s := ChunkServer{factory: &InMemoryChunkFactory{}}
-	_, err := s.StoreChunk(context.Background(), &api.StoreChunkRequest{
+	_, err := s.CreateChunk(context.Background(), &api.CreateChunkRequest{
 		ChunkId: "foo",
+		Size:    11,
+		Role:    api.ReplicaRole_PRIMARY})
+	if err != nil {
+		t.Error(err)
+	}
+	_, err = s.WriteChunk(context.Background(), &api.WriteChunkRequest{
+		ChunkId: "foo",
+		Offset:  0,
 		Data:    []byte("hello world")})
 	if err != nil {
 		t.Error(err)
@@ -20,8 +28,16 @@
 
 func TestStoreAndReadChunk(t *testing.T) {
 	s := ChunkServer{factory: &InMemoryChunkFactory{}}
-	_, err := s.StoreChunk(context.Background(), &api.StoreChunkRequest{
+	_, err := s.CreateChunk(context.Background(), &api.CreateChunkRequest{
 		ChunkId: "foo",
+		Size:    11,
+		Role:    api.ReplicaRole_PRIMARY})
+	if err != nil {
+		t.Error(err)
+	}
+	_, err = s.WriteChunk(context.Background(), &api.WriteChunkRequest{
+		ChunkId: "foo",
+		Offset:  0,
 		Data:    []byte("hello world")})
 	if err != nil {
 		t.Error(err)
@@ -39,8 +55,16 @@
 
 func TestReadWithOffsets(t *testing.T) {
 	s := ChunkServer{factory: &InMemoryChunkFactory{}}
-	_, err := s.StoreChunk(context.Background(), &api.StoreChunkRequest{
+	_, err := s.CreateChunk(context.Background(), &api.CreateChunkRequest{
 		ChunkId: "foo",
+		Size:    11,
+		Role:    api.ReplicaRole_PRIMARY})
+	if err != nil {
+		t.Error(err)
+	}
+	_, err = s.WriteChunk(context.Background(), &api.WriteChunkRequest{
+		ChunkId: "foo",
+		Offset:  0,
 		Data:    []byte("hello world")})
 	if err != nil {
 		t.Error(err)