mlDeploy failure while trying to install data hub framework using gradle
I'm trying to install DHF 2.0.6 over MarkLogic 9.0-5 server (community edition) on Windows 10. I'm able to perform "gradlew -PenvironmentName=local hubInit -i" but "gradle mlDeploy" fails with the below error. Can anyone help me to fix this issue?
:hubPreInstallCheck
com.marklogic.hub.PreInstallCheck@1f9cba88:mlGradleDeleteModuleTimestampsFile
Deleting G:\ODH\Development\EODH\build\ml-javaclient-util\module-timestamps.properties
:mlDeleteModuleTimestampsFile
:mlPrepareRestApiDependencies
:mlGradleLoadModules
Exception in thread "ThreadPoolTaskExecutor-1" com.marklogic.client.FailedRequestException: Local message: failed to apply resource at documents: Bad Request. Server Message: XDMP-NOSUCHDB: No such database data-hub-MODULES
at com.marklogic.client.impl.OkHttpServices.checkStatus(OkHttpServices.java:4317)
at com.marklogic.client.impl.OkHttpServices.postResource(OkHttpServices.java:3381)
at com.marklogic.client.impl.OkHttpServices.postBulkDocuments(OkHttpServices.java:3461)
at com.marklogic.client.impl.DocumentManagerImpl.write(DocumentManagerImpl.java:614)
at com.marklogic.client.impl.GenericDocumentImpl.write(GenericDocumentImpl.java:23)
at com.marklogic.client.impl.DocumentManagerImpl.write(DocumentManagerImpl.java:606)
at com.marklogic.client.impl.GenericDocumentImpl.write(GenericDocumentImpl.java:23)
at com.marklogic.client.impl.DocumentManagerImpl.write(DocumentManagerImpl.java:590)
at com.marklogic.client.impl.GenericDocumentImpl.write(GenericDocumentImpl.java:23)
at com.marklogic.client.ext.batch.DefaultBatchHandler.handleBatch(DefaultBatchHandler.java:48)
at com.marklogic.client.ext.batch.RestBatchWriter$1.run(RestBatchWriter.java:74)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
:mlDeployApp
Logging HTTP response body to assist with debugging: {"errorResponse":{"statusCode":"400", "status":"Bad Request", "messageCode":"MANAGE-INVALIDPAYLOAD", "message":"MANAGE-INVALIDPAYLOAD: (err:FOER0000) Payload has errors in structure, content-type or values. Payload malformed: ADMIN-INVALIDCONFIG: (err:FOER0000) Invalid configuration: '384' is not a valid in-memory-triple-index-size"}}
:mlDeployApp FAILED
build.gradle:
plugins {
// This plugin allows you to create different environments
// for your gradle deploy. Each environment is represented
// by a gradle-${env}.properties file
// See https://github.com/stevesaliman/gradle-properties-plugin
// specify the env on the command line with:
// gradle -PenvironmentName=x ...
id 'net.saliman.properties' version '1.4.6'
// This gradle plugin extends the ml-gradle plugin with
// commands that make the Data Hub Framework do its magic
id 'com.marklogic.ml-data-hub' version '2.0.6'
}
// These tasks work round an issue whereby the DHF does not seem to replace tokens in modules
//
// The mlGradleLoadModules task uses the base ml-gradle
// LoadModulesTask to load modules from src/main/ml-modules/. Put
// modules in which you need tokens replaced (for example config
// modules) into src/main/ml-modules.
task mlGradleLoadModules(type: com.marklogic.gradle.task.client.LoadModulesTask) {
dependsOn mlPrepareRestApiDependencies
mustRunAfter mlClearModulesDatabase
}
mlLoadModules.dependsOn mlGradleLoadModules
mlDeployApp.dependsOn mlGradleLoadModules
// The mlGradleDeleteModuleTimestampsFile ensures that the timestamps
// file gets deleted as and when required so that modules in
// src/main/ml-modules get reloaded when required.
task mlGradleDeleteModuleTimestampsFile(type: com.marklogic.gradle.task.DeleteModuleTimestampsFileTask)
mlDeleteModuleTimestampsFile.dependsOn mlGradleDeleteModuleTimestampsFile
gradle.properties:
# These settings are used by the Data Hub Framework when
# communicating with MarkLogic.
# The values in this file are meant as project-wide settings.
# You can override these properties for a specific environment
# by creating a gradle-{environment}.properties file.
# For example, to create a properties file for your prod environment create a file
# named gradle-prod.properties.
#
# ....
mlHost=localhost
# Your MarkLogic Username and Password
mlUsername=<uid>
mlPassword=<pwd>
mlOdbcserverName=data-hub-SQL
mlOdbcPort=5432
mlOdbcDbName=data-hub-SQLDB
mlOdbcForestsPerHost=4
mlOdbcAuth=basic
mlStagingAppserverName=data-hub-STAGING
mlStagingPort=8010
mlStagingDbName=data-hub-STAGING
mlStagingForestsPerHost=4
mlStagingAuth=digest
# To enable SSL for staging
mlStagingSimpleSsl=true
mlFinalAppserverName=data-hub-FINAL
mlFinalPort=8011
mlFinalDbName=data-hub-FINAL
mlFinalForestsPerHost=4
mlFinalAuth=digest
# To enable SSL for final
mlFinalSimpleSsl=true
mlTraceAppserverName=data-hub-TRACING
mlTracePort=8012
mlTraceDbName=data-hub-TRACING
mlTraceForestsPerHost=1
mlTraceAuth=digest
# To enable SSL for trace
# mlTraceSimpleSsl=true
mlJobAppserverName=data-hub-JOBS
mlJobPort=8013
mlJobDbName=data-hub-JOBS
mlJobForestsPerHost=1
mlJobAuth=digest
# To enable SSL for jobs
# mlJobSimpleSsl=true
mlModulesDbName=data-hub-MODULES
mlModulesForestsPerHost=1
mlTriggersDbName=data-hub-TRIGGERS
mlTriggersForestsPerHost=1
mlSchemasDbName=data-hub-SCHEMAS
mlSQLSchemasDbName=data-hub-SQL-SCHEMAS
mlSchemasForestsPerHost=1
# You can override this to specify an alternate folder for your
# custom forest info. Defaults to user-config/forests/
# mlCustomForestPath=forests
# The name of the Role to create for Hub Access
mlHubUserRole=data-hub-role
mlHubUserName=data-hub-user
gradle-local.properties:
# Put your overrides from gradle.properties here
# Don't check this in to version control
mlHost=localhost
mlUsername=<uid>
mlPassword=<uid>
mlStagingAuth=basic
mlFinalAuth=basic
# mlAppServicesAuthentication=digest
mlExternalSecurity=LDAPConfig
mlTestRestPort=8015
mlTestRestServerName=data-hub-TEST