Skip to content

Commit 7d60ae8

Browse files
alxtkr77Alex
andauthored
Make PutOOSObjectSync() thread safe (#127)
* Fix PutOOSObjectSync() * remove 'slice' from OOS put request Co-authored-by: Alex <alext@iguaz.io>
1 parent ea23e24 commit 7d60ae8

File tree

2 files changed

+14
-13
lines changed

2 files changed

+14
-13
lines changed

pkg/dataplane/http/context.go

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,15 @@ import (
2020
"sync/atomic"
2121
"time"
2222

23-
"github.com/v3io/v3io-go/pkg/dataplane"
24-
"github.com/v3io/v3io-go/pkg/dataplane/schemas/node/common"
25-
"github.com/v3io/v3io-go/pkg/errors"
23+
v3io "github.com/v3io/v3io-go/pkg/dataplane"
24+
node_common_capnp "github.com/v3io/v3io-go/pkg/dataplane/schemas/node/common"
25+
v3ioerrors "github.com/v3io/v3io-go/pkg/errors"
2626

2727
"github.com/nuclio/errors"
2828
"github.com/nuclio/logger"
2929
"github.com/valyala/fasthttp"
3030
"golang.org/x/sync/semaphore"
31-
"zombiezen.com/go/capnproto2"
31+
capnp "zombiezen.com/go/capnproto2"
3232
)
3333

3434
// TODO: Request should have a global pool
@@ -1719,11 +1719,13 @@ func (c *context) PutOOSObjectSync(putOOSObjectInput *v3io.PutOOSObjectInput) er
17191719
buffer.Write(ioVec)
17201720
}
17211721

1722-
headers := putOOSObjectHeaders
1723-
headers["slice"] = strconv.Itoa(putOOSObjectInput.SliceID)
1724-
headers["io-vec-num"] = strconv.Itoa(len(putOOSObjectInput.Data) + 1)
1725-
headers["io-vec-sizes"] = iovecSizes.String()
1726-
1722+
// headers for OOS put object
1723+
headers := map[string]string{
1724+
"Content-Type": putOOSObjectHeaders["Content-Type"],
1725+
"X-v3io-function": putOOSObjectHeaders["X-v3io-function"],
1726+
"io-vec-num": strconv.Itoa(len(putOOSObjectInput.Data) + 1),
1727+
"io-vec-sizes": iovecSizes.String(),
1728+
}
17271729
_, err := c.sendRequest(&putOOSObjectInput.DataPlaneInput,
17281730
http.MethodPut,
17291731
putOOSObjectInput.Path,

pkg/dataplane/types.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -441,10 +441,9 @@ type GetRecordsOutput struct {
441441

442442
type PutOOSObjectInput struct {
443443
DataPlaneInput
444-
Path string
445-
SliceID int
446-
Header []byte
447-
Data [][]byte
444+
Path string
445+
Header []byte
446+
Data [][]byte
448447
}
449448

450449
type ItemChunkMetadata struct {

0 commit comments

Comments
 (0)