For a config failure, we now translate the message and show
a user friendly string rather than the error id.
This makes things easier to debug and read.
https://mattermost.atlassian.net/browse/MM-22405
```release-note
NONE
```
Discard the non-essential WebSocket events before they are queued.
When conn send queue is full, the connection is closed. There are messages that are being dropped by the current mechanism when send queue is at 50% capacity. This change makes the messages drop before entering the queue in order to keep the queue as empty as possible.
The value of the length of the queue could not be 100% accurate since we are reading from the hub goroutine, but it will be accurate enough to avoid some events.
* MM-43956: Adds post counts by day.
* MM-43956: Test data cleanup. Switch from Unix to UnixMilli.
* MM-43956: Changes from selecting date data types to strings in SQL.
* MM-43956: Fixes date format key.
* MM-43956: Adds missing user id scope for 'my' top channels graph.
* MM-43956: Adds the ability to group post counts by hour.
* MM-43956: Require enterprise or professional license. Reject guests.
* MM-43956: Adds license for tests.
* MM-43956: Renames function.
* MM-43956: Omits future hours from post counts by hour.
* MM-43956: Adjust API response grouping to users timezone.
* MM-43956: Adds translation.
* MM-43956: Adds user's timezone to the data tier for the grouping by day and hour.
* MM-43956: Fixes layers.
* MM-43956: Lint fix.
* MM-43956: Fix store layers.
* MM-43956: Switches to default name for time package; changes parameter names to avoid naming conflict.
* MM-43956: Updates mocks.
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
```release-note
We create a new config option MaxImageDecoderConcurrency which
indicates how many images can be decoded concurrently at once.
The default is -1 which means number of CPUs present.
This affects the total memory consumption of the server. The
maximum memory of a single image is dictated by MaxImageResolution * 24 bytes.
Therefore, a good rule of thumb to follow is that MaxImageResolution
* MaxImageDecoderConcurrency * 24 should be less then the allocated memory for
image decoding.
```
https://mattermost.atlassian.net/browse/MM-43733
UpdateUserCustomStatus server API never returned the object.
But the client driver tried to parse the JSON response into
a struct, which always parsed as an empty struct.
We fix that by returning the original response and added
a comment to clarify that.
Found while adding coverage for custom status in the load-test
tool.
```release-note
NONE
```
* MM-42581: fixes unread threads on user channel add
Currently when we are adding a user to a channel we don't send previous
values for unread replies and mentions. This is resulting the thread to
not be marked as unread in the UI, since we rely on the previous values
for that.
This commit fixes the issue by returning previous unread values of 0.
* Adds test
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
These logs would appear at every request
and didn't have any useful info for the admin.
It was more of a developer logging thing
and therefore removing it.
https://mattermost.atlassian.net/browse/MM-39690
```release-note
NONE
```