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: | Re: FLNK length limit |
From: | "Johnson, Andrew N." <[email protected]> |
To: | "J. Lewis Muir" <[email protected]> |
Cc: | EPICS Tech Talk <[email protected]> |
Date: | Fri, 9 Feb 2018 19:34:44 +0000 |
Hi Lewis,
On Feb 9, 2018, at 10:44 AM, J. Lewis Muir <[email protected]> wrote:
Effectively yes, since we can now get/put string fields as char arrays. This didn’t actually require changes to the CA wire protocol and we don't now plan to ever enlarge the Channel Access 40 character DBF_STRING type.
In the same post, Andrew went on to say: No, the record name length is the independent variable and is currently 60 chars
plus the nil terminator. Your 60-12 calculation would only apply if it was the size of CA’s DBF_STRING type we were changing to 60, but inside the IOC we can make string fields any size we like (if you look at the mbb* records the **ST fields
are now all 26 characters long for example, because the internal dbAccess API supports enum strings up to that size, although CA only transports up to 16 characters). The CA protocol allows channel names to be any length, but there is probably a limit if you
get too close to the maximum UDP packet size though.
However, with support for writing a link field over Yes, although I prefer the term “char array” to “waveform” which is the name of a record type with an array as its VAL field.
Note that in earlier Base versions there is still a limit to the size of string you can put to a link field, which matters when you’re adding JSON field modifiers to the link address text – in 3.14.12 it’s 80 characters, 3.15.5 allows up to 256
characters. From 3.16 that fixed size buffer has gone away though.
HTH,
- Andrew
|