On Tue, 2005-11-08 at 13:14 -0500, Robert Story wrote:
> On Tue, 08 Nov 2005 10:02:12 +0000 Dave wrote:
> DS> If you look at the message where I first reported my new implementation,
> DS> that explicitly states that there *are* some backwards-compatibility
> DS> issues.  Mostly fairly minor (e.g. -i vs -I), but they are there.
> 
> Hmm... I just re-read the thread, and I didn't see any such caveats. I also
> noticed that your original intent was to replace the original implementation.

My apologies.
I thought I'd mentioned these explicitly - seems I was wrong.
Sorry.


> Are there good reasons for the incompatibilities?

Apart from trying to annoy you and Wes, you mean?   :-)
What do you think, Robert?  Yes - there are good reasons
for the incompatibilities. Give me a *little* credit, please!


> Especially something like -i vs -I, which seems like it would be trivial to 
> fix.

I was deliberately trying to improve the consistency between configuring
events and configuring monitors - in particular for specifying which
varbinds to add to a notification.

Wes' original implementation had two different meanings for '-i'
With "notificationEvent", it added an individual instance (rather)
   than wildcarded) varbind to the notification payload
With "monitor", it specified that the *whole* monitor entry referred
   to a specific instance (rather than a wildcarded object), and
   there was no way to add an exact instance varbind to the payload.

I tweaked things so that '-i' referred to the notification payload
varbind in both cases, and introduced a new '-I' flag for the instance
based monitor.
   The config parser *tries* to handle the old "monitor -i" semantics,
but it's not infallible.



> DS> And the behaviour is subtly different as well (e.g. what notifications
> DS> are sent when an explicit event is specified).
> 
> But does the behaviour do what the MIB says it should?

In most cases - yes.  (E.g. not generating a mteTrigger*
notification unless the mteEventNotificationTable explicitly
says to do so, whether to generate traps on startup).

In one particular case - no.
  (The Event MIB spec is broken wrt the order in which varbinds
   are added to the notification payload list.  My implementation
   supports both the "correct" order, and the order that actually
   works properly, defaulting to the working behaviour)
But that's requires a fairly specific configuration to trigger
the difference, so I don't expect it to cause too many problems.


> DS> > I don't particularly like this option, but will bend to the will of the
> DS> > people. I would argue that the header name for the old code should
> DS> > indicated it is the old code.
> DS> 
> DS> Like 'disman/old-event-mib' does, you mean?
> 
> I'm fine with that for the old stuff. I don't really like the idea of a new
> third option for the new code, and breaking existing packages/build scripts.

What about issuing a warning for the new code (but including it anyway)?



> DS> >                           You're not going to easily get
> DS> > people to use the new code if it isn't turned on easily
> DS> > in the fashion they're used to.
> DS> 
> DS> But the new code is being included by default.  They don't
> DS> *need* to turn it on - it'll be provided automatically.
> 
> But the people using the old implementation will be forced to change something
> to even be able to configure.

Ah, diddums! :-)    It's not exactly a difficult change.

Actually, I see that as an advantage, because it means that they will
*definitely* know that something has changed, and will be forced to
think about which version they want to use.   Remember that we're
talking about early adopters here - typically the somewhat more
experimentally minded people.


I could live with issuing a warning about the change, but continuing
the configuration to use the new implementation anyway.  That wouldn't
require touching anything, but would still alert people that things
had changed. Or alerting those who bother to read the messages, anyway.

That's probably the best compromise I can come up with.
How does that sound to you?


Dave


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to