Skip to content

Commit 21a3a89

Browse files
author
Krish
committed
bugfix + lint
1 parent dda9b16 commit 21a3a89

File tree

5 files changed

+24
-27
lines changed

5 files changed

+24
-27
lines changed

include/aws/s3/s3_client.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ typedef void(aws_s3_client_shutdown_complete_callback_fn)(void *user_data);
262262
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html#API_PutObject_RequestSyntax
263263
* If an error occurs, call aws_raise_error(E) with a proper error code and return NULL.
264264
*/
265-
typedef struct aws_string *(aws_s3_meta_request_full_object_checksum_fn)(struct aws_s3_meta_request *meta_request,
265+
typedef struct aws_string *(aws_s3_meta_request_full_object_checksum_fn)(struct aws_s3_meta_request * meta_request,
266266
void *user_data);
267267

268268
enum aws_s3_meta_request_tls_mode {
@@ -429,7 +429,7 @@ typedef int(aws_s3_meta_request_upload_review_fn)(
429429
* @return The aws_s3express_credentials_provider.
430430
*/
431431
typedef struct aws_s3express_credentials_provider *(
432-
aws_s3express_provider_factory_fn)(struct aws_allocator *allocator,
432+
aws_s3express_provider_factory_fn)(struct aws_allocator * allocator,
433433
struct aws_s3_client *client,
434434
aws_simple_completion_callback on_provider_shutdown_callback,
435435
void *shutdown_user_data,
@@ -1570,7 +1570,7 @@ int aws_s3_request_metrics_get_connection_id(const struct aws_s3_request_metrics
15701570

15711571
/* Get the pointer to the request that attempt was made from. Always available. */
15721572
AWS_S3_API
1573-
int aws_s3_request_metrics_get_request_id(const struct aws_s3_request_metrics *metrics, size_t *request_id);
1573+
int aws_s3_request_metrics_get_request_id(const struct aws_s3_request_metrics *metrics, size_t *out_request_id);
15741574

15751575
/* Get the thread ID of the thread that request was made from. AWS_ERROR_S3_METRIC_DATA_NOT_AVAILABLE will be raised if
15761576
* data not available */

source/s3_client.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2168,9 +2168,10 @@ void aws_s3_client_update_connections_threaded(struct aws_s3_client *client) {
21682168
* request now and release it. */
21692169
/* Update the error code for the metrics of the request here since we never acquire/release a connection */
21702170
request->send_data.metrics->crt_info_metrics.error_code = AWS_ERROR_S3_CANCELED;
2171-
2171+
21722172
/* Record end times as well */
2173-
aws_high_res_clock_get_ticks((uint64_t *)&request->send_data.metrics->time_metrics.s3_request_last_attempt_end_timestamp_ns);
2173+
aws_high_res_clock_get_ticks(
2174+
(uint64_t *)&request->send_data.metrics->time_metrics.s3_request_last_attempt_end_timestamp_ns);
21742175
request->send_data.metrics->time_metrics.s3_request_total_duration_ns =
21752176
request->send_data.metrics->time_metrics.s3_request_last_attempt_end_timestamp_ns -
21762177
request->send_data.metrics->time_metrics.s3_request_first_attempt_start_timestamp_ns;

source/s3_meta_request.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1374,7 +1374,7 @@ static int s_s3_meta_request_incoming_headers(
13741374
if (request->send_data.request_id == NULL && aws_byte_cursor_eq(name, &g_request_id_header_name)) {
13751375
request->send_data.request_id = aws_string_new_from_cursor(connection->request->allocator, value);
13761376
if (collect_metrics) {
1377-
request->send_data.metrics->req_resp_info_metrics.request_id =
1377+
request->send_data.metrics->req_resp_info_metrics.request_attempt_id =
13781378
aws_string_new_from_cursor(connection->request->allocator, value);
13791379
}
13801380
}

source/s3_request.c

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,8 @@ void aws_s3_request_setup_send_data(struct aws_s3_request *request, struct aws_h
139139
request->send_data.metrics->time_metrics.retry_delay_start_timestamp_ns = request->retry_start_timestamp_ns;
140140
request->send_data.metrics->time_metrics.retry_delay_end_timestamp_ns = request->retry_end_timestamp_ns;
141141
if (request->retry_end_timestamp_ns != -1) {
142-
request->send_data.metrics->time_metrics.retry_delay_duration_ns = request->retry_end_timestamp_ns - request->retry_start_timestamp_ns;
142+
request->send_data.metrics->time_metrics.retry_delay_duration_ns =
143+
request->retry_end_timestamp_ns - request->retry_start_timestamp_ns;
143144
}
144145

145146
/* set pointer to request */
@@ -569,15 +570,10 @@ int aws_s3_request_metrics_get_connection_id(const struct aws_s3_request_metrics
569570
return AWS_OP_SUCCESS;
570571
}
571572

572-
int aws_s3_request_metrics_get_request_id(
573-
const struct aws_s3_request_metrics *metrics,
574-
const struct aws_string **out_request_id) {
573+
int aws_s3_request_metrics_get_request_id(const struct aws_s3_request_metrics *metrics, size_t *out_request_id) {
575574
AWS_PRECONDITION(metrics);
576575
AWS_PRECONDITION(out_request_id);
577-
if (metrics->crt_info_metrics.request_id == NULL) {
578-
return aws_raise_error(AWS_ERROR_S3_METRIC_DATA_NOT_AVAILABLE);
579-
}
580-
*out_request_id = metrics->crt_info_metrics.request_id;
576+
*out_request_id = (size_t)metrics->crt_info_metrics.request_id;
581577
return AWS_OP_SUCCESS;
582578
}
583579

tests/s3_mock_server_tests.c

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -245,9 +245,10 @@ static int s_validate_retry_metrics(struct aws_array_list *metrics_list, uint32_
245245
ASSERT_SUCCESS(s_validate_create_multipart_upload_metrics(metrics));
246246

247247
/* All of the middle should be Upload Parts*/
248-
/* This check assumes each request fails 'expected_failures' number of times and then succeeds.
249-
* So for each part, we would have expected_failures + 1 attempts.
250-
* We make sure all of the attempts have the same request_first_attempt_start_time and the last attempt has an end time. */
248+
/* This check assumes each request fails 'expected_failures' number of times and then succeeds.
249+
* So for each part, we would have expected_failures + 1 attempts.
250+
* We make sure all of the attempts have the same request_first_attempt_start_time and the last attempt has an end
251+
* time. */
251252
size_t failed_count = 0;
252253
for (size_t i = 1; i < aws_array_list_length(metrics_list) - 1; i = i + expected_failures + 1) {
253254
aws_array_list_get_at(metrics_list, &metrics, i);
@@ -283,18 +284,18 @@ static int s_validate_fail_metrics(struct aws_array_list *metrics_list, uint32_t
283284
aws_array_list_get_at(metrics_list, (void **)&metrics, 0);
284285
ASSERT_SUCCESS(s_validate_create_multipart_upload_metrics(metrics));
285286

286-
/* It is difficult to simulate forced failure and be precise about how a request fails if there are multiple connections.
287-
* Assuming, the first request itself is failing, all of the other parts are force cancelled.
288-
* If there are n parts, we would record n + 5 metrics. 5 retries for the first part alone. */
287+
/* It is difficult to simulate forced failure and be precise about how a request fails if there are multiple
288+
* connections. Assuming, the first request itself is failing, all of the other parts are force cancelled. If there
289+
* are n parts, we would record n + 5 metrics. 5 retries for the first part alone. */
289290

290291
/* First part fails 5 times */
291292
aws_array_list_get_at(metrics_list, &metrics, 1);
292293
ASSERT_TRUE(metrics->crt_info_metrics.error_code != AWS_ERROR_SUCCESS);
293-
for(size_t i = 1; i < 6; i++) {
294+
for (size_t i = 1; i < 6; i++) {
294295
aws_array_list_get_at(metrics_list, &metrics2, i + 1);
295296
ASSERT_INT_EQUALS(
296-
metrics->time_metrics.s3_request_first_attempt_start_timestamp_ns,
297-
metrics2->time_metrics.s3_request_first_attempt_start_timestamp_ns);
297+
metrics->time_metrics.s3_request_first_attempt_start_timestamp_ns,
298+
metrics2->time_metrics.s3_request_first_attempt_start_timestamp_ns);
298299
ASSERT_INT_EQUALS(metrics->crt_info_metrics.retry_attempt + 1, metrics2->crt_info_metrics.retry_attempt);
299300
ASSERT_TRUE(metrics2->crt_info_metrics.error_code != AWS_ERROR_SUCCESS);
300301
ASSERT_SUCCESS(s_validate_upload_part_metrics(metrics, false));
@@ -303,12 +304,12 @@ static int s_validate_fail_metrics(struct aws_array_list *metrics_list, uint32_t
303304
ASSERT_SUCCESS(s_validate_upload_part_metrics(metrics, true));
304305

305306
/* Rest of the request should have been cancelled */
306-
for(size_t i = 7; i < parts + 6; i++){
307+
for (size_t i = 7; i < parts + 6; i++) {
307308
aws_array_list_get_at(metrics_list, &metrics, i);
308309
ASSERT_TRUE(metrics->crt_info_metrics.error_code == AWS_ERROR_S3_CANCELED);
309310
ASSERT_SUCCESS(s_validate_upload_part_metrics(metrics, true));
310311
}
311-
312+
312313
/* Last metrics should be AbortMPU*/
313314
metrics = NULL;
314315
aws_array_list_get_at(metrics_list, (void **)&metrics, aws_array_list_length(metrics_list) - 1);
@@ -488,8 +489,7 @@ TEST_CASE(multipart_upload_failure_with_mock_server) {
488489
// check if number of metrics received for each part is n
489490
aws_s3_meta_request_test_results_init(&meta_request_test_results, allocator);
490491
ASSERT_SUCCESS(aws_s3_tester_send_meta_request_with_options(&tester, &put_options, &meta_request_test_results));
491-
ASSERT_SUCCESS(
492-
s_validate_fail_metrics(&meta_request_test_results.synced_data.metrics, parts));
492+
ASSERT_SUCCESS(s_validate_fail_metrics(&meta_request_test_results.synced_data.metrics, parts));
493493

494494
aws_s3_meta_request_test_results_clean_up(&meta_request_test_results);
495495
}

0 commit comments

Comments
 (0)