[MarkLogic Dev General] Shutting down initial host causes cluster to stop

Geert Josten Geert.Josten at marklogic.com
Thu Jan 7 00:31:18 PST 2016

Hi Paul,

I think you need to replicate a few more. It is indeed not well documented which should be included in which case. I’ll try to provide some guidance now, and forward that internally to get docs improved as well.

MarkLogic 8 installs the following databases out of the box:

  *   App-Services
  *   Documents
  *   Extensions
  *   Fab
  *   Last-Login
  *   Meters
  *   Modules
  *   Schemas
  *   Security
  *   Triggers

Security is obviously the most essential database, but there are a number of other databases kind of vital to MarkLogic as well.

App-Services is used by the Manage and HealthCheck app-servers, so that definitely needs to be replicated as well. Manage provides important tools like the Monitoring UI, Manage API, and such. HealthCheck is used by clusters.

Documents, Modules, Schemas, and Triggers are provided by default, but empty initially. You don’t need to replicate these, unless you have applications using them. Same applies of course for app-specific databases with the same purposes.

Extensions is used to keep track of custom plugins that have been registered. I think this was introduced in ML7. You can think of Custom UDF aggregate functions, but also of InfoStudio plugins, like custom collectors, and transforms. The latter are deprecated though, but still supported until now. Not sure if MarkLogic will look for that database at startup, but I wouldn’t be surprise if it does. So until someone from MarkLogic Engineering could tell more, I’d suggest replicating that as well.

Fab is only used in the context of InfoStudio to my knowledge. Since that is deprecated, I assume you won’t be using that, so you should be able to safely skip that.

Last-Login is another default-empty database, that will only be used if you explicitly enable keeping track of last logins on any of your app-servers. Not used by default, and you can pick any database you like.

Last but not least: Meters. History Monitoring fully depends on that database, and there is built-in logic to write info into that database. There are metering options on the Group level in the Admin UI. These are enabled, and point to the Meters database by default. You could disable this, and/or point to a different DB, but I’d recommend keeping it like it is, and just include Meters in replication.

So, to put it short: Security, App-Services, Extensions, Meters at the least. Then Documents, Modules, Schemas, Triggers as far as used by any of your applications (or any manually created version of those). Last-Login only if somewhere enabled. Fab can be ignored relatively safely. Then again, replicating an empty database won’t harm performance..

Kind regards,

From: <general-bounces at developer.marklogic.com<mailto:general-bounces at developer.marklogic.com>> on behalf of Paul Vanderveen <pvanderveen at terraxml.com<mailto:pvanderveen at terraxml.com>>
Reply-To: MarkLogic Developer Discussion <general at developer.marklogic.com<mailto:general at developer.marklogic.com>>
Date: Thursday, January 7, 2016 at 1:17 AM
To: MarkLogic Developer Discussion <general at developer.marklogic.com<mailto:general at developer.marklogic.com>>
Subject: Re: [MarkLogic Dev General] Shutting down initial host causes cluster to stop

Bryan and Geert,

Thank you for your info.  I have resumed my efforts trying to get local disk failover to work now since the holiday is over, but I still am having difficulty.  If anyone can shed any light I’d sure appreciate it.

1.      I have created a failover for Security DB as Bryan suggests, but the results are the same. Shutting down the primary shuts down all secondaries

2.      Geert has suggested that I also fail-over the forests for Modules, Triggers, and Schemas

3.      The documentation speaks (in a roundabout way) about App-Services and Meters too….

It is very confusing to know what is the minimum set of “built-in” databases that I need to create a failover for. In my little prototype I have no modules, triggers, or schemas, so I wouldn’t think I would need to set these up for failover, but I don’t know what MarkLogic is depending on internally.   Then there’s App-Services, Meters, Extensions, Fab, Last-Login, etc.  Any idea on what is the minimal set of databases that MarkLogic really needs to have access to in order to run?

It would seem to me that MarkLogic would publish a definitive list these necessary built-in databases so that fail over allows a server to run autonomously.  I would love to see this list included in the local disk clustering and failover set up docs.

Thanks for any help…

Paul Vanderveen

From: general-bounces at developer.marklogic.com<mailto:general-bounces at developer.marklogic.com> [mailto:general-bounces at developer.marklogic.com] On Behalf Of Clark, Bryan
Sent: Wednesday, December 23, 2015 4:32 PM
To: 'general at developer.marklogic.com<mailto:'general at developer.marklogic.com>' <general at developer.marklogic.com<mailto:general at developer.marklogic.com>>
Subject: Re: [MarkLogic Dev General] Shutting down initial host causes cluster to stop


Do you have Security forest replicated to Host 2 or Host 3?

You do need to have Security database online to continue working – the ‘shared nothing’ architecture does not extend to Security and some system features & facilities that leverage system databases like Documents, Meters, etc.; we are a local disk shop, and use Local Disk Forest Failover to distribute/failover-to the MarkLogic “system” databases as part of our default cluster provisioning.


From:general-bounces at developer.marklogic.com<mailto:general-bounces at developer.marklogic.com> [mailto:general-bounces at developer.marklogic.com] On Behalf Of Paul Vanderveen
Sent: Wednesday, December 23, 2015 6:21 PM
To: general at developer.marklogic.com<mailto:general at developer.marklogic.com>
Subject: [MarkLogic Dev General] Shutting down initial host causes cluster to stop

I created a 3 host cluster in order to better understand clustering

1.      Host 1 Has a forest that is replicated in Host 2 and 3. The forests are at “sync replicating”

2.      I disable the network from Host 1, so it is essentially removed

3.      The log reports failover, but….

I can’t do anything on Host 2 and 3 while Host 1 is offline.  Not even the admin page.  This seems wrong.  I thought all hosts shared essential data.

I can shut down Host 2 or 3 and everything including forest failover works fine, but shutting down Host 1 seems to bring the whole cluster down.   It was my understanding that there is no “master” host, so I would think that I could shut down any host and the others would take up the slack

Am I doing something wrong?  Is this expected results?

Paul Vanderveen

Confidentiality Notice: This electronic message transmission, including any attachment(s), may contain confidential, proprietary, or privileged information from Chemical Abstracts Service (“CAS”), a division of the American Chemical Society (“ACS”). If you have received this transmission in error, be advised that any disclosure, copying, distribution, or use of the contents of this information is strictly prohibited. Please destroy all copies of the message and contact the sender immediately by either replying to this message or calling 614-447-3600.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://developer.marklogic.com/pipermail/general/attachments/20160107/43c30e2c/attachment.html 

More information about the General mailing list