1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Regex support in StreamDevice. |
From: | "Li, Ji via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Thu, 12 May 2022 21:47:21 +0000 |
Hi,
We have an IOC based on streamdevice which had been work well until it was recently updated to base 7.0.5 and StreamDevice 2.8.10. The IOC reported erros on startup:
----------------------------------------------------------------------
2022/05/12 17:20:06.024569 _main_ No converter registered for format '%/'
2022/05/12 17:20:06.024610 _main_ var.p line 398: in format string: "%/^(?|\"([^\"]*)\"|([^\"][^ ]*))/"
2022/05/12 17:20:06.024616 _main_ var.p line 398: in command 'in'
2022/05/12 17:20:06.024620 _main_ var.p line 395: in protocol 'var_g_string'
2022/05/12 17:20:06.024627 _main_ while compiling protocol 'var_g_string(position.dim[0].name,XFM:MAIA)' for 'XFM:MAIA:X_POS_DIM_NAME'
2022/05/12 17:20:06.024633 _main_ XFM:MAIA:X_POS_DIM_NAME: Protocol parse error
2022/05/12 17:20:06.024639 _main_ XFM:MAIA:X_POS_DIM_NAME: Record initialization failed
----------------------------------------------------------------------
It seems "%/^(?|\"([^\"]*)\"|([^\"][^ ]*))/" in protocol var_g_string could not be recognized as a regular _expression_.
The StreamDevice was built against PCRE package, and:
----------------------------------------------------------------------
liji@xf04bm-maia:/epics/iocs/maia$ ldd bin/linux-x86_64/maia | grep pcre
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007fcd23fdb000)
----------------------------------------------------------------------
What could be preventing streamdevice from parsing protocols with regular expressions?
Best,
-Ji |