From 96d3c41c1412d774823236a18bdc8970d3c82a87 Mon Sep 17 00:00:00 2001 From: Michal Niewrzal Date: Wed, 21 Jun 2023 12:25:08 +0200 Subject: [PATCH] satellite/metabase: convert bucket name to bytes for queries In case some invalid characters in bucket name we need to cast bucket name to byte array for query argument. This change is doing this for some missed cases. Change-Id: I47d0d8e3c85a69bdf63de1137adcd533dcfe50a8 --- satellite/metabase/copy_object.go | 2 +- satellite/metabase/list_objects.go | 2 +- satellite/metabase/list_verify_segments.go | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/satellite/metabase/copy_object.go b/satellite/metabase/copy_object.go index 7e077b494..e31b877f2 100644 --- a/satellite/metabase/copy_object.go +++ b/satellite/metabase/copy_object.go @@ -253,7 +253,7 @@ func (db *DB) FinishCopyObject(ctx context.Context, opts FinishCopyObject) (obje ) RETURNING created_at`, - opts.ProjectID, opts.NewBucket, opts.NewEncryptedObjectKey, nextAvailableVersion, opts.NewStreamID, + opts.ProjectID, []byte(opts.NewBucket), opts.NewEncryptedObjectKey, nextAvailableVersion, opts.NewStreamID, sourceObject.ExpiresAt, sourceObject.SegmentCount, encryptionParameters{&sourceObject.Encryption}, copyMetadata, opts.NewEncryptedMetadataKeyNonce, opts.NewEncryptedMetadataKey, diff --git a/satellite/metabase/list_objects.go b/satellite/metabase/list_objects.go index 144cba206..412a567d4 100644 --- a/satellite/metabase/list_objects.go +++ b/satellite/metabase/list_objects.go @@ -62,7 +62,7 @@ func (db *DB) ListObjects(ctx context.Context, opts ListObjects) (result ListObj var entries []ObjectEntry err = withRows(db.db.QueryContext(ctx, opts.getSQLQuery(), - opts.ProjectID, opts.BucketName, opts.startKey(), opts.Cursor.Version, + opts.ProjectID, []byte(opts.BucketName), opts.startKey(), opts.Cursor.Version, opts.stopKey(), opts.Status, opts.Limit+1, len(opts.Prefix)+1))(func(rows tagsql.Rows) error { entries, err = scanListObjectsResult(rows, opts) diff --git a/satellite/metabase/list_verify_segments.go b/satellite/metabase/list_verify_segments.go index 08b9164b9..ae7200ae9 100644 --- a/satellite/metabase/list_verify_segments.go +++ b/satellite/metabase/list_verify_segments.go @@ -196,7 +196,7 @@ func (db *DB) ListBucketsStreamIDs(ctx context.Context, opts ListBucketsStreamID LIMIT $3 `, pgutil.UUIDArray(projectIDs), pgutil.ByteaArray(bucketNamesBytes), opts.Limit, - opts.CursorBucket.ProjectID, opts.CursorBucket.BucketName, opts.CursorStreamID, + opts.CursorBucket.ProjectID, []byte(opts.CursorBucket.BucketName), opts.CursorStreamID, ))(func(rows tagsql.Rows) error { for rows.Next() { var streamID uuid.UUID