Asciinema: Falha no upload com "tubo quebrado"

Criado em 28 jan. 2019  ·  7Comentários  ·  Fonte: asciinema/asciinema

$ asciinema upload /var/folders/v2/g27ngtds20zg60cy_f2jb_l80000gn/T/tmpub1dsng9-ascii.cast
asciinema: upload failed: <urlopen error [Errno 32] Broken pipe>
asciinema: retry later by running: asciinema upload /var/folders/v2/g27ngtds20zg60cy_f2jb_l80000gn/T/tmpub1dsng9-ascii.cast

Aqui está o aplicativo na pasta tmp

$ exa -l  /var/folders/v2/g27ngtds20zg60cy_f2jb_l80000gn/T/tmpub1dsng9-ascii.cast
.rw------- 5.8M user 28 Jan 16:33 /var/folders/v2/g27ngtds20zg60cy_f2jb_l80000gn/T/tmpub1dsng9-ascii.cast

Todos 7 comentários

Não sei por que você não está recebendo uma mensagem de erro adequada, mas há um limite de 5 milhões para upload de arquivos. Veja # 91

Sim, esse é um problema de limite de tamanho.

asciinema tem um manipulador de erros para o status 413 (que é retornado pelo servidor web neste caso), mas parece que nunca é tratado corretamente devido a como o urllib do Python opera. Você pode ler mais sobre o problema aqui: https://github.com/kennethreitz/requests/issues/2422#issuecomment -184012765

Tive o mesmo problema hoje. O que você acha sobre uma medida provisória de emitir um aviso do lado do cliente se o arquivo a ser carregado tiver mais de 5 milhões?

Estou regularmente encontrando-o bem abaixo do limite de 5 milhões.

[schwarzgerat](2) $ ls -l /tmp/user/1000/tmpaxpadd2n-ascii.cast 
-rw------- 1 dank dank 592498 2020-01-05 08:57 /tmp/user/1000/tmpaxpadd2n-ascii.cast
[schwarzgerat](0) $ asciinema upload /tmp/user/1000/tmpaxpadd2n-ascii.cast 
asciinema: upload failed: <urlopen error [Errno 32] Broken pipe>
asciinema: retry later by running: asciinema upload /tmp/user/1000/tmpaxpadd2n-ascii.cast
[schwarzgerat](1) $ 

Aquele é apenas 600K. Joga perfeitamente localmente.

Pode reproduzir aqui:

$ asciinema upload display_sweep.cast
asciinema: upload failed: <urlopen error [Errno 32] Broken pipe>
asciinema: retry later by running: asciinema upload display_sweep.cast

$ ll -h display_sweep.cast
-rw-r--r-- 1 nicoo nicoo 2.3M Jan 14 21:29 display_sweep.cast

A mesma coisa acontece com arquivos menores também. Tentei reproduzir com curl mas funcionou bem:

$ curl --http1.1 -v -u $USER:$(cat ~/.config/asciinema/install-id) https://asciinema.org/api/asciicasts -F asciicast=@display_sweep.cast
*   Trying 109.107.38.78:443...
* TCP_NODELAY set
* Connected to asciinema.org (109.107.38.78) port 443 (#0)
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server accepted to use http/1.1
* Server certificate:
*  subject: CN=asciinema.org
*  start date: Jan 16 08:09:20 2020 GMT
*  expire date: Apr 15 08:09:20 2020 GMT
*  subjectAltName: host "asciinema.org" matched cert's "asciinema.org"
*  issuer: C=US; O=Let's Encrypt; CN=Let's Encrypt Authority X3
*  SSL certificate verify ok.
* Server auth using Basic with user 'nicoo'
> POST /api/asciicasts HTTP/1.1
> Host: asciinema.org
> Authorization: Basic XXXXSECRETVALUEHERE
> User-Agent: curl/7.67.0
> Accept: */*
> Content-Length: 2332762
> Content-Type: multipart/form-data; boundary=------------------------8506bb168e19a8c6
> Expect: 100-continue
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 100 Continue
* We are completely uploaded and fine
* Mark bundle as not supporting multiuse
< HTTP/1.1 201 Created
< Cache-Control: max-age=0, private, must-revalidate
< Content-Length: 78
< Content-Type: text/plain; charset=utf-8
< Date: Fri, 17 Jan 2020 16:47:43 GMT
< Location: https://asciinema.org/a/ucRJ70xKSlhN1QlmMW0BdSUBf
< Server: Caddy
< Server: nginx
< Strict-Transport-Security: max-age=15768000
< X-Request-Id: 2nlbkv35ad6doecmo07jcdm2
< 
View the recording at:

    https://asciinema.org/a/ucRJ70xKSlhN1QlmMW0BdSUBf
* Connection #0 to host asciinema.org left intact

Este parece ser um problema específico do cliente HTTP API de asciinema ; Eu o encontrei mesmo ao instalar asciinema form pip em um novo venv ; a versão local do python é 3.7.5 (conforme empacotado no Debian 11 / testing)

Não sei por que você não está recebendo uma mensagem de erro adequada, mas há um limite de 5 milhões para upload de arquivos. Veja # 91

Este deve ser um item de FAQ.

Assim que vi aquele "tubo quebrado" repetido duas vezes, suspeitei que meu elenco de 6,3M excedeu o limite de upload.

Mas, na verdade, encontrar esse tópico levou ... uhhh ... 24 minutos. Cerca de 15 das quais eu estava mexendo com a certificação discobot , esperando que isso me permitisse postar a pergunta na seção de discurso do FAQ (não permitiu).

Estou recebendo este erro com um pequeno:

`` ` sontek @ hulk : / mnt / c / Users / sontek / code / snowmachine $ exit
asciinema: gravação terminada
asciinema: presspara fazer upload para asciinema.org,salvar localmente
asciinema: upload falhou:
asciinema: tente mais tarde executando: asciinema upload /tmp/tmpe_sntawl-ascii.cast
sontek @ hulk : / mnt / c / Users / sontek / code / snowmachine $ du -sh /tmp/tmpe_sntawl-ascii.cast
184K /tmp/tmpe_sntawl-ascii.cast
sontek @ hulk : / mnt / c / Users / sontek / code / snowmachine $

Tried uploading it later too:

sontek @ hulk : / mnt / c / Usuários / sontek / code / snowmachine $ asciinema upload /tmp/tmpe_sntawl-ascii.cast
asciinema: upload falhou:
asciinema: tente mais tarde executando: asciinema upload /tmp/tmpe_sntawl-ascii.cast
`` `

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

pfalcon picture pfalcon  ·  4Comentários

Edo78 picture Edo78  ·  5Comentários

deeplook picture deeplook  ·  10Comentários

lukehinds picture lukehinds  ·  5Comentários

SR-Lut3t1um picture SR-Lut3t1um  ·  3Comentários