RE: LPS-97547 Remove legacy per portal instance properties configuration …

thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
Hi guys,
Liferay removed instance based properties in 7.2 GA2.
Here : LPS-97547 Remove legacy per portal instance properties configuration
Can you please guide alternative
thumbnail
Christoph Rabel, modified 5 Years ago. Liferay Legend Posts: 1555 Join Date: 9/24/09 Recent Posts
A lot of configuration was moved to the frontend (System Settings and Instance Settings).
Can you tell us, which properties you are missing or what you try to achieve per instance?
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
I also wanted to ask, i don't see Server Administration for each instance.I want to configure different SMTP settings for each one.
Christoph Rabel:

A lot of configuration was moved to the frontend (System Settings and Instance Settings).
Can you tell us, which properties you are missing or what you try to achieve per instance?
thumbnail
Christoph Rabel, modified 5 Years ago. Liferay Legend Posts: 1555 Join Date: 9/24/09 Recent Posts
Server settings are global. You can't configure them per instance. I don't think it was ever possible to configure more than one mailserver.
You could try to override the mail implementation of Liferay but after a quick look I don't see a real nice way to do that. The MailEngine class which is used to send the mail is static and not "OSGIyfied". Maybe you could try to replace MailMessageListener.
Another way would be to send mails to a local smtp server like postfix and dispatch them from there. 
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
I have connection settings for login. and during login.. each instance makes connection with its respective API for authenticating user.
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
Thank you so much Christoph Rabel , it is very helpful.


Can you please also guide me also on how to implement database sharding, as this feature is removed Now.

How can we achieve this?
thumbnail
Christoph Rabel, modified 5 Years ago. Liferay Legend Posts: 1555 Join Date: 9/24/09 Recent Posts
Sorry, but sharding is gone. It cannot be done anymore. Well, some databases support sharding, but I would tread very careful here. It adds a lot of complexity, but what are the gains?
The question is: Why do you want sharding? Do you really need it?
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
<p>Actually we wanted to store each customers data separate,&nbsp; also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.</p>
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
Christoph Rabel:

Sorry, but sharding is gone. It cannot be done anymore. Well, some databases support sharding, but I would tread very careful here. It adds a lot of complexity, but what are the gains?
The question is: Why do you want sharding? Do you really need it?
Actually we wanted to store each customers data separate, also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.<
thumbnail
David H Nebinger, modified 5 Years ago. Liferay Legend Posts: 14933 Join Date: 9/2/06 Recent Posts
Sharding was removed because it was a total PITA and has way too many complications...

Backups, for example. Sure you can take snapshots of all of the shards, but trying to get a working restore done so everything is in sync? Not a fun trip.

Forget about sharding, it is a nightmare best left forgotten.
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
David H Nebinger:

Sharding was removed because it was a total PITA and has way too many complications...

Backups, for example. Sure you can take snapshots of all of the shards, but trying to get a working restore done so everything is in sync? Not a fun trip.

Forget about sharding, it is a nightmare best left forgotten.

<p>Actually we wanted to store each customers data separate, also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.</p>
thumbnail
jay kumar, modified 5 Years ago. New Member Posts: 12 Join Date: 1/30/14 Recent Posts
<p>Actually we wanted to store each customers data separate, also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.</p>
thumbnail
Olaf Kock, modified 5 Years ago. Liferay Legend Posts: 6441 Join Date: 9/23/08 Recent Posts
jay kumar:

<p>Actually we wanted to store each customers data separate, also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.</p>
Sharding was removed because it was a total PITA and has way too many complications...

Backups, for example. Sure you can take snapshots of all of the shards, but trying to get a working restore done so everything is in sync? Not a fun trip.

Forget about sharding, it is a nightmare best left forgotten.
(credits: see above ;) )
thumbnail
Olaf Kock, modified 5 Years ago. Liferay Legend Posts: 6441 Join Date: 9/23/08 Recent Posts
jay kumar:

Actually we wanted to store each customers data separate, also if we get new customer than we can design its separate lportal locally and then push it to production, binding instance with that lportal.

On top of what was written above: This is not how sharding ever worked. You could never arbitrarily bind different shards to different portals and move them around. A shard always belonged to a single portal. And it never was guaranteed to have the data of one instance exclusively and completely. In order to restore a portal from backup, you always needed all of the shards to be restored together.
Trust David and me: You don't want shards. If you want to strictly separate customers from each other, separating them in individual databases doesn't grant any security, as they're all accessed from the same JVM anyway. If you want to strictly separate them, run different servers.