Skip to content

Commit 5193f8e

Browse files
switch to checking req type
1 parent f38b053 commit 5193f8e

File tree

3 files changed

+8
-13
lines changed

3 files changed

+8
-13
lines changed

include/aws/s3/private/s3_request.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ enum aws_s3_request_flags {
2222
AWS_S3_REQUEST_FLAG_RECORD_RESPONSE_HEADERS = 0x00000001,
2323
AWS_S3_REQUEST_FLAG_ALWAYS_SEND = 0x00000002,
2424
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL = 0x00000004,
25-
AWS_S3_REQUEST_FLAG_RESPONSE_ALLOCATED_FROM_POOL = 0x00000008,
2625
};
2726

2827
/**
@@ -258,9 +257,6 @@ struct aws_s3_request {
258257

259258
/* When true, this request has already been uploaded. we still prepare the request to check the durability. */
260259
uint32_t was_previously_uploaded : 1;
261-
262-
/* When true, this request has buffer allocated to response */
263-
uint32_t has_buffer_ticket_for_response : 1;
264260
};
265261

266262
AWS_EXTERN_C_BEGIN

source/s3_auto_ranged_get.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,7 @@ static bool s_s3_auto_ranged_get_update(
252252
AWS_S3_REQUEST_TYPE_GET_OBJECT,
253253
1 /*part_number*/,
254254
AWS_S3_REQUEST_FLAG_RECORD_RESPONSE_HEADERS |
255-
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL |
256-
AWS_S3_REQUEST_FLAG_RESPONSE_ALLOCATED_FROM_POOL);
255+
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL);
257256
++auto_ranged_get->synced_data.num_parts_requested;
258257

259258
break;
@@ -294,8 +293,7 @@ static bool s_s3_auto_ranged_get_update(
294293
AWS_S3_REQUEST_TYPE_GET_OBJECT,
295294
1 /*part_number*/,
296295
AWS_S3_REQUEST_FLAG_RECORD_RESPONSE_HEADERS |
297-
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL |
298-
AWS_S3_REQUEST_FLAG_RESPONSE_ALLOCATED_FROM_POOL);
296+
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL);
299297
request->part_range_start = part_range_start;
300298
request->part_range_end = part_range_start + first_part_size - 1; /* range-end is inclusive */
301299
++auto_ranged_get->synced_data.num_parts_requested;
@@ -346,7 +344,7 @@ static bool s_s3_auto_ranged_get_update(
346344
AWS_S3_AUTO_RANGE_GET_REQUEST_TYPE_GET_OBJECT_WITH_RANGE,
347345
AWS_S3_REQUEST_TYPE_GET_OBJECT,
348346
auto_ranged_get->synced_data.num_parts_requested + 1 /*part_number*/,
349-
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL | AWS_S3_REQUEST_FLAG_RESPONSE_ALLOCATED_FROM_POOL);
347+
AWS_S3_REQUEST_FLAG_ALLOCATE_BUFFER_FROM_POOL);
350348

351349
aws_s3_calculate_auto_ranged_get_part_range(
352350
auto_ranged_get->synced_data.object_range_start,

source/s3_meta_request.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1428,7 +1428,8 @@ static int s_s3_meta_request_incoming_body(
14281428
}
14291429

14301430
if (request->send_data.response_body.capacity == 0) {
1431-
if (request->has_buffer_ticket_for_response && request->ticket != NULL) {
1431+
/* Make sure that request is get, since puts can also have ticket allocated, which is used for request body. */
1432+
if (request->request_type == AWS_S3_REQUEST_TYPE_GET_OBJECT && request->ticket != NULL) {
14321433
request->send_data.response_body = aws_s3_buffer_ticket_claim(request->ticket);
14331434
} else {
14341435
size_t buffer_size = s_dynamic_body_initial_buf_size;
@@ -1851,7 +1852,7 @@ static struct aws_s3_request_metrics *s_s3_request_finish_up_and_release_metrics
18511852
struct aws_s3_meta_request *meta_request) {
18521853

18531854
if (metrics != NULL) {
1854-
/* Request is done streaming the body, the metrics for the request now. */
1855+
/* Request is done streaming the body, complete the metrics for the request now. */
18551856

18561857
if (metrics->time_metrics.end_timestamp_ns == -1) {
18571858
aws_high_res_clock_get_ticks((uint64_t *)&metrics->time_metrics.end_timestamp_ns);
@@ -2397,7 +2398,7 @@ struct aws_s3_meta_request_poll_write_result aws_s3_meta_request_poll_write(
23972398
aws_s3_buffer_ticket_claim(meta_request->synced_data.async_write.buffered_data_ticket);
23982399
}
23992400
} else {
2400-
AWS_LOGF_TRACE(
2401+
AWS_LOGF_ERROR(
24012402
AWS_LS_S3_META_REQUEST,
24022403
"id=%p: Illegal call to write(). Failed to acquire buffer memory.",
24032404
(void *)meta_request);
@@ -2424,7 +2425,7 @@ struct aws_s3_meta_request_poll_write_result aws_s3_meta_request_poll_write(
24242425
ready_to_send = true;
24252426
}
24262427

2427-
AWS_LOGF_DEBUG(
2428+
AWS_LOGF_TRACE(
24282429
AWS_LS_S3_META_REQUEST,
24292430
"id=%p: write(data=%zu, eof=%d) processed=%zu remainder:%zu previously-buffered=%zu. %s"
24302431
"part...",

0 commit comments

Comments
 (0)