ovis icon indicating copy to clipboard operation
ovis copied to clipboard

fix ldmsd -a order dependence bug and enable independent -x listeners

Open baallan opened this issue 3 years ago • 12 comments

In addition to fixing sequence dependence (-x before -a yields wrong default authentication setting) of listener options, this patch extends the -x option syntax to -x xprt:port[:host][@auth[:authopts]] This allows multiple listener specifications with independent authentication methods from the command line to simplify startup via systemd service scripts or test cases. Previously all -x options were tied to the same (-a) authentication method.

Internal documentation of cleanup also added.

baallan avatar Dec 15 '21 04:12 baallan

looking into what it is about the test that causes this fail. there's been no protocol changes other than the command line, so if fixing a bug has unmasked another bug then fixing the test script will be the solution.

baallan avatar Dec 15 '21 17:12 baallan

@nichamon can you review this whenever you get a chance?

tom95858 avatar Dec 15 '21 17:12 tom95858

I don't propose this patch for the pending release if we are sticking to the tomorrow-release schedule.

Alternatively to this redesign, we accept order dependence of -a -A -x, but allow multiple specification of the -a -A and -x, with the last values seen for -a,-A becoming the defaults. This would require a different patch that unifies the -x processing with the -a/-A parsing but allow the redefinition of -a/-A until all cmdline options have processed.

baallan avatar Dec 16 '21 20:12 baallan

@baallan, should we revert your previous patch? I had erroneously assumed that it had been tested.

tom95858 avatar Dec 16 '21 21:12 tom95858

the previous patch wasn't applied. i closed it and opened this one after porting the previous patch to Mons rearranged option handling.

baallan avatar Dec 16 '21 21:12 baallan

@baallan, @nichamon why are we doing this exactly? What is wrong with the expanded auth configuration supported in the configuration files.

tom95858 avatar Dec 26 '21 00:12 tom95858

@baallan, @nichamon why are we doing this exactly? What is wrong with the expanded auth configuration supported in the configuration files.

@tom95858 Yes, the configuration commands in the configuration files support specifying a specific authentication for each listening endpoint. As @baallan was the one who made the changes, I'll wait for him to answer your questions.

In case someone isn't familiar with how to do this in the configuration files, here are some examples. You can find examples of configuration files with such usages here https://github.com/ovis-hpc/ovis/tree/OVIS-4/ldms/examples/cmdline-opts.

auth_add name=my_munge plugin=munge
listen xprt=sock port=10002 auth=my_munge # NOTE: auth=<auth_domain_name>
auth_add name=munge # If 'plugin' is not given, the plugin name and the authentication domain name are the same.
listen xprt=sock port=10003 auth=munge

nichamon avatar Jan 03 '22 19:01 nichamon

@baallan, @nichamon why are we doing this exactly? What is wrong with the expanded auth configuration supported in the configuration files.

@tom95858 this allows us to start a daemon from a command line in a systemd script with multiple listeners with distinct auth methods and no dependence on another configuration file. Such a daemon can be ready for immediate contact by user applications or by maestro configuration.

baallan avatar Jan 04 '22 18:01 baallan

@nichamon, @baallan, where are we on this. This patch seems to break things correct?

tom95858 avatar Jan 07 '22 21:01 tom95858

i need to respond yet to Mon's latest comments. converted to draft for now.

baallan avatar Jan 07 '22 21:01 baallan

@tom95858 why are you closing something marked as draft?

baallan avatar Apr 19 '22 17:04 baallan

@baallan because it's been in this state since December 14?

tom95858 avatar Apr 21 '22 01:04 tom95858

@baallan can we please close this?

tom95858 avatar Feb 25 '23 19:02 tom95858

Given the changes in adjacent parts of the code, I will need to redo from scratch enabling multiple listeners from the command line.

baallan avatar Feb 27 '23 15:02 baallan