dmwm / PHEDEX

CMS data-placement suite
8 stars 18 forks source link

Newline characters in PhEDEx datasvc error messages #1023

Open nikmagini opened 8 years ago

nikmagini commented 8 years ago

In case of error, the PhEDEx datasvc reports an error message with improperly escaped \n newline characters, e.g.

https://cmsweb.cern.ch/phedex/datasvc/perl/prod/nodes?node=aaaa

The 'NODE' parameter ("aaaa") to (eval) did not pass the 'node' callback\n\n

nataliaratnikova commented 8 years ago

Looking into this. Not clear why we try to escape the newline character, as it does not seem to be interpreted anywhere as such. This output is handled in PHEDEX::Web::Util::decode_http_error .

When error is displayed as HTML text (the datasvc output shown in the browser), <br/> would do better job, as already suggested by Tony in comment to this commit: https://github.com/dmwm/PHEDEX/commit/906c029c75876a3d45eae92a1c19c2d41a4e80bc But then <br/> will appear in the error printed out by the command line tools.

Unless we really have a use case for a multi-line error text, replacing newline by a whitespace, or empty string would be most suitable. Most CLI have to add a new line at the end anyway, because decode_http_error does not do it properly.