Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added README instruction to use devleop, and added develop to travis.yml #135

Merged
merged 1 commit into from
Aug 31, 2021

Conversation

jdelapla
Copy link
Contributor

Issue #, if available:

Description of changes:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@jdelapla jdelapla merged commit 6bbbe84 into develop Aug 31, 2021
jdelapla added a commit that referenced this pull request Feb 3, 2022
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
hassanctech added a commit that referenced this pull request Jul 6, 2022
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* fix test

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
disa6302 added a commit that referenced this pull request Jul 12, 2023
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
disa6302 added a commit that referenced this pull request Jul 12, 2023
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* fix test

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
disa6302 added a commit that referenced this pull request Jul 12, 2023
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* fix test

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
disa6302 added a commit that referenced this pull request Jul 18, 2023
* Testing images stuff (#172)

* debug messages around ordering

* Changing start check

* debug message

* changing debug statement condition

* Block event metadata when the mkvgenerator has not moved past the header yet

* more logs

* != -> ==

* Duplicate event tracking

* Duplicate test added, tests that no longer apply have been removed

* Clang format

* fixing clang format test, removing unnecessary comment

* Undefined values of frame struct

* Merge develop into master (#178)

* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* fix test

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* Fail create call with flag 1 4 1 (#181)

* Modify jump from describe to create call based on a flag

* Fix up stream info

* fix printing, add unit test

* update gtest to newer version due to gcc > 11.2 causing failures, fixed in gtest 1.12.1, replaced deprecated macros

* clang-7 not available on newer Ubuntu/CI hosts, modifying to clang which should always work as its a link to an availble version not a specific version that needs constant updating

* missed explicit reference to clang-7, replace with general

* address comment about naming

Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Fix CI

* Test producer C build with removing justStartedStreaming flag

* Add completion timeout configurability

* Fix bug in unit test

* [ENHANCEMENT] Use new log level (#187)

* Add new log level

* Modify file logger

* Clean up logger functionality

* Updated the images

* Fix windows issue

* Fix windows issue

* Fix windows issue

---------

Co-authored-by: Divya Sampath Kumar <divku@amazon.com>

---------

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
Co-authored-by: Divya Sampath Kumar <divku@amazon.com>
hassanctech added a commit that referenced this pull request Aug 11, 2023
* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* Rebase develop with master (#193)

* Testing images stuff (#172)

* debug messages around ordering

* Changing start check

* debug message

* changing debug statement condition

* Block event metadata when the mkvgenerator has not moved past the header yet

* more logs

* != -> ==

* Duplicate event tracking

* Duplicate test added, tests that no longer apply have been removed

* Clang format

* fixing clang format test, removing unnecessary comment

* Undefined values of frame struct

* Merge develop into master (#178)

* Added README instruction to use devleop, and added develop to travis.yml (#135)

* Adding a generic utility for exponential backoff retries (#136)

* Adding a utility for exponential backoff retries
* Adding a utility to compute power
Testing: Added unit tests for all relevant changes

* updated cmake verison from 2.8 to 3.6.3 (#139)

* KVS Events feature (images/notifications) (#138)

* Images feature. Tests still incomplete, comments to follow.

* Address code review comments, fixed UT, formatted.

* Fixed compile errors from enum renames and struct type changes

* Unit test floating point issue from %i being able to divide by 0.

* Removed variable declaration from for loop and simplified redundant if statements.

* Changed enum to be bit shifted ints, allowed to bitwise or multiple events into a single API call

* updated struct to include versioning

* Style and comment update

* removed outdated comment

* Define moved back into an enum, macros added for internal bit-wise operations with associated enum

* added error messages to default case

* spacing for strings tag was incorrect

* Additional MKV api tests to ensure the correct formatting of MKV event fragments

* Missing declaration in Stream.h for putEventMetadata (#142)

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

* Adding error handler in PIC state machine and updating client/stream state machines to use the error handler on state transitions (#143)

* The commit includes following -
(1) Refactoring Exponential backoff utility by changing name(s) to use 'RetryStrategy'
(2) Minor logging improvements in  Exponential backoff utility
(3) Adding KVS retry strategy and related callbacks to be used in client and streams
(4) Adding a new error handler in PIC state machine
(5) Updating KVS client and stream state machines to use PIC error handler and exponential backoff retry strategy on encountering error while state transitions

* - Adding client callback to get retry strategy. This is particularly needed for unit testing
- Addressing PR feedback

* - Updating UTs to handle memory leak for offline streaming
- Addressing PR feedback

* Addressing PR feedback

* Update Client.c

trigger travis CI

* All events will have a unique L1 TAGS. (#145)

* Events mkv size bug (#144)

* committing to test out changes, added ability to increment the size of tags after appending additional SimpleTags

* updating logs

* tagsStart initialization was incorrect

* cleanup debug logs

* Unit test and clang sanitization

* accidental leftover comment forward slash

* Memory leak in unit test

* Removing if else that doesn't cover existing cases

* Unnecessary setting of variables that will not be used past this point in the function

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* Log git hash

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Expose retry count

* Move to callback model to get count and move retry state out of public header

* Fix potential NULL dereference

* Address comments

* Move state back to public header since unit tests are failing. Tests will have to fixedi n another PR

* Incorporating full jitter implementation of exponential backoff algorithm

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries (#155)

* Updating stepStateMachine to use stateTransitionHookFunc to get next retry wait time for local state retries

* Remove check for strategy type (#156)

* Test exp for same state
* Remove check for strategy type until we handle the STRATEGY_TYPE placement appropriately

* Decoupling retry strategy callbacks from the actual retry strategy, adding retry strategy type check before casting retry strategy state

* Fix PR feedback and add test for getExponentialBackoffRetryCount

* Add missing copy of retry strategy callbacks while creating kinesis video client and fix broken unit test

* Crate retry strategy after fixing up device info (#158)

* more specific service call results, will be used for clock skew auto correction (#159)

* Fix up bad log message (#160)

* setup ga; disable travis on develop

* fix clang-format check on ga

* fix ci file name

* Add retry coumt metric

* Fix %lu in logging

* Trigger CI

* Fix format specifiers

* fix wiindows, clang, ubsan

* fix windows, clang

* fix windows, clang

* fix clang-format

* fix windows

* fix windows

* fix windows

* fix windows

* fix windows

* fix ubsan and windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build

* fix windows build with powershell

* fix windows build with powershell

* fix windows build with powershell

* update call path windows

* update call path windows

* use aws-actions for creds

* add region

* fix aws-actions

* fix aws-actions

* fix aws-actions

* use environment

* unset session token

* unset session token

* unset session token

* unsetting the token

* fix builds

* block tags before first cluster, post tags after (#151)

* block tags before first cluster, post tags after

* missing bool flip

* correction to size expectations

* use clang 7

* remove continue-on-error

* setup arm cross-compilation with qemu

* fix msan and ubsan

* fix windows build

* fix windows build; remove export

* fix test instruction

* fix test instruction

* fix test instruction; get pwd and dir

* fix test instruction with backslash

* find current directory

* check the contents of the build folder

* execute the test

* disable windows defender

* disable windows defender

* disable windows defender

* fix typo

* use docker image for windows

* remove msvc action

* remove msvc action

* use msvc 2017

* use windows 2016

* use vcvars64

* run tests

* check verbose logs

* update travis and ga for working builds

* fix windows build on travis

* fix mac builds on ga

* update cmake

* fix mac builds

* fix windows build

* initialize firstFrameFirst

* fix windows build

* fix working builds

* move windows build from travis to ga

* fix indentation

* run tests with arm

* fix arm

* remove exports, use latest, fix firstFramefirst

* set log-level to 2, update mac build name, remove windows from travis

* check CC

* remove echo

* update windows log level

* update cross-compilation builds for ga

* There are several missing 'accepted' states from the Stream State mac… (#148)

* There are several missing 'accepted' states from the Stream State machine

* Clang format

* Extra accepted states found in Client state machine

* I still forget to clang format...

* Update StreamState.c

trigger travis ci

* needed for tagResourceResult

Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>

* remove travis.yml

* Give Frame a name

* Develop (#177)

* fix deadlock

* fix semaphore release and lock release order

* create new mutex around putFrame API call, necessary due to logStreamMetric insidue putframe needing to acquire streamListLock which would otherwise let other threads call putFrame unless we create a new high level lock

* set client after we verify it is not NULL

Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* fix test

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>

* Fail create call with flag 1 4 1 (#181)

* Modify jump from describe to create call based on a flag

* Fix up stream info

* fix printing, add unit test

* update gtest to newer version due to gcc > 11.2 causing failures, fixed in gtest 1.12.1, replaced deprecated macros

* clang-7 not available on newer Ubuntu/CI hosts, modifying to clang which should always work as its a link to an availble version not a specific version that needs constant updating

* missed explicit reference to clang-7, replace with general

* address comment about naming

Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Fix CI

* Test producer C build with removing justStartedStreaming flag

* Add completion timeout configurability

* Fix bug in unit test

* [ENHANCEMENT] Use new log level (#187)

* Add new log level

* Modify file logger

* Clean up logger functionality

* Updated the images

* Fix windows issue

* Fix windows issue

* Fix windows issue

---------

Co-authored-by: Divya Sampath Kumar <divku@amazon.com>

---------

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
Co-authored-by: Divya Sampath Kumar <divku@amazon.com>

* Fix ubsan failure (#197)

* Fix ubsan failure

* Bring back 4.4

* Add threadpool (#199)

* Thread safe blocking queue implemented

* full suite of unit tests for threadblockingqueue, and added tests and functionality for 'empty' semaphore

* remove checks in destructor

* Initial implementation commit of threadpool

* * Fixed bugs in Semaphore.c
        *lossy signal
        *race condition deadlock in free
        *ununitialized atomics
* Added corresponding tests to complete missing coverage
* Added tests for Threadpool

* Removed unused tests

* clang formatting

* Address sanitizer fixes

* addressing more address sanitizer issues

* Accidental deletion undone

* Fixing windows build since it doesn't support INT32_MAX macro

* Allow threadgetcount test some time for threads to settle to get expected counts

* Fix windows build issues

* For loop variable initialized outside for loop for some compilers

* Added comments to header file, changed valid inputs for threadpoolCreate to require min & max to be > 0

* Fixup tests to account for new min/max > 0 requirement

---------

Co-authored-by: Divya Sampath Kumar <disa6302@colorado.edu>

* Remove INLINE from functions that are declared but not defined because it's not actually doing anything and creating warnings (#201)

* Test logger (#202)

* Add string length checks for events (#203)

* Clang format (#204)

* Remove printing cpd

* Parellel build only the failing test

* Release 1.0.0

* Log the content type when they don't match (#200)

---------

Co-authored-by: jdelapla <delaplan@amazon.com>
Co-authored-by: Anurag Katey <kateyanurag@users.noreply.github.com>
Co-authored-by: Niyati Maheshwari <niyatim23@gmail.com>
Co-authored-by: Hassan Sahibzada <hsahibza@amazon.com>
Co-authored-by: Anurag Katey <akatey@amazon.com>
Co-authored-by: Dave Johansen <dave@pitchaware.com>
Co-authored-by: Hassan Sahibzada <hassan.sahibzada@datadoghq.com>
Co-authored-by: Divya Sampath Kumar <divku@amazon.com>
Co-authored-by: Dave Johansen <davejohansen@gmail.com>
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.

None yet

2 participants