Upgrade¶
An upgrade involves moving a database from an older version to a newer supported version (e.g., from Odoo 16.0 to Odoo 18.0). Regular upgrades are crucial as each version offers new features, bug fixes, and security patches. Using a supported version is strongly recommended. Each major version is supported for three years.
Depending on the hosting type and Odoo version used, a database upgrade can be mandatory.
If a database is on a major version (e.g., 16.0, 17.0, 18.0), an upgrade is mandatory every two years.
If a database is on a minor version (e.g., 17.1, 17.2, 17.4), an upgrade is mandatory a few weeks after the next version is released. Minor versions are usually released every two months.
After the initial three years of support, you will have another two years to complete the upgrade. You will be notified when an upgrade is required.

You can stay on the same version indefinitely, even if it is not recommended. Note that the smaller the version gap, the easier the upgrade should be.
You will receive a notification in your database a few weeks before a mandatory upgrade will be automatically carried out. You are in control of the process as long as the deadline is not reached.

Concretely, Odoo’s Upgrade Team performs a silent test upgrade of every database that should be upgraded. If the test is successful and lasts less than 20 minutes, you can directly trigger the upgrade from the database. If the test fails, you can test an upgrade using the database manager.
When you are invited to upgrade, it is strongly recommended to request an upgraded test database first and spend time testing it.
An automatic upgrade to the next version will be triggered if no action is taken before the specified due date.
Upgrade tidak mencakup:
Downgrade ke versi Odoo yang sebelumnya
Mengubah edisi (misal, dari Community ke Enterprise)
Mengubah tipe hosting (misal, dari on-premise menjadi Odoo Online)
Migrasi dari ERP lain ke Odoo
Peringatan
If your database contains custom modules, it cannot be upgraded until a version of your custom modules is available for the target version of Odoo. For customers maintaining their own custom modules, we recommend to parallelize the process by requesting an upgraded database while also upgrading the source code of your custom modules.
Mengupgrade secara singkat¶
Request an upgraded test database (see obtaining an upgraded test database).
Bila dapat dilakukan, upgrade source code modul custom Anda untuk lebih kompatibel dengan versi Odoo yang baru (lihat Upgrade a customized database).
Thoroughly test the upgraded database (see testing the new version of the database).
Report any issue encountered during the testing to Odoo by going to the Support page and selecting "An issue related to my future upgrade (I am testing an upgrade)".
Setelah semua masalah diselesaikan dan Anda yakin database yang diupgrade dapat digunakan sebagai database utama Anda tanpa masalah apa pun, rencanakan upgrade database production Anda.
Request the upgrade for the production database, rendering it unavailable for the time it takes to complete the process (see upgrading the production database).
Report any issue encountered during the upgrade to Odoo by going to the Support page and selecting "An issue related to my upgrade (production)".
Mendapatkan database test yang diupgrade¶
The Upgrade page is the main platform for requesting an upgraded database. However, depending on the hosting type, you can upgrade from the command line (on-premise), the Odoo Online database manager, or your Odoo.sh project.
Catatan
Platform Upgrade mengikuti Kebijakan Privasi yang sama dengan layanan Odoo.com lainnya. Kunjungi Halaman Peraturan Perlindungan Data Umum untuk mempelajari lebih lanjut bagaimana Odoo menangani data dan kebijakan Anda.
Odoo Online databases can be manually upgraded via the database manager.
Database manager menampilkan semua database terkait dengan akun user. Database yang tidak pada versi paling terkini Odoo menampilkan arah panah di ikon bundar di sebelah nama mereka, menandakan mereka dapat diupgrade.

Klik ikon arah panah di lingkaran untuk memulai proses upgrade. Di popup, isi:
Versi tujuan upgrade Odoo, biasanya adalah versi terkini
Alamat email yang harusnya menerima link untuk database yang diupgrade
Tujuan dari upgrade, yang secara otomatis ditetapkan menjadi Test untuk permintaan upgrade pertama Anda

Tag Upgrade sedang berlangsung ditampilkan di sebelah nama database sampai selesai. Setelah proses selesai, email dengan link ke database test yang diupgrade akan dikirim ke alamat yang disediakan. Database juga dapat diakses dari database manager dengan mengeklik tanda panah dropdown sebelum nama database.

Odoo.sh terintegrasi dengan platform upgrade untuk menyederhanakan proses upgrade.

The latest production daily automatic backup is then sent to the Upgrade platform.
Setelah platform upgrade selesai mengupgrade backup dan mengunggahnya ke branch, akan dimasukkan ke mode spesial: setiap kali commit didorong ke branch, restore operation dari backup yang diupgrade dan update dari semua modul custom akan terjadi. Ini memungkinkan Anda untuk mengetes modul custom Anda pada salinan baru dari database yang diupgrade. Log file proses upgrade dapat ditemukan di staging build Anda yang baru diupgrade dengan membuka ~/logs/upgrade.log
.
Penting
Di database di mana modul custom diinstal, source code mereka harus up-to-date dengan versi tujuan Odoo sebelum upgrade dapat dilakukan. Bila tidak ada modul custom, mode "update saat commit" akan dilewati, database yang diupgrade dibangun langsung setelah ditransfer dari platform upgrade, dan lalu akan keluar dari mode upgrade.
Periksa halaman Upgrade a customized database untuk informasi lebih lanjut.
Proses upgrade standar dapat dimulai dengan memasukkan command line berikut pada mesin di mana database dihosting:
$ python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>
Catatan
This command has some requirements on the environment it runs in:
Some external commands that must be provided by the operating system, normally found in any Linux distribution (including WSL). An error will be displayed if one or several of them are missing.
The system user that executes the command needs to be configured with access to the database. Please refer to the PostgreSQL documentation of the client environment or the client password file for this requirement.
The script needs to be able to reach one or multiple servers of the upgrade platform both on TCP port 443 and to any random TCP port in the range between 32768 and 60999. This can be in conflict with your restrictive firewall and may need an exception added to the firewall configuration.
Command berikut dapat digunakan untuk menampilkan bantuan umum dan command-command utama:
$ python <(curl -s https://upgrade.odoo.com/upgrade) --help
An upgraded test database can also be requested via the Upgrade page.
Penting
Di database di mana modul custom diinstal, source code mereka harus up-to-date dengan versi target Odoo sebelum upgrade dapat dilakukan. Periksa halaman Upgrade a customized database untuk lebih banyak informasi.
Catatan
Untuk alasan keamanan, hanya mereka yang menyerahkan permintaan upgrade dapat mengunduhnya.
Untuk alasan penyimpanan, salinan database diserahkan tanpa filestore ke server upgrade. Oleh karena itu, database yang diupgrade tidak memiliki filestore production.
Sebelum memulihkan database yang diupgrade, filestore harus dimerge dengan filestore production untuk dapat melakukan ujian dengan kondisi yang sama dengan yang di versi baru.
Database yang diupgrade memiliki:
File
dump.sql
yang memiliki database yang diupgradeFolder
filestore
yang memiliki file yang diekstrak dari record di database menjadi lampiran (bila ada) dan file standar baru Odoo dari versi Odoo tujuan (misal, gambar, ikon, logo penyedia pembayaran yang baru, dsb.). Ini adalah folder yang harus dimerge dengan filestore production agar dapat mendapatkan filestore lengkap yang diupgrade.
Catatan
Anda dapat meminta lebih dari satu database test bila Anda ingin menguji upgrade lebih dari sekali.
Catatan
Saat permintaan upgrade selesai, laporan upgrade dilampirkan ke email upgrade sukses, dan tersedia di app Discuss untuk user yang merupakan bagian dari kelompok "Administrasi / Pengaturan". Laporan ini menyediakan informasi penting mengenai perubahan yang muncul di versi baru.
Menguji versi baru database¶
It is essential to test the upgraded test database to ensure that you are not stuck in your day-to-day activities by a change in views, behavior, or an error message once the upgrade goes live.
Catatan
Test database dinetralisir, dan beberapa fitur dinonaktifkan untuk mencegah mereka mengubah database production:
Action yang dijadwalkan dinonaktifkan.
Server email keluar dinonaktifkan dengan mengarsipkan yang aktif saat ini dan menambahkan satu yang palsu.
Penyedia pembayaran dan carrier pengirim direset ke environment testing.
Sinkronisasi bank dinonaktifkan. Apabila Anda ingin mengetes sinkronisasi, hubungi penyedia sinkronisasi bank Anda untuk mendapatkan kredensial sandbox.
Menguji sebanyak mungkin alur bisnis sangat disarankan untuk memastikan mereka semua bekerja dengan benar dan agar lebih terbiasa dengan versi baru.
Checklist basic test
Apakah ada tampilan yang dinonaktifkan di test database Anda tapi aktif di database production Anda?
Apakah tampilan biasa Anda masih ditampilkan dengan tepat?
Apakah laporan Anda (faktur, sales order, dsb.) dengan tepat dibuat?
Apakah halaman website Anda bekerja dengan benar?
Apakah Anda dapat membuat dan memodifikasi record? (sales order, faktur, pembelian, user, kontak, perusahaan, dsb.)
Apakah ada masalah apa pun dengan templat email Anda?
Apakah ada masalah apa pun dengan terjemahan yang tersimpan?
Apakah filter pencarian Anda masih tersedia?
Apakah Anda dapat mengekspor data Anda?
Memeriksa produk secara acak di katalog produk Anda dan membandingkan data test dan production untuk memverifikasi bahwa semuanya masih sama (kategori produk, harga jual, harga biaya, vendor, akun, rute, dsb.).
Membeli produk ini (app Purchase).
Mengonfirmasi penerimaan produk ini (app Inventaris).
Memeriksa bila rute untuk menerima produk ini sama seperti di database production Anda (app Inventaris).
Menjual produk ini (app Sales) untuk pelanggan secara acak.
Membuka database pelanggan Anda (app Kontak), memilih pelanggan (atau perusahaan), dan memeriksa datanya.
Mengirim produk ini (app Inventaris).
Memeriksa bila rute untuk mengirim produk ini sama seperti di database production Anda (app Inventaris).
Memvalidasi faktur pelanggan (app Faktur atau Akuntansi).
Memberikan faktur kredit (mengirim nota kredit) dan memeriksa apakah bertindak secara sama seperti di database production Anda.
Memeriksa hasil laporan Anda (app Akuntansi).
Secara acak memeriksa pajak, mata uang, akun bank, dan tahun fiskal Anda (app Akuntansi).
Membuat pesanan online (app Website) dari pilihan produk di toko Anda sampai proses checkout dan memeriksa bila semuanya bertindak seperti di database production Anda.
Daftar ini tidak lengkap. Tambahkan sampel untuk app lain berdasarkan penggunaan Odoo Anda.
If you face an issue while testing your upgraded test database, you can request the assistance of Odoo by going to the Support page and selecting "An issue related to my future upgrade (I am testing an upgrade)". In any case, it is essential to report any problem encountered during the testing to fix it before upgrading your production database.
Anda mungkin menemukan perbedaan signifkan dengan tampilan standar, fitur, field, dan model selama testing. Perubahan-perubahan tersebut tidak dapat diputar-balk pada basis kasus-per-kasus. Namun, bila perubahan yang dilakukan oleh versi baru merusak kustomisasi, adalah tanggung jawab pengelola modul custom Anda untuk membuatnya kompatibel dengan versi baru Odoo.
Tip
Jangan lupa untuk menguji:
Integrasi dengan software eksternal (EDI, API, dsb.)
Alur kerja di antara app-app berbeda (sales online dengan eCommerce, mengonversi lead sampai ke sales order, pengiriman produk, dsb.)
Ekspor data
Tindakan Otomatis
Action server di menu action pada tampilan form, serta juga dengan mengeklik lebih dari satu record pada tampilan list
Mengupgrade database production¶
Once the tests are completed and you are confident that the upgraded database can be used as your main database without any issues, it is time to plan the go-live day.
Database production Anda akan tidak tersedia selama upgrade. Oleh karena itu, kami menyarankan merencanakan upgrade pada waktu di mana penggunaan database minim.
Karena script upgrade standar dan database Anda secara konstan berevolusi, disarankan untuk sering meminta test database upgrade lain untuk memastikan proses upgrade masih sukses, terutama bila membutuhkan waktu yang lama untuk selesai upgrade. Secara lengkap melatih proses upgrade sehari sebelum mengupgrade database production juga disarankan.
Penting
Menggunakan production sebelum testing terlebih dahulu mungkin berujung pada:
User gagal beradaptasi dengan perubahan dan fitur-fitur baru
Gangguan bisnis (contoh, tidak lagi memiliki opsi untuk memvalidasi action)
Pengalaman pelanggan yang buruk (contoh, website eCommerce yang tidak bekerja dengan tepat)
The process of upgrading a production database is similar to upgrading a test database, but with a few exceptions.
The process is similar to obtaining an upgraded test database, except for the purpose option, which must be set to Production instead of Test.
Peringatan
Setelah upgrade diminta, database akan tidak tersedia sampai upgrade selesai. Setelah proses selesai, tidak mungkin untuk memutar balik ke versi sebelumnya.
The process is similar to obtaining an upgraded test database on the Production branch.

Proses dipicu setelah commit baru dibuat pada branch. Ini memungkinkan proses upgrade untuk disinkronisasi dengan deployment source code modul custom yang diupgrade. Bila tidak ada modul custom, proses upgrade akan langsung dipicu.
Penting
Database tidak tersedia selama proses. Bila terjadi kesalahan, platform secara otomatis memutar balik upgrade, sama seperti pada update reguler. Apabila sukses, backup dari database sebelum upgrade akan dibuat.
Update modul custom Anda harus sukses untuk menyelesaikan seluruh proses upgrade. Pastikan status upgrade staging Anda sukses sebelum mencobanya di production. Informasi lebih lanjut mengenai bagaimana untuk mengupgrade modul custom Anda dapat ditemukan di Upgrade a customized database.
Command untuk mengupgrade database ke production mirip dengan cara mengupgrade database test kecuali untuk argumen test
, yang harus diganti dengan production
:
$ python <(curl -s https://upgrade.odoo.com/upgrade) production -d <your db name> -t <target version>
An upgraded production database can also be requested via the Upgrade page.
Once the database is uploaded, any modification to your production database will not be present on your upgraded database. This is why we recommend not using it during the upgrade process.
Penting
Saat meminta database diupdrage untuk tujuan production, salinan akan diserahkan tanpa filestore. Oleh karena itu, filestore database yang diupgrade harus digabung dengan filestore production sebelum mendeploy versi baru
In case of an issue with your production database, you can request the assistance of Odoo by going to the Support page and selecting "An issue related to my upgrade (production)".
Perjanjian Tingkat Layanan (SLA)¶
Dengan Odoo Enterprise, mengupgrade database ke versi terbaru Odoo gratis, termasuk bantuan apa pun yang dibutuhkan untuk memperbaiki kemungkinan ketidaksamaan apa pun di database yang diupgrade.
Informasi mengenai layanan upgrade yang termasuk di Enterprise License tersedia di Odoo Enterprise Subscription Agreement. Namun, bagian ini mengklarifikasi apa layanan upgrade yang Anda dapat harapkan.
Layanan upgrade yang termasuk SLA¶
Database yang dihosting pada platform cloud Odoo (Odoo Online dan Odoo.sh) atau self-host (On-Premise) dapat memanfaatkan layanan upgrade kapan pun juga untuk:
upgrade untuk semua aplikasi standar;
upgrade untuk semua kustomisasi yang dibuat dengan app Studio, selama Studio masih diinstal dan langganan terkait masih aktif; dan
upgrade untuk semua development dan kustomisasi yang dibuat oleh pengelola langganan kustomisasi.
Layanan upgrade terbatas ke konversi teknis dan adapatasi database (modul dan data standar) agar membuatnya kompatibel dengan versi tujuan upgrade.
Layanan upgrade tidak termasuk SLA¶
Layanan terkait upgrade berikut tidak termasuk:
pembersihan data yang tersedia sebelumnya dan konfigurasi selagi mengupgrade;
the upgrade of additional modules not covered by a maintenance contract that are created in-house or by third parties, including Odoo partners; and
training untuk menggunakan fitur-fitur dan alur kerja dari versi yang diupgrade.