Bug 36039 - Отдельно собрать mongo 3.4.x для возможности миграции данных с 3.2.x
Summary: Отдельно собрать mongo 3.4.x для возможности миграции данных с 3.2.x
Status: NEW
Alias: None
Product: Branch p8
Classification: Distributions
Component: mongo (show other bugs)
Version: не указана
Hardware: all Linux
: P3 blocker
Assignee: Andrey Cherepanov
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-02-04 20:40 MSK by Alexei Takaseev
Modified: 2019-02-05 06:12 MSK (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexei Takaseev 2019-02-04 20:40:52 MSK
mongo версии 3.6.х не умеет напрямую работать с файлами данных от версии 3.2. В результате при выполнении apt-get dist-upgrade вместо работающего сервиса мы получаем тыкву:

2019-02-05T01:21:22.869+0800 I CONTROL  [initandlisten] options: { net: { bindIp: "127.0.0.1", port: 27117, unixDomainSocket: { pathPrefix: "/opt/UniFi/run" } }, storage: { dbPath: "/opt/UniFi/data/db" }, systemLog: { destination: "file", logAppend: true, path: "/opt/UniFi/logs/mongod.log" } }
2019-02-05T01:21:22.869+0800 I -        [initandlisten] Detected data files in /opt/UniFi/data/db created by the 'mmapv1' storage engine, so setting the active storage engine to 'mmapv1'.
2019-02-05T01:21:22.876+0800 I STORAGE  [initandlisten]
2019-02-05T01:21:22.876+0800 I STORAGE  [initandlisten] ** WARNING: Readahead for /opt/UniFi/data/db is set to 4096KB
2019-02-05T01:21:22.876+0800 I STORAGE  [initandlisten] **          We suggest setting it to 256KB (512 sectors) or less
2019-02-05T01:21:22.876+0800 I STORAGE  [initandlisten] **          http://dochub.mongodb.org/core/readahead
2019-02-05T01:21:22.876+0800 I JOURNAL  [initandlisten] journal dir=/opt/UniFi/data/db/journal
2019-02-05T01:21:22.876+0800 I JOURNAL  [initandlisten] recover : no journal files present, no recovery needed
2019-02-05T01:21:22.907+0800 I JOURNAL  [durability] Durability thread started
2019-02-05T01:21:22.907+0800 I JOURNAL  [journal writer] Journal writer thread started
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten]
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten]
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten]
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten]
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 4096 files. Number of processes should be at least 2048 : 0.5 times number of files.
2019-02-05T01:21:22.921+0800 I CONTROL  [initandlisten]
2019-02-05T01:21:22.929+0800 F CONTROL  [initandlisten] ** IMPORTANT: UPGRADE PROBLEM: The data files need to be fully upgraded to version 3.4 before attempting an upgrade to 3.6; see http://dochub.mongodb.org/core/3.6-upgrade-fcv for more details.
2019-02-05T01:21:22.929+0800 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2019-02-05T01:21:22.929+0800 I NETWORK  [initandlisten] removing socket file: /opt/UniFi/run/mongodb-27117.sock
2019-02-05T01:21:22.929+0800 I REPL     [initandlisten] shutdown: removing all drop-pending collections...
2019-02-05T01:21:22.929+0800 I REPL     [initandlisten] shutdown: removing checkpointTimestamp collection...
2019-02-05T01:21:22.929+0800 I STORAGE  [initandlisten] shutdown: waiting for fs preallocator...
2019-02-05T01:21:22.929+0800 I STORAGE  [initandlisten] shutdown: final commit...
2019-02-05T01:21:22.930+0800 I JOURNAL  [initandlisten] journalCleanup...
2019-02-05T01:21:22.930+0800 I JOURNAL  [initandlisten] removeJournalFiles
2019-02-05T01:21:22.942+0800 I JOURNAL  [initandlisten] old journal file /opt/UniFi/data/db/journal/j._0 will be reused as /opt/UniFi/data/db/journal/prealloc.0
2019-02-05T01:21:22.952+0800 I JOURNAL  [initandlisten] Terminating durability thread ...
2019-02-05T01:21:23.031+0800 I JOURNAL  [journal writer] Journal writer thread stopped
2019-02-05T01:21:23.032+0800 I JOURNAL  [durability] Durability thread stopped
2019-02-05T01:21:23.032+0800 I STORAGE  [initandlisten] shutdown: closing all files...
2019-02-05T01:21:23.033+0800 I STORAGE  [initandlisten] closeAllFiles() finished
2019-02-05T01:21:23.033+0800 I STORAGE  [initandlisten] shutdown: removing fs lock...
2019-02-05T01:21:23.033+0800 I CONTROL  [initandlisten] now exiting
2019-02-05T01:21:23.033+0800 I CONTROL  [initandlisten] shutting down with code:62

Решением проблемы была бы сборка mongo 3.4, чтобы можно было провести операцию последовательного обновления 3.2 -> 3.4 -> 3.6 и как-нибудь обозначить эти атомные грабли.
Comment 1 Alexei Takaseev 2019-02-05 06:12:08 MSK
Вообще практика установки в систему через dist-upgrade несовместимых по файлам версий БД явно не правильная. Пользователь сам должен принимать решение о переходе. Хотя бы для того чтобы провести процедуру dump/restore штатно, без поиска в архиве и отката на прежнюю версию.