Channel name length limit


#1

It seems that there’s a hard limit of 128 characters for channel names. After that the API responds with internal server error:

Traceback (most recent call last):
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/internal/common/api/utils.py", line 130, in func_wrapper
    return func(*args, **kwargs)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/internal/common/api/utils.py", line 176, in func_wrapper
    raise NeptuneServerResponseErrorException(exc.status, exc)
neptune.internal.common.api.exceptions.NeptuneServerResponseErrorException: status: 500, response_message: Internal Server Error
Traceback (most recent call last):
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/internal/common/api/utils.py", line 160, in func_wrapper
    return func(*args, **kwargs)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/internal/common/api/utils.py", line 197, in func_wrapper
    return func(*args, **dict(kwargs, headers_handler=headers_handler))
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/apis/default_api.py", line 1895, in create_channel
    headers_handler=params.get('headers_handler'))
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/api_client.py", line 333, in call_api
    response_type, auth_settings, callback, headers_handler)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/api_client.py", line 155, in __call_api
    post_params=post_params, body=body)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/api_client.py", line 369, in request
    body=body)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/rest.py", line 164, in POST
    body=body)
  File "/home/koz4k/miniconda3/envs/t2t/lib/python3.5/site-packages/neptune/generated/swagger_client/rest.py", line 132, in request
    raise ApiException(http_resp=r)
neptune.generated.swagger_client.rest.ApiException: (500)
Reason: Server Error
HTTP response headers: {'Date': 'Thu, 27 Sep 2018 13:59:29 GMT', 'Via': '1.1 google', 'Alt-Svc': 'clear', 'Server': 'nginx', 'Content-Type': 'application/json;charset=utf-8', 'Transfer-Encoding': 'chunked'}
HTTP response body: Internal Server Error

Is there a chance of removing or at least increasing this limit? We’re currently working with the tensor2tensor library which tends to generate long names for TF summaries, such as:

autoencoder_autoencoder_ordered_discrete/parallel_0_7/autoencoder_ordered_discrete/autoencoder_ordered_discrete/image_modality/image_modality/targets_bottom/image

Working around this limit would require us to come up with some heuristic to shorten those names, which would be a hacky and not very general solution. I think a limit of 512 characters would be enough.

Also, a meta-issue: it wouldn’t hurt to have more descriptive errors from input validation than “internal server error”. I just spent about 2 hours trying to figure out the cause.


#2

Hi,

Yeah, we definitely need to work on this error message.

I’ll talk to the team about that, and if there are no technical issues, we should increase the limit soon

Regards,
Hubert


#3

Thank you very much.