Skip to content

Commit

Permalink
fix address_range NULL
Browse files Browse the repository at this point in the history
  • Loading branch information
NikitaUnisikhin committed Dec 15, 2023
1 parent 2830e51 commit c0ef212
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 9 deletions.
39 changes: 39 additions & 0 deletions config-examples/odyssey-dev.conf
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,45 @@ storage "postgres_server" {
port 5550
}

database default {
user default {
authentication "md5"

password "md588cb17a149f659b9a78ec4a33cbb3c7f"

storage "postgres_server"
pool "transaction"
pool_size 0

# auth_query "SELECT usename, passwd FROM pg_shadow WHERE usename=$1"
# auth_query_db "postgres"
# auth_query_user "reshke"
# storage_password "reshke"

pool_timeout 0

pool_ttl 1201

pool_discard no

pool_cancel yes

pool_rollback yes
# seconds
pool_client_idle_timeout 20
# seconds
pool_idle_in_transaction_timeout 20

client_fwd_error yes
application_name_add_host yes
server_lifetime 1901
log_debug no

quantiles "0.99,0.95,0.5"
client_max 107
}
}

storage "local" {
type "local"
}
Expand Down
1 change: 0 additions & 1 deletion sources/config_reader.c
Original file line number Diff line number Diff line change
Expand Up @@ -1700,7 +1700,6 @@ static int od_config_reader_rule_settings(od_config_reader_t *reader,
return NOT_OK_RESPONSE;
}

// TODO: fix null address_range
static int od_config_reader_route(od_config_reader_t *reader, char *db_name,
int db_name_len, int db_is_default,
od_extention_t *extentions)
Expand Down
13 changes: 5 additions & 8 deletions sources/rules.c
Original file line number Diff line number Diff line change
Expand Up @@ -879,13 +879,15 @@ int od_rules_autogenerate_defaults(od_rules_t *rules, od_logger_t *logger)
}
}

od_address_range_t default_address_range = od_address_range_create_default();

if (!need_autogen ||
od_rules_match(rules, "default_db", "default_user", NULL, 1, 1, 1)) {
od_rules_match(rules, "default_db", "default_user", &default_address_range, 1, 1, 1)) {
return OK_RESPONSE;
}

default_rule =
od_rules_match(rules, "default_db", "default_user", NULL, 1, 1, 0);
od_rules_match(rules, "default_db", "default_user", &default_address_range, 1, 1, 0);
if (!default_rule) {
od_log(logger, "config", NULL, NULL,
"skipping default internal rule auto-generation: no default rule provided");
Expand Down Expand Up @@ -922,12 +924,7 @@ int od_rules_autogenerate_defaults(od_rules_t *rules, od_logger_t *logger)
if (rule->db_name == NULL)
return NOT_OK_RESPONSE;

rule->address_range.is_default = 1;
rule->address_range.string_len = strlen("default_address_range");
/* we need malloc'd string here */
rule->address_range.string = strdup("default_address_range");
if (rule->address_range.string == NULL)
return NOT_OK_RESPONSE;
rule->address_range = default_address_range;

/* force several default settings */
#define OD_DEFAULT_INTERNAL_POLL_SZ 0
Expand Down

0 comments on commit c0ef212

Please sign in to comment.