@@ -264,12 +264,13 @@ int UriParser::parse(Uri* result,
264264{
265265 enum RcEnum {
266266 // Value for the various RC error categories
267- rc_SUCCESS = 0 ,
268- rc_INVALID_FORMAT = -1 ,
269- rc_BAD_QUERY = -2 ,
270- rc_MISSING_DOMAIN = -3 ,
271- rc_MISSING_QUEUE = -4 ,
272- rc_MISSING_TIER = -5
267+ rc_SUCCESS = 0 ,
268+ rc_INVALID_FORMAT = -1 ,
269+ rc_BAD_QUERY = -2 ,
270+ rc_MISSING_DOMAIN = -3 ,
271+ rc_MISSING_QUEUE = -4 ,
272+ rc_MISSING_TIER = -5 ,
273+ rc_QUEUE_NAME_TOO_LONG = -6
273274 };
274275
275276 enum {
@@ -384,20 +385,11 @@ int UriParser::parse(Uri* result,
384385 }
385386
386387 if (result->d_path .length () > Uri::k_QUEUENAME_MAX_LENGTH) {
387- // TBD: Convert to a real error once certified all active queues are
388- // within the limit. When converting to an error, add test cases
389- // in the test driver.
390- BSLMT_ONCE_DO
391- {
392- bmqu::MemOutStream os;
393- os << " The queue name part of '" << uriString << " ' is exceeding "
394- << " the maximum size limit of " << Uri::k_QUEUENAME_MAX_LENGTH
395- << " . This is only a warning at the moment, but this limit "
396- << " will soon be enforced and queue URI will be rejected!" ;
397- bsl::cerr << " BMQALARM [INVALID_QUEUE_NAME]: " << os.str () << ' \n '
398- << bsl::flush;
399- BALL_LOG_ERROR << os.str ();
388+ if (errorDescription) {
389+ *errorDescription = " queue name exceeds 64 characters" ;
400390 }
391+ result->reset ();
392+ return rc_QUEUE_NAME_TOO_LONG;
401393 }
402394
403395 // Success
0 commit comments