Can I use mlDatabasesWithForestsOnOneHost with replicas?

68 Views Asked by At

mlPrintForestPlan gives an error when I try to use mlDatabasesWithForestsOnOneHost with replicas in a 3-node cluster.

# gradle-prod.properties
mlDatabasesWithForestsOnOneHost=myApp-modules,myApp-schemas,myApp-triggers
mlDatabaseNamesAndReplicaCounts=myApp-content,1,myApp-modules,1,myApp-schemas,1,myApp-triggers,1

The mlPrintForestPlan command shows an error with the configuration above. Do I need to specify something else to set up a database on just one host with a replica on another?

./gradlew mlPrintForestPlan -Pdatabase=myApp-modules -PenvironmentName=prod
> Task :mlPrintForestPlan FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':mlPrintForestPlan'.
> Not enough hosts exists to create 1 replicas for database 'myApp-modules'; possible hosts, which may include the host with the primary forest and thus cannot have a replica: [myHost1]

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.3/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 4s
1 actionable task: 1 executed

Versions:

  • MarkLogic: 10.0-5.1
  • ml-gradle: 6.3
  • JDK: openjdk version "13.0.2" 2020-01-14
1

There are 1 best solutions below

1
On BEST ANSWER

If it's not working, it sounds like an untested scenario - just create a new ticket in ml-app-deployer to capture support for creating replicas for databases that are configured to only have forests on one host.