hoho @mistercrunch  you are not alone. 
A few weeks ago we also faced an issue, probably same root cause. User started 
from add more and more metrics and filters. When user hit run query, 
server-side return 400 error. so all ajax calls like run query, save slice, 
shorten link etc, all stop working. 
>From my observation, `adhoc filter` increased payload a lot. But it doesn't 
>reached chrome's limitation. When we call pushState to browser's history, the 
>state will be sent as `Referer` header in the post request. For airbnb 
>actually its nginx/haprox has hard limitation on header size. we increase the 
>limit from 8k to 16k and now we don't have this issue any more. You can check 
>your header size.
I was thinking to remove this payload from header when airbnb first hit this 
issue. But
- i think you like `stateful url` :) maybe your url is shorter so that you can 
always refresh the page.
- if removed payload from history object, user can't use back/forward button to 
undo and redo.

I am ok to disable pushState by now (i am not sure your solution will work?). 
for long term I think explore view can use `redux-undo`, like Dashboard 
remember user editing history. It saved history in local-storage not send to 
server. and you can set how long the history is. But anyway we will not support 
`stateful URL` any more :)

[ Full content available at: 
https://github.com/apache/incubator-superset/pull/5905 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to