Não é possível completar alguns emojis com tab: cota excedida

Até limpar o cache do meu navegador, enfrentei o seguinte problema: ao tentar inserir (alguns) emojis digitando :, depois digitando parte do nome e pressionando \u003ckbd\u003eTab\u003c/kbd\u003e ou clicando nele, ocorria um erro:

DOMException: A cota foi excedida.

E                         _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:16701
default                   _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:17087
dispatch                  _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5443
handle                    _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5247
(Async: EventListener.handleEvent)
add                       _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5295
Se                        _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5195
each                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:395
each                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:217
Se                        _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5194
on                        _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:5934
default                   _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:16990
_applyEmojiAutocomplete   _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:33375
didInsertElement          _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:33183
n                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:43433
trigger                   _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:46074
n                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:43433
didCreate                 _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:19021
commit                    _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:62778
commit                    _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:62873
commit                    _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:18069
_renderRoots              _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:19654
_renderRootsTransaction   _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:19684
_revalidate               _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:19730
invoke                    _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66550
flush                     _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66442
flush                     _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66646
_end                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67222
_boundAutorunEnd          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66862
(Async: promise callback)
i                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66235
_scheduleAutorun          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67443
_end                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67232
_boundAutorunEnd          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66862
(Async: promise callback)
i                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66235
_scheduleAutorun          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67443
_end                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67232
_boundAutorunEnd          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66862
(Async: promise callback)
i                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66235
_scheduleAutorun          _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67443
_ensureInstance           _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:67429
schedule                  _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:66998
\u003canonymous\u003e               _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:38529
b                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:72276
_setModel                 _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:36655
r                         _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:36641
e                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:72238
e                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:72760
open                      _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:36583
replyToPost               _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:46862
send                      _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:38938
_replyToPost              _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:22973
replyToTopic              _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:22538
replyToTopic              self-hosted:1175
d                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:93072
_handleKey                _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:93136
handleKey                 _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:93513
_handleKeyEvent           _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:93199
(Async: EventListener.handleEvent)
c                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:92606
v                         _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:93359
init                      _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:22310
initialize                _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:80945
initialize                _application-b9edfbeb8d7476cb10ebd6a174760ebddf6c20c1d1a78bb95975f0d0af885455.js:7780
runInstanceInitializers   _vendor-ccc170ebd7d3ab2d70c3e0c52d1121e7ced023e6ed05de129e0060c2a71ba2e3.js:49347

Isso ocorre, por exemplo, com:

  • :face_with_raised_eyebrow:
  • :family_man_boy:
  • :man_mechanic:
  • :man_bad:
  • :camera_flash:
  • :partying_face:

Mas não ocorre com:

  • :heart_eyes:
  • :face_vomiting:
  • :point_right:

Não consigo identificar um padrão claro aqui.

Ainda estou na versão Discourse 2.8.0.beta6. Estou usando o Firefox 93. Isso pode ser um problema específico do navegador. Após limpar o cache, está funcionando novamente, embora ainda me pergunte o que causou esse comportamento inicialmente. Inserir um emoji não deveria estar relacionado ao cache? Talvez seja a atualização da lista de emojis recentes que causou isso. De qualquer forma, acredito que não deveria falhar dessa maneira.

Você consegue replicar o problema em https://try.discourse.org/?

1 curtida

Não consigo nem replicar isso no meu próprio fórum, mesmo limpando o cache do navegador. :slight_smile:

Ainda assim, acredito que seria possível lidar com esse modo de falha específico de forma mais elegante.

Fico feliz que você tenha resolvido! :+1:

Não tenho certeza se isso se classificaria como um bug para resolver. Os navegadores podem entrar em estados realmente críticos quando ficam sem armazenamento.

Se você conseguir encontrar uma forma simples de reproduzir isso aqui, ficarei feliz em reclassificar o problema.