Crash with uridecodebin state change

We build a pipeline for vehicle plate detection, but when rtsp source sometimes disconnected, and the source bin state is reset
to GST_STATE_NULL and GST_STATE_PLAYING again for reconnecting, the pipeline crashes.

So we need some help for this , the system information and crash stacktrace are as below:

Tue Jul 27 16:08:00 2021
±----------------------------------------------------------------------------+
| NVIDIA-SMI 460.73.01 Driver Version: 460.73.01 CUDA Version: 11.2 |
|-------------------------------±---------------------±---------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 Off | 00000000:21:01.0 Off | 0 |
| N/A 71C P0 38W / 70W | 6871MiB / 15109MiB | 76% Default |
| | | N/A |
±------------------------------±---------------------±---------------------+
| 1 Tesla T4 Off | 00000000:21:02.0 Off | 0 |
| N/A 40C P0 27W / 70W | 186MiB / 15109MiB | 0% Default |
| | | N/A |
±------------------------------±---------------------±---------------------+

gdb) bt
#0 0x00007f89dcbd6504 in v4l2_get_context(int) () at ///opt/nvidia/deepstream/deepstream-5.1/lib/libcuvidv4l2.so
#1 0x00007f89dcbd4dd5 in CuvidV4L2_Ioctl () at ///opt/nvidia/deepstream/deepstream-5.1/lib/libcuvidv4l2.so
#2 0x00007f89dcdfc432 in plugin_ioctl () at /usr/lib/x86_64-linux-gnu/libv4l/plugins/libcuvidv4l2_plugin.so
#3 0x00007f898451d4c2 in v4l2_ioctl () at /usr/lib/x86_64-linux-gnu/libv4l2.so.0
#4 0x00007f8984a3ed0d in gst_v4l2_object_try_fmt () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#5 0x00007f8984a3f4df in gst_v4l2_object_add_colorspace () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#6 0x00007f8984a41af5 in gst_v4l2_object_probe_caps_for_format () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#7 0x00007f8984a4825a in gst_v4l2_object_probe_caps () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#8 0x00007f8984a4abdc in gst_v4l2_video_dec_open () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#9 0x00007f8aaf5aa4d3 in () at /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0
#10 0x00007f8984a4ec0c in gst_v4l2_video_dec_change_state () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libgstnvvideo4linux2.so
#11 0x00007f8b1a394d5e in gst_element_change_state () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#12 0x00007f8b1a395499 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#13 0x00007f8a3f72d4bb in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so
#14 0x00007f8a3f739422 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so
#15 0x00007f8a3f739d12 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so
#16 0x00007f8a3f739f61 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so
#17 0x00007f8b1a0f30bd in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007f8b1a10600e in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007f8b1a10e6f5 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007f8b1a10f10f in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007f8b1a0f7574 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007f8b1a368154 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#23 0x00007f8b1a0f9ab9 in g_object_notify_by_pspec () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007f8b1a3aad8c in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
–Type for more, q to quit, c to continue without paging–
#25 0x00007f8b1a3b6ed8 in gst_pad_push_event () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#26 0x00007f8b0cd9e48b in () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#27 0x00007f8b0cd9f9fd in () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#28 0x00007f8a600702cf in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so
#29 0x00007f8b1a3ac427 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#30 0x00007f8b1a3ac8bb in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#31 0x00007f8b1a3acce9 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#32 0x00007f8b1a3aa6b0 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#33 0x00007f8b1a3b6c0f in gst_pad_push_event () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#34 0x00007f8a0e011609 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so
#35 0x00007f8a0e01332e in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so
#36 0x00007f8a0e013e4c in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so
#37 0x00007f8b0cd7a5a2 in () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#38 0x00007f8b0cd8043e in () at /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0
#39 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#40 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#41 0x00007f8b143680c9 in gst_rtp_base_depayload_push () at /usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0
#42 0x00007f8a0c597f64 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so
#43 0x00007f8a0c5982d1 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so
#44 0x00007f8a0c598779 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so
#45 0x00007f8b143684a4 in () at /usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0
#46 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#47 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#48 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#49 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
–Type for more, q to quit, c to continue without paging–
#50 0x00007f8b1a39baab in gst_proxy_pad_chain_default () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#51 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#52 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#53 0x00007f8b1a39baab in gst_proxy_pad_chain_default () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#54 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#55 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#56 0x00007f8b1a39baab in gst_proxy_pad_chain_default () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#57 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#58 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#59 0x00007f8a0e25e6f5 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so
#60 0x00007f8b1a3ad89b in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#61 0x00007f8b1a3b5bc3 in gst_pad_push () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#62 0x00007f8a0e256ac6 in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so
#63 0x00007f8a0e25798d in () at /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so
#64 0x00007f8b1a3e2279 in () at /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0
#65 0x00007f8b19e40c70 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#66 0x00007f8b19e402a5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#67 0x00007f8b1b0976db in start_thread () at /lib/x86_64-linux-gnu/libpthread.so.0
#68 0x00007f8b1a79371f in clone () at /lib/x86_64-linux-gnu/libc.so.6

Do you have simple deepstream code to reproduce the crash?

Sorry, it only occured once or two times, and we have not found method to reproduce it

It is hard to find out the root cause with the log. Please help to provide reproducing method and steps.

We still can not find reproducing method, and the above is element state change log, the last two lines with state change for element uridecodebin and its parent source bin are suspicious

The log is fine. No clue in it.

Please create a new topic once able to reproduce.
Issue closed.