Skip to content

PS-11033 fix: crash when S3 bucket accumulates large number of objects; recovery requires manual intervention#120

Merged
percona-ysorokin merged 1 commit into
0.2from
s3_list_pagination
Apr 24, 2026
Merged

PS-11033 fix: crash when S3 bucket accumulates large number of objects; recovery requires manual intervention#120
percona-ysorokin merged 1 commit into
0.2from
s3_list_pagination

Conversation

@percona-ysorokin
Copy link
Copy Markdown
Collaborator

https://perconadev.atlassian.net/browse/PS-11033

Fixed problem with initializing a non-empty S3 storage that has more than 500 binlog files / binlog metadata files (1000 total).

Implemented pagination for the 'ListObjectsV2()' AWS SDK C++ API call in the 's3_storage_backend::aws_context::list_objects()' method. S3 API has a hard limit that sets the max number of items in the 'ListObjectsV2' response to be no greater than 1000. In case when the storage has more than 1000 objects, we now perform several 'ListObjectsV2' calls with the continuation token.

Added 'binlog_streaming.thousand_binlogs' MTR test case that executes 'FLUSH BINARY LOG' 1000 times and executes PBS two times, on an empty and populated storage.

…s; recovery requires manual intervention

https://perconadev.atlassian.net/browse/PS-11033

Fixed problem with initializing a non-empty S3 storage that has more than 500
binlog files / binlog metadata files (1000 total).

Implemented pagination for the 'ListObjectsV2()' AWS SDK C++ API call in the
's3_storage_backend::aws_context::list_objects()' method. S3 API has a hard limit
that sets the max number of items in the 'ListObjectsV2' response to be no
greater than 1000. In case when the storage has more than 1000 objects, we now
perform several 'ListObjectsV2' calls with the continuation token.

Added 'binlog_streaming.thousand_binlogs' MTR test case that executes
'FLUSH BINARY LOG' 1000 times and executes PBS two times, on an empty and
populated storage.

Co-authored-by: Copilot <copilot@github.com>
@percona-ysorokin percona-ysorokin merged commit c8d82a8 into 0.2 Apr 24, 2026
7 checks passed
@percona-ysorokin percona-ysorokin deleted the s3_list_pagination branch April 24, 2026 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant