4
votes

I have installed both Odoo 8.0 and 9.0. I have the Odoo 8.0 working fine on port 8069 but when I installed Odoo 9.0 and got it working on port 8070, Odoo 8.0 now throws 500 server error.

I tried to reinstall Odoo 8.0 from start, but this time using virtualenv so it does not conflict with the dependencies of Odoo 9.0, but running it using:

(Odoo8venv)user@domain:~/Odoo8venv/bin/python ~/odoo-8.0/odoo.py -c ~/odoo-dev/custom.conf

Still throws error:

2015-11-20 01:32:50,660 6772 ERROR test openerp.modules.graph: module website_partner: Unmet dependencies: website
2015-11-20 01:32:50,660 6772 ERROR test openerp.modules.graph: module portal: Unmet dependencies: share, auth_signup
2015-11-20 01:32:50,660 6772 WARNING test openerp.modules.graph: Some modules were not loaded.

I think it is because Odoo 8.0 sees the databases created using Odoo 9.0. Should I create a new postgresql server on a different port for Odoo 8.0? Or how can I make both of them run?

12
you can run your server with --db-filter=your database name try thisJainik Patel
@macdelacruz can u share with your custom.conf setting with your questionDASADIYA CHAITANYA
consider running Odoo with DockerPiotr Cierkosz
You check your db_user, port? They are must be different.С. Дэлгэрцэцэг
how to do same thing in windows? Any idea?Gautam Bothra

12 Answers

4
votes

You can run the two at the same time you just have to set correctly the addons-path, xmlrpc-port and the db-filter.

In a terminal (if on a unix-based platform), you can create a custom command line like:

/home/odoo8/odoo8.py --xmlrpc-port 1337 --addons-path='/home/odoo8/addons' --db-filter=^odoo_8$
/home/odoo7/odoo7.py --xmlrpc-port 1337 --addons-path='/home/odoo7/addons' --db-filter=^odoo_7$
4
votes

set the configuration file odoo.conf like this

[options]

; This is the password that allows database operations:

; admin_passwd = admin

db_host = localhost

db_port = 5432

db_user = odoo_user11

db_password = admin

xmlrpc_port = 8011

and change db_user, db_password with yours

0
votes

Please check your custom.conf file for incorrect paths. This looks like you still have odoo8 addon directories instead of odoo9 (at least the openerp/ directory).

And yes, there is the matter of databases. Odoo 9 uses a bit different schema, so you need to create a new cluster. Ubuntu has documentation on this: http://manpages.ubuntu.com/manpages/hardy/man8/pg_createcluster.8.html

After creating the cluster, sudo service postgresql restart and use a different python odoo.py --config-filec=odoo9.config file with a different db_port (that you designated when using pg_createcluster). Mind you, you will need to create the user for odoo to use in that new cluster as well.

0
votes

You should run two instances, one for odoo8, one for odoo9. To achieve this, you should create two pg users for the different instances. Otherwise, you should get 500 internal error for odoo8 instance trying to read odoo9 database, or odoo9 instance trying to read odoo8 database.

0
votes

Just change the RPC port and open 2 terminals one for odoo 8 and the other for odoo 9

0
votes

I personally used the multiple postgres user option.

You have multiple options:

Multiple postgres users

Create two postgres users ("odoo_8" and "odoo_9").

In the config for odoo 8 you'll connect with the odoo_8 postgres user and on odoo 9 with the odoo_9 postgres user.

This way you won't have to deal with db_filters because they're seperated by user.

Db filter

Prefix your odoo 8 databases with their own prefix and do the same with the odoo 9 databases.

Then set the db filter for your prefixes in your config files. dbfilter = *

0
votes

you need to use 2 different users and 2 different db users

check the link below for instructions on how to do it

https://www.rosehosting.com/blog/install-multiple-odoo-instances-on-a-single-machine/

hope this helps

Good Luck!

0
votes

Just change the port using the comment --xmlrpc-port=(4 digit port)

1) Suppose we run odoo 8 like as ./odoo-bin --xmlrpc-port='1111'. we can access the odoo8 server as localhost:1111 from frend end

2) Odoo9 should run as normal just like ./odoo-bin. We can access odoo9 server as localhost:8069 from end

0
votes

Check addons and temporary data dir in config file. There are same location for temporary files in windows files, so you can encounter some errors. Also i suggest use different database users for different versions.

0
votes

The simple way is:

  • Create two users system 'odoo8' and 'odoo9'.
  • On /opt, you must create two folders '/opt/odoo8' and '/opt/odoo9'. Preferably make them as Home for each user.
  • Create two users postgresql too 'odoo8' and 'odoo9'.
  • These folders must contains all addons for eatch version.
  • Then create two files at /opt/etc, named odoo8.conf and odoo9.conf with diffrent ports and database user (8008 and 8009 for example)
  • You can create two services at /etc/init.d

You can visit my script to do that https://github.com/elhamdaoui/Odoo-install, changer just the OE_USER variable and launch it.

Good luck

0
votes

You can use docker two create two separate containers for odoo8 and odoo9. You can use docker run command to create docker containers.

docker run -tip your_port:docker_port -v your_folder:docker_folder --name your_container_name image_name

-1
votes

it's simple solution is that just create new user to install new Odoo version just like if you want to use odoo in same system. create one more user and do install on odoo it.