-
Notifications
You must be signed in to change notification settings - Fork 607
AVS-SDK 1.14.0 Process exists (or crashes) when Multiple Barge-ins are done and internet connectivity is Lost #1468
Comments
Hello @indrachatterjee86, Thank you for bringing this to our attention and providing the logs. We will try and reproduce this locally. It would probably be very helpful if you would post a stack backtrace for this crash. Thank you again, |
Hello @scotthea-amazon Is there any other way that i can generate the stack trace on my machine. NOTE: I do not have enough space on the device to install gdb and attach a debugger while process is running. |
Hi @indrachatterjee86, just want to confirm if you executed "ulimit -c unlimited" in the same console that you run the SampleApp with? |
Hi @kclchan, we are starting alexa from a start script and this script executed on board boot up. "ulimit -c unlimited" command is executed on ssh session of our board. |
Hello @kclchan , We have a system which has a read only root file system. Hence, Core file might not have been generated. To reproduce this, we have added the command "ulimit -c unlimited" just above the alexa binary execution command. I shall add the core stack trace if i am able to get the same. |
We've been seeing the same issue in our fork of 1.14 https://github.com/xmos/avs-device-sdk/
And running
We couldn't replicate the issue in 1.13 so we're rolling back to that version until this issue is fixed. It looks like the bug is related to the "pre-buffering" changes to AudioPlayer in 1.14 https://github.com/alexa/avs-device-sdk/releases/tag/v1.14 EDIT: Core dump: avssegfault_core.zip (~400MB uncompressed) |
I just want to add to this thread as I am seeing similar issue of Segfault. I am compiling and running on a Pi3 and crashes occur around trigger detection as originally stated above. Have seen similar symptom in v1.13 SDK as well. After upgrading to v1.14 I still see crashes around trigger detection. I have added my bt if it helps: |
Any quick out-of-release updates that we can try is appreciated as the crashes have become a show-stopper for us. Thanks. |
Hi @az2022 and @oscarbailey-xmos, thank you so much for the backtrace, it's extremely useful. Looking at the backtrace, the crash happened in AudioPlayer::cancelDirective where it uses the executor is trying to cleanup the Please follow the example code in https://en.cppreference.com/w/cpp/container/list/erase to change the logic in the for loop a bit to fix this issue. Thanks! |
@kclchan - Thanks for getting back. Will give it a try. BTW, can you share when's the next target release of AVS-SDK please? |
After applying the patch I am still seeing a Segfault but my backtrace doesn't show much this time: It appeared to die in Listening state:########################### Thinking...########################### ############################################################################## RenderTemplateCard#----------------------------------------------------------------------------- Focus State : FOREGROUNDTemplate Type : BodyTemplate2Main Title : Who wrote walden?############################################################################## ########################### Speaking...########################### ######################################## Alexa is currently idle!######################################## ############################################################################## RenderTemplateCard - Cleared############################################################################## ############################ Listening...############################ ########################### Thinking...########################### ############################################################################## RenderTemplateCard#----------------------------------------------------------------------------- Focus State : FOREGROUNDTemplate Type : BodyTemplate2Main Title : What is the capital of australia?############################################################################## ########################### Speaking...########################### ############################ Listening...############################ ./alexa: line 12: 1116 Segmentation fault (core dumped) LD_LIBRARY_PATH=/lib/avslibs /lib/avslibs/SampleApp -C /home/pi/sdk-folder/AlexaClientSDKConfig.json -C /home/pi/sdk-folder/vteConfigSnsrAP.json |
Changes in this update: **Enhancements** * Added `SystemSoundPlayer` to [ApplicationUtilities](https://alexa.github.io/avs-device-sdk/namespacealexa_client_s_d_k_1_1application_utilities.html). `SystemSoundPlayer` is a new class that plays pre-defined sounds. Sounds currently supported include the wake word notification and the end of speech tone. This change is internal and you don't need to update your code. * Removed [Echo Spatial Perception (ESP)](https://developer.amazon.com/blogs/alexa/post/042be85c-5a62-4c55-a18d-d7a82cf394df/esp-moves-to-the-cloud-for-alexa-enabled-devices) functionality from the Alexa Voice Service (AVS) device SDK. Make sure you download and test your devices using the new AVS SDK sample app. If you're using an older version of the sample app, manually remove any references to ESP or errors occur during compile. * Added `onNotificationReceived` to `NotificationsObserverInterface`. `onNotificationReceived` broadcasts when `NotificationsObserverInterface` receives a new notification, instead of only sending the indicator state. This is important if you support a feature that requires a distinct signal for each notification received. See [NotificationsObserverInterface](https://alexa.github.io/avs-device-sdk/classalexa_client_s_d_k_1_1avs_common_1_1sdk_interfaces_1_1_notifications_observer_interface.html) for more details. * Added support for [Multilingual Mode](https://developer.amazon.com/docs/alexa-voice-service/system.html#localecombinations). With this enabled, Alexa automatically detects what language a user speaks by analyzing the spoken wake word and proceeding utterances. Once Alexa identifies the language, all corresponding responses are in the same language. The current supported language pairs are: - `[ "en-US", "es-US" ]` - `[ "es-US", "en-US" ]` - `[ "en-IN", "hi-IN" ]` - `[ "hi-IN", "en-IN" ]` - `[ "en-CA", "fr-CA" ]` - `[ "fr-CA", "en-CA" ]` <br/> **IMPORTANT**: Specify the locales your device supports in the [localeCombinations](https://developer.amazon.com/docs/alexa-voice-service/system.html#localecombinations) field in AlexaClientSDKConfig.json. This field can't be empty. If you don't set these values, the sample app fails to run. * Added two new system settings, [Timezone](https://developer.amazon.com/docs/alexa-voice-service/system.html#settimezone) and [Locale](https://developer.amazon.com/docs/alexa-voice-service/system.html#locales). - Timezone: For example, you can set the `defaultTimezone` to `America/Vancouver`. If you don't set a value, `GMT` is set as the default value. If you set a new timezone, make sure that your AVS system settings and default timezone stay in sync. To handle this, use the new class `SystemTimeZoneInterface`. See [System Interface > SetTimeZone](https://developer.amazon.com/docs/alexa-voice-service/system.html#settimezone) for more information. - Locale: For example, you can set `defaultLocale` to `en-GB`, instead of the default `en-US`. * The [SpeechRecognizer](https://developer.amazon.com/docs/alexa-voice-service/speechrecognizer.html) interface now supports the following functionalities. - Change wake word (`Alexa` supported for now). - Toggle start of request tone on/off. - Toggle End of request tone on/off. * Deprecated the [CapabilityAgents](https://alexa.github.io/avs-device-sdk/classalexa_client_s_d_k_1_1avs_common_1_1avs_1_1_capability_agent.html) `Settings{…}` library. `Settings {…}` now maps to an interface that's no longer supported. You might need to update your code to handle these changes. Read [Settings Interface](https://developer.amazon.com/docs/alexa-voice-service/per-interface-settings.html) for more details. * Added support for three new locals: Spanish - United States (ES_US), Hindi - India (HI_IN), and Brazilian - Portuguese (PT_BR). * Linked the atomic library to the sample app to prevent build errors on Raspberry Pi. **Bug Fixes** * Fixed resource leaking in [EqualizerCapabilityAgent](https://alexa.github.io/avs-device-sdk/classalexa_client_s_d_k_1_1capability_agents_1_1equalizer_1_1_equalizer_capability_agent.html) after engine shutdown. * [Issue 1391:](#1391) Fixed an issue where [SQLiteDeviceSettingsStorage::open](https://alexa.github.io/avs-device-sdk/classalexa_client_s_d_k_1_1settings_1_1storage_1_1_s_q_lite_device_setting_storage.html#a7733e56145916f7ff265c5c950add492) tries to acquire a mutex twice, resulting in deadlock. * [Issue 1468:](#1468) Fixed a bug in [AudioPlayer::cancelDirective](https://alexa.github.io/avs-device-sdk/classalexa_client_s_d_k_1_1capability_agents_1_1audio_player_1_1_audio_player.html#a2c710c16f3627790fcc3238d34da9361) that causes a crash. * Fixed Windows install script that caused the sample app build to fail - removed pip, flask, requests, and commentjson dependencies from the mingw.sh helper script. * Fixed issue: notifications failed to sync upon device initialization. For example, let's say you had two devices - one turned on and the other turned off. After clearing the notification on the first device, it still showed up on the second device after turning it on. * Fixed issue: barging in on a reminder caused it to stick in an inconsistent state, blocking subsequent reminders. For example, if a reminder was going off and you interrupted it, the reminder would get persist indefinitely. You could schedule future reminders, but they wouldn't play. Saying “Alexa stop” or rebooting the device fixed the “stuck” reminder. **Known Issues** * Music playback history isn't displayed in the Alexa app for certain account and device types. * When using Gnu Compiler Collection 8+ (GCC 8+), `-Wclass-memaccess` triggers warnings. You can ignore these, they don't cause the build to fail. * Android error `libDefaultClient.so not found` might occur. Resolve this by upgrading to ADB version 1.0.40. * If a device loses a network connection, the lost connection status isn't returned via local TTS. * ACL encounters issues if it receives audio attachments but doesn't consume them. * `SpeechSynthesizerState` uses `GAINING_FOCUS` and `LOSING_FOCUS` as a workaround for handling intermediate states. * Media steamed through Bluetooth might abruptly stop. To restart playback, resume the media in the source application or toggle next/previous. * If a connected Bluetooth device is inactive, the Alexa app might indicates that audio is playing. * The Bluetooth agent assumes that the Bluetooth adapter is always connected to a power source. Disconnecting from a power source during operation isn't yet supported. * When using some products, interrupted Bluetooth playback might not resume if other content is locally streamed. * `make integration` isn't available for Android. To run Android integration tests, manually upload the test binary and input file and run ADB. * Alexa might truncate the beginning of speech when responding to text-to-speech (TTS) user events. This only impacts Raspberry Pi devices running Android Things with HDMI output audio. * A reminder TTS message doesn't play if the sample app restarts and loses a network connection. Instead, the default alarm tone plays twice. * `ServerDisconnectIntegratonTest` tests are disabled until they are updated to reflect new service behavior. * Bluetooth initialization must complete before connecting devices, otherwise devices are ignored. * The `DirectiveSequencerTest.test_handleBlockingThenImmediatelyThenNonBockingOnSameDialogId` test fails intermittently.
Hi @az2022, without a backtrace, it is not possible to root cause it. The original issue is fixed in v1.15 of the SDK. Could you see if you can still reproduce the issue with this new version of the SDK? |
Will try v1.15 SDK sometime next week. The trouble is difficulty reproducing this issue and when I see it the backtrace is wiped out! Thanks. |
I'm going to close this issue for now, since we believe it was fixed in a previous release. Please do re-open this issue if you are able to reproduce it using SDK 1.15 or 1.16. Thanks! |
Briefly summarize your issue:
With AVS-SDK 1.14.0, it is observed that AVS SDK process exists or crashes in between user query session.
What is the expected behavior?
Alexa Process should be alive and should not be killed.
What behavior are you observing?
Process Crash or Exist.
Provide the steps to reproduce the issue, if applicable:
Tell us about your environment:
AVS SDK Version 1.14.0 Cross Compiled to run on below Hardware.
Tell us what hardware you're using:
Other: Hardware: Samsung Artik 305 Secure Board
ARH: ARMv7
Tell us about your OS (Type & version):
Linux, Ubuntu 16.04
Kernel : Linux artik 4.4.71-UNRELEASED #1 SMP PREEMPT Wed Aug 14 19:29:31 IST 2019 armv7l armv7l armv7l GNU/Linux
Debug Logs (Attached)
alexa.log
The text was updated successfully, but these errors were encountered: