Граф коммитов

14287 Коммитов

Автор SHA1 Сообщение Дата
Tom De Moor
415ee2e18b Translated using Weblate (Dutch)
Currently translated at 100.0% (2327 of 2327 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/nl/
2022-01-12 17:44:52 +01:00
Matthew Williams
a0cfa9e39f Translated using Weblate (English (Australia))
Currently translated at 100.0% (2327 of 2327 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/en_AU/
2022-01-12 17:44:52 +01:00
Hosted Weblate
e572645fd0 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/
2022-01-12 17:44:52 +01:00
jprusch
9644975156 Translated using Weblate (German)
Currently translated at 100.0% (2328 of 2328 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/de/
2022-01-12 17:44:52 +01:00
kaakaa
e9f3e78b98 Translated using Weblate (Japanese)
Currently translated at 100.0% (2327 of 2327 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/ja/

Translated using Weblate (Japanese)

Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/ja/
2022-01-12 17:44:52 +01:00
master7
8fe1970e36 Translated using Weblate (Polish)
Currently translated at 100.0% (2327 of 2327 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/pl/

Translated using Weblate (Polish)

Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/pl/
2022-01-12 17:44:52 +01:00
Ibrahim Serdar Acikgoz
f829dba615 Update morph dependency (#19308)
* Update morph dependency to use a newer version

* remove timeout check for migrations statements

* store/sqlstore: reset timeout for mysql while creating db for migrations

* update morph to v0.2.1
2022-01-12 17:24:29 +03:00
Ashish Bhate
a55bd001b4 Revert "[MM-37013] Async job to fix CRT channel unreads (#18340)" (#19319)
This reverts commit 0da249c651.
2022-01-12 18:51:47 +05:30
Ibrahim Serdar Acikgoz
d0724d8b00 migrations: Fix typos/errors and add missing migrations (#19316)
* fix public channels creation script for mysql

* fix several remaining migrations
2022-01-12 16:19:03 +03:00
Szymon Gibała
4a1a0863c4 Support 'postgresql' schema designator (#19275) 2022-01-12 13:23:56 +01:00
Allan Guwatudde
664af506a3 [MM-39583] - Intermediary web login page: Workspace Cookies (#19256)
* [MM-39583] - Intermediary web login page: Workspace Cookies

* only cloud

* fix error with license check

* feedback impl

* improvement

* make improvements

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-12 10:31:46 +03:00
Nick Misasi
8ad9a22e77 Add a field to ConfirmPaymentMethodRequest type (#19301)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-11 09:49:29 -05:00
Ashish Bhate
ec22cf9a08 [MM-37013]: Fix store get for null columns (#19310)
Automatic Merge
2022-01-11 16:29:52 +02:00
Kai
af4f1e3151 README.md: HTTP => HTTPS (#18970)
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-11 15:15:00 +01:00
Claudio Costa
0bd19e682c Sanitize message in email template (#19304) 2022-01-11 11:40:00 +01:00
Agniva De Sarker
3a45b2f5ac MM-40852: Add make gen-serialized to CI (#19292)
https://mattermost.atlassian.net/browse/MM-40852

```release-note
NONE
```

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2022-01-10 20:09:29 +05:30
Ibrahim Serdar Acikgoz
240bfb2244 Fix a couple of issues related with morph feature branch (#19302)
* uncomment s3 uploads

* remove unnecessary check from config validation

* remove translation
2022-01-08 13:01:37 +03:00
Ibrahim Serdar Acikgoz
6595b31f23 Replace go-migrate with morph (#19116) 2022-01-08 10:16:07 +02:00
Yusuke Nemoto
c8198fbefe Added support for exporting and importing the type and edit_at of a post (#18992)
* feat: add Type/EditAt field to PostImportData

* test: add tests

* feat: add Type/EditAt field to ReplyImportData

* chore: fix lint error

* test: fix failed tests

* test: refactoring

* test: fix how to assertion

* test: fix failed case which depends on accidental order of replies
2022-01-08 09:37:07 +05:30
Jesse Hallam
a4f61e2c68 MM-40677: Pre-package Playbooks v1.23.0 (#19295) 2022-01-07 13:23:00 -04:00
Agniva De Sarker
93a9c6c293 MM-40852: Fix make gen-serialized breakage (#19291)
- Fixed the Makefile command so that it can be run in CI
- Changed to go install to make it compatible with >1.16 versions.
- Removed unnecessary lines in go.tools.mod now that we aren't using that.

```release-note
NONE
```
2022-01-07 20:02:54 +05:30
Agniva De Sarker
2f58c88f1b MM-40594: Fix nil retention policies (#19285)
Due to the store method having named returns, the variable
was getting set to nil instead of being an empty slice.
We missed this during code review.

https://mattermost.atlassian.net/browse/MM-40594

```release-note
NONE
```
2022-01-06 12:30:01 +05:30
Ben
9ba020db2e [MM-40560] Add Server locale to link preview request (#19156)
* Add Server locale to link preview request

* Update unit tests for post embed
2022-01-05 17:32:36 -05:00
Pablo Andrés Vélez Vidal
f4809def78 MM-40752 - set encryption when copying files to minio honoring config defined value (#19251)
Co-authored-by: Pablo Velez Vidal <pablo.velez@mattermost.com>
2022-01-05 10:04:16 +01:00
Agniva De Sarker
95fd120670 MM-40799: Improve ReplyCount query (#19274)
* MM-40799: Improve ReplyCount query

This PR optimizes the reply count query to use only
the indexed column to count the rows rather than using
the ID column. This results in an index-only scan
rather than an index scan. As a result, the query
can be satisfied directly by scanning the index
and there is no need to touch the heap.

Count(*) also gives the same result, but is not recommended
as it also verifies non-null columns and can take slightly
longer.

Before:
```
explain analyze SELECT p.*, (SELECT COUNT(Posts.Id) FROM Posts WHERE Posts.RootId = (CASE WHEN p.RootId = '' THEN p.Id ELSE p.RootId END) AND Posts.DeleteAt = 0) AS ReplyCount FROM Posts p WHERE (CreateAt < (SELECT CreateAt FROM Posts WHERE Id = 'bguxt6zzcjytpffgza3dc7xody') AND p.ChannelId = '5xmynf36cinrzksuzhq7my1nbc' AND DeleteAt = 0) ORDER BY p.ChannelId, DeleteAt, CreateAt DESC LIMIT 30 OFFSET 0;
                                                                                 QUERY PLAN
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Limit  (cost=9.14..130616.04 rows=30 width=922) (actual time=19.208..19.454 rows=30 loops=1)
   InitPlan 2 (returns $2)
     ->  Index Scan using posts_pkey on posts posts_1  (cost=0.56..8.58 rows=1 width=8) (actual time=0.028..0.030 rows=1 loops=1)
           Index Cond: ((id)::text = 'bguxt6zzcjytpffgza3dc7xody'::text)
   ->  Index Scan Backward using idx_posts_channel_id_delete_at_create_at on posts p  (cost=0.56..2720977.61 rows=625 width=922) (actual time=0.075..0.317 rows=30 loops=1)
         Index Cond: (((channelid)::text = '5xmynf36cinrzksuzhq7my1nbc'::text) AND (deleteat = 0) AND (createat < $2))
         SubPlan 1
           ->  Aggregate  (cost=4349.49..4349.50 rows=1 width=8) (actual time=0.007..0.007 rows=1 loops=30)
                 ->  Index Scan using idx_posts_root_id_delete_at on posts  (cost=0.56..4346.36 rows=1253 width=27) (actual time=0.007..0.007 rows=0 loops=30)
                       Index Cond: (((rootid)::text = (CASE WHEN ((p.rootid)::text = ''::text) THEN p.id ELSE p.rootid END)::text) AND (deleteat = 0))
```

After:

```
explain analyze SELECT p.*, (SELECT COUNT(Posts.RootId) FROM Posts WHERE Posts.RootId = (CASE WHEN p.RootId = '' THEN p.Id ELSE p.RootId END) AND Posts.DeleteAt = 0) AS ReplyCount FROM Posts p WHERE (CreateAt < (SELECT CreateAt FROM Posts WHERE Id = 'bguxt6zzcjytpffgza3dc7xody') AND p.ChannelId = '5xmynf36cinrzksuzhq7my1nbc' AND DeleteAt = 0) ORDER BY p.ChannelId, DeleteAt, CreateAt DESC LIMIT 30 OFFSET 0;
                                                                                 QUERY PLAN
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Limit  (cost=9.14..130616.04 rows=30 width=922) (actual time=12.936..13.188 rows=30 loops=1)
   InitPlan 2 (returns $2)
     ->  Index Scan using posts_pkey on posts posts_1  (cost=0.56..8.58 rows=1 width=8) (actual time=0.029..0.030 rows=1 loops=1)
           Index Cond: ((id)::text = 'bguxt6zzcjytpffgza3dc7xody'::text)
   ->  Index Scan Backward using idx_posts_channel_id_delete_at_create_at on posts p  (cost=0.56..2720977.61 rows=625 width=922) (actual time=0.076..0.324 rows=30 loops=1)
         Index Cond: (((channelid)::text = '5xmynf36cinrzksuzhq7my1nbc'::text) AND (deleteat = 0) AND (createat < $2))
         SubPlan 1
           ->  Aggregate  (cost=4349.49..4349.50 rows=1 width=8) (actual time=0.008..0.008 rows=1 loops=30)
                 ->  Index Only Scan using idx_posts_root_id_delete_at on posts  (cost=0.56..4346.36 rows=1253 width=8) (actual time=0.007..0.007 rows=0 loops=30)
                       Index Cond: ((rootid = (CASE WHEN ((p.rootid)::text = ''::text) THEN p.id ELSE p.rootid END)::text) AND (deleteat = 0))
                       Heap Fetches: 14
```

https://mattermost.atlassian.net/browse/MM-40799

```release-note
NONE
```

* Use COUNT(*) for faster

```release-note
NONE
```
2022-01-05 10:27:40 +05:30
Agniva De Sarker
926e7c3b5e MM-40801: Use replica for getPostsAround (#19273)
This query deals with posts already created,
and it was originally already querying replica.

In recent performance investigations, this came up
a lot of times. I believe the change to query master
was unintentional.

```release-note
NONE
```
2022-01-04 22:37:19 +05:30
Ibrahim Serdar Acikgoz
345e9cc841 Merge pull request #19277 from mattermost/AcceptedTermsOfServiceId-removal
move removal of AcceptedTermsOfServiceId from users table to 6.3
2022-01-04 17:34:56 +03:00
Ibrahim Serdar Acikgoz
8523a2e7c1 move removal of AcceptedTermsOfServiceId from users table to 6.3 2022-01-04 17:05:51 +03:00
Ibrahim Serdar Acikgoz
4ce7d993a4 Merge pull request #19263 from mattermost/MM-40778-migration
Remove AcceptedTermsOfServiceId from Users table
2022-01-03 22:16:46 +03:00
Ibrahim Serdar Acikgoz
0d9f0e4766 Update store/sqlstore/upgrade.go
Co-authored-by: Claudio Costa <cstcld91@gmail.com>
2022-01-03 21:51:04 +03:00
Agniva De Sarker
cfcdce9ae7 Migrate post_store to sqlx (#19241)
* Migrate post_store to sqlx

There are several queries which should improve further
if re-written with squirrel. HW tickets will be opened
for those.

https://community-daily.mattermost.com/boards/workspace/zyoahc9uapdn3xdptac6jb69ic/285b80a3-257d-41f6-8cf4-ed80ca9d92e5/495cdb4d-c13a-4992-8eb9-80cfee2819a4/ctnryw9mga7fu9kc16xsap4phuw

```release-note
NONE
```

* Remove struct

```release-note
NONE
```

* fix tests

```release-note
NONE
```
2022-01-03 10:40:16 +05:30
Ibrahim Serdar Acikgoz
aa7eb64ff7 remove AcceptedTermsOfServiceId from users table 2021-12-30 18:32:24 +03:00
Tilto_
aa0b717af7 Translated using Weblate (Korean)
Currently translated at 78.2% (1819 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/ko/
2021-12-27 13:52:42 -06:00
Matthew Williams
8f11a50b2b Translated using Weblate (English (Australia))
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/en_AU/
2021-12-27 13:52:42 -06:00
Tóth Csaba // Online ERP Hungary Kft
c90a97e7ad Translated using Weblate (Hungarian)
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/hu/
2021-12-27 13:52:42 -06:00
MArtin Johnson
3ca54860f4 Translated using Weblate (Swedish)
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/sv/
2021-12-27 13:52:42 -06:00
Kaya Zeren
e9cc1b241b Translated using Weblate (Turkish)
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/tr/
2021-12-27 13:52:42 -06:00
Tom De Moor
340320f1bf Translated using Weblate (Dutch)
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/nl/
2021-12-27 13:52:42 -06:00
jprusch
37f9c51289 Translated using Weblate (German)
Currently translated at 100.0% (2326 of 2326 strings)

Translation: mattermost-languages-shipped/mattermost-server
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-server_master/de/
2021-12-27 13:52:42 -06:00
Ibrahim Serdar Acikgoz
6c42d2816d Merge pull request #19196 from mattermost/MM-39542
[MM-39542] Allow upsert for duplicate key in LinkMetadataStore
2021-12-22 16:31:59 +03:00
Carlos Tadeu Panato Junior
3b89080863 upgrade db to 6.3.0 (#19217) 2021-12-22 12:41:48 +01:00
Ibrahim Serdar Acikgoz
6bf646c921 . 2021-12-22 12:33:56 +03:00
Kirill Krotov
0dbc74f6d5 [GH-18965] - Pass expire time from outside Cleanup method (#19008)
Pass expire time from outside Cleanup method

Fixes #18965
2021-12-22 14:57:30 +05:30
Ibrahim Serdar Acikgoz
7f2e60289b reflect review comments 2021-12-22 12:24:25 +03:00
Michel Engelen
c198ef6e16 adding a feature flag for inline post editing (#19210) 2021-12-21 08:59:52 +01:00
Allan Guwatudde
81409ee7c4 [MM-40407] - Do not show the Renew Now if the license id does not exist in the portal (#19188)
* [MM-40407] - Do not show the Renew Now if the license id does not exist in the portal

* improvements

* impl mock

* fix translations

* feedback impl

* fix typo

Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
2021-12-21 09:46:02 +03:00
Ben Schumacher
34c4e543f9 [MM-39999] Increase key length in plugin KV store to 150 (#19002) 2021-12-20 13:13:50 +01:00
Agniva De Sarker
b836edba40 MM-40537: Bump bleve dependency to fix Sentry crash (#19194)
* MM-40537: Bump bleve dependency to fix Sentry crash

We observed a sentry crash, which is now fixed upstream.
So we bump the dependency accordingly.

```release-note
NONE
```

* Fix vendor/modules.txt

```release-note
NONE
```

* New fix

```release-note
NONE
```

* Trigger CI
```release-note
NONE
```
2021-12-20 14:48:24 +05:30
Agniva De Sarker
87bf8fb9e9 Force right index for post deletion (#19191)
During v6 indexing changes, we replaced
idx_posts_root_id with idx_posts_root_id_delete_at.
This causes MySQL to trigger the index_merge path
again with PRIMARY and idx_posts_root_id_delete_at
as shown below:

```
mysql> UPDATE Posts SET DeleteAt = 1637998911685, UpdateAt = 1637998911685, Props = JSON_SET(Props, '$.deleteBy', 'buqskqrwmjnhfuqskqrwmjn4ca') Where Id = 'q38uaydtpink5f4wkmcsn8h47o' OR RootId = 'q38uaydtpink5f4wkmcsn8h47o';
Query OK, 9 rows affected (17.29 sec)
Rows matched: 10  Changed: 9  Warnings: 0
mysql> EXPLAIN UPDATE Posts SET DeleteAt = 1637998911685, UpdateAt = 1637998911685, Props = JSON_SET(Props, '$.deleteBy', 'buqskqrwmjnhfuqskqrwmjn4ca') Where Id = 'q38uaydtpink5f4wkmcsn8h47o' OR RootId = 'q38uaydtpink5f4wkmcsn8h47o'\G
*************************** 1. row ***************************
           id: 1
  select_type: UPDATE
        table: Posts
   partitions: NULL
         type: index_merge
possible_keys: PRIMARY,idx_posts_root_id_delete_at
          key: idx_posts_root_id_delete_at,PRIMARY
      key_len: 107,106
          ref: NULL
         rows: 9
     filtered: 100.00
        Extra: Using sort_union(idx_posts_root_id_delete_at,PRIMARY); Using where; Using temporary
1 row in set, 1 warning (0.00 sec)
```

To fix the temporary sort, we order by Id

```
mysql> UPDATE Posts SET DeleteAt = 1637998911686, UpdateAt = 1637998911686, Props = JSON_SET(Props, '$.deleteBy', 'buqskqrwmjnhfuqskqrwmjn4ca') Where Id = 'q38uaydtpink5f4wkmcsn8h47o' OR RootId = 'q38uaydtpink5f4wkmcsn8h47o' ORDER BY Id;
Query OK, 9 rows affected (0.01 sec)
Rows matched: 9  Changed: 9  Warnings: 0
mysql> EXPLAIN UPDATE Posts SET DeleteAt = 1637998911686, UpdateAt = 1637998911686, Props = JSON_SET(Props, '$.deleteBy', 'buqskqrwmjnhfuqskqrwmjn4ca') Where Id = 'q38uaydtpink5f4wkmcsn8h47o' OR RootId = 'q38uaydtpink5f4wkmcsn8h47o' ORDER BY Id\G
*************************** 1. row ***************************
           id: 1
  select_type: UPDATE
        table: Posts
   partitions: NULL
         type: index_merge
possible_keys: PRIMARY,idx_posts_root_id_delete_at
          key: idx_posts_root_id_delete_at,PRIMARY
      key_len: 107,106
          ref: NULL
         rows: 9
     filtered: 100.00
        Extra: Using sort_union(idx_posts_root_id_delete_at,PRIMARY); Using where; Using filesort
1 row in set, 1 warning (0.00 sec)
```

Postgres uses Bitmap Heap scan which does
a Bitmap OR of the index tuples and _then_
fetches the rows from the heap. This is a
much better and sophisticated way. Sadly, MySQL
will fetch the rows from the indexes first,
and then do an OR, which is why index_merge_intersection
is so bad.

See: https://developers.mattermost.com/blog/mysql-index-merge/
for more info.

```release-note
NONE
```
2021-12-20 13:55:03 +05:30
Olayiwola Odunsi
08dc3a1cdf [GH-19105] - Add helper function to handle columns on reserved names (#19107)
Automatic Merge
2021-12-17 17:40:31 +02:00