Skip to content
This repository was archived by the owner on Sep 16, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -509,7 +509,10 @@ protected void setIncrementalMode(boolean incrementalMode) {
* within the directory should be associated with. But starting in 3.16.0, if the name of the directory doesn't
* match that of an existing database, then a check is made to see if there's a database file in the given ConfigDir
* that has the same name, minus its extension, as the database directory name. If so, then the database-name is
* extracted from that file and used as the database name. If not, an exception is thrown.
* extracted from that file and used as the database name. If not, a warning is logged and null is returned.
* Previously, an exception was thrown if the database-name could not be determined, but this raised problems for
* users that had directory names like ".svn" that they could not easily remove (and we can't eagerly ignore certain
* names since something like ".svn" is a valid ML database name).
*
* @param context
* @param configDir
Expand Down Expand Up @@ -538,8 +541,10 @@ protected String determineDatabaseNameForDatabaseResourceDirectory(CommandContex
}
}

throw new RuntimeException("Could not determine database to associate with database resource directory: " +
databaseResourceDir);
logger.warn("Could not determine database to associate with database resource directory: " +
databaseResourceDir + "; will not process any resource files in that directory");

return null;
}

public void setPayloadTokenReplacer(PayloadTokenReplacer payloadTokenReplacer) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,9 @@ public void execute(CommandContext context) {
deployActions(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployActions(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployActions(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,9 @@ public void execute(CommandContext context) {
deployAlertConfigs(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployAlertConfigs(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployAlertConfigs(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ public void execute(CommandContext context) {
deployRules(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployRules(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployRules(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,9 @@ public void execute(CommandContext context) {
deployConfigs(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployConfigs(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployConfigs(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,9 @@ public void execute(CommandContext context) {
deployFlexRepPulls(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployFlexRepPulls(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployFlexRepPulls(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ public void execute(CommandContext context) {
deployTargets(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployTargets(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployTargets(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ public void execute(CommandContext context) {
for (ConfigDir configDir : appConfig.getConfigDirs()) {
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployPartitionQueries(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployPartitionQueries(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ public void execute(CommandContext context) {
for (ConfigDir configDir : appConfig.getConfigDirs()) {
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployPartitions(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployPartitions(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ public void execute(CommandContext context) {
deployTemporalAxes(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployTemporalAxes(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployTemporalAxes(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@ public void execute(CommandContext context) {
deployTemporalCollections(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployTemporalCollections(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployTemporalCollections(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@ public void execute(CommandContext context) {
deployTemporalCollectionsLsqt(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployTemporalCollectionsLsqt(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployTemporalCollectionsLsqt(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ public void execute(CommandContext context) {
deployTriggers(context, configDir, initialTriggersDatabaseName);
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployTriggers(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployTriggers(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,9 @@ public void execute(CommandContext context) {
deployViewSchemas(context, configDir, appConfig.getContentDatabaseName());
for (File dir : configDir.getDatabaseResourceDirectories()) {
String databaseName = determineDatabaseNameForDatabaseResourceDirectory(context, configDir, dir);
deployViewSchemas(context, new ConfigDir(dir), databaseName);
if (databaseName != null) {
deployViewSchemas(context, new ConfigDir(dir), databaseName);
}
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@

import java.io.File;

/**
* This test is also expected to verify the fix for #442, which is that when a database resource directory - in this
* case, sample-app/alert-configs/databases/unknown-database - cannot be associated with an existing ML database, an
* exception is NOT thrown but rather a warning is logged. The fact that the test succeeds is evidence of this.
*/
public class ManageAlertConfigsTest extends AbstractManageResourceTest {

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"uri": "should-be-ignored-alert-config",
"name": "Should Be Ignored Alerting App",
"description": "This should be ignored since the parent directory of 'unknown-database' doesn't match an existing ML database",
"trigger": [],
"domain": [],
"action": [],
"option": []
}