Forum Discussion

Arie's avatar
Arie
Icon for Altostratus rankAltostratus
Jan 23, 2012

Data Group (Class) unavailable during updates, causing errors

I have a Class (Data Group) with just two entries, but every time I update the entries the iRule that depends on the class chokes.

 

 

The log indicates that the iRule can't find the value associated with the string it's looking for.

 

 

 

Judging by my observations and the Audit log, the process is as follows (when the user updates the class):

 

 

 

iRule Editor:

 

 

 

1) Entire Class is deleted

 

2) Class is rebuilt line by line

 

 

 

Web-based GUI:

 

 

 

1) Class entries are replaced one-by-one

 

 

 

Either way, it seems that for a brief period of time the class becomes unavailable. The particular class has only 2 entries so the duration of the unavailability is minimal, but given the number of requests per second the log reflects numerous errors.

 

 

 

It would seem that the duration would increase if the Class contained more items.

 

 

 

Is this a known problem? Is there a solution or workaround?

 

 

 

I realize that I could verify in the iRule whether the class exists, but the entries in the class are essential to the app routing decisions that need to be made and cannot be assumed.

 

  • Hi Arie,

     

     

    I believe that is what's happening. See this post for details:

     

     

    http://devcentral.f5.com/Community/GroupDetails/tabid/1082223/asg/50/aft/1172712/showtab/groupforums/Default.aspx

     

     

    BZ222648 still isn't fixed in any current LTM version. I'd suggest opening a case with F5 Support and ask them to attach your case to the bug ID to raise the visibility of the issue. I'd also suggest contacting your F5 or partner account manager and see if they can escalate the issue.

     

     

    Aaron
  • Arie's avatar
    Arie
    Icon for Altostratus rankAltostratus
    That's not good. I suppose I could implement "class exists" in a loop and break out only if the class truly exists as a very ugly workaround...

     

     

    Unfortunately, that would still leave the values in limbo as I can't check for values that may or may not be intended to be in the list.

     

     

    In the meantime, I'll log a case with F5 and hope that they'll remedy the issue. However, it looks like the problem was first reported 1.5 years ago...

     

    Maybe now that it's evident that the bug also affects very small data groups (mine has two values...) they'll elevate the priority.

     

  • Hi Arie,

     

     

    When I tested, the data group always existed, but the entries were deleted and then added back. Are you seeing a runtime error stating the data group doesn't exist when you make a change? Is it an internal or external data group?

     

     

    Can you reply back with your case number? You might ask Support whether it's possible to get a hotfix for the issue.

     

     

    Aaron
  • Arie's avatar
    Arie
    Icon for Altostratus rankAltostratus
    I guess there are essentially two conditions that can cause problems during an update to a class:

     

     

    1)

     

    The entire class doesn't exist anymore (which happens when the iRule editor is used to update a class).

     

     

     

    2)

     

    The class exists but it doesn't yet contain all the values.

     

     

     

    Perhaps I should add a control-value to the verification loop and check for its existence also. Based on my observations the list is generally populated in alphabetical order, so an item with a lot of Xs might do the trick. That would still leave the newly edited/added values as they are added last, but at least it'll minimize the problem.

     

     

     

    Hopefully F5 will come up with a fix soon...

     

     

     

    BTW, any idea whether using the CLI to update a class would make a difference?

     

  • Arie's avatar
    Arie
    Icon for Altostratus rankAltostratus
    Another idea to work around the issue: how about loading the Class into a Table?

     

     

    What would the performance penalty be?

     

  • There's a related bug noted in BZ381100. If you've been affected by this, could you open a case with F5 Support and ask to have your case attached to raise the visibility of the issue?

     

     

    Thanks, Aaron
  • Dears,

     

    Any Idea whether Bug 222648 or BZ381100 has been fixed yet or not?

     

    Regards,

     

    Mohammed Shiraz

     

  • Dears,

     

    Any Idea whether Bug 222648 or BZ381100 has been fixed yet or not?

     

    Regards,

     

    Mohammed Shiraz