mirror of https://github.com/yandex/odyssey.git
odissey: make scheme version 64bit
This commit is contained in:
parent
6f4328c892
commit
1d371edfce
|
@ -94,7 +94,7 @@ typedef struct
|
||||||
char *config_file;
|
char *config_file;
|
||||||
char *data;
|
char *data;
|
||||||
int data_size;
|
int data_size;
|
||||||
int version;
|
uint64_t version;
|
||||||
} od_config_t;
|
} od_config_t;
|
||||||
|
|
||||||
#define od_keyword(name, token) { token, name, sizeof(name) - 1 }
|
#define od_keyword(name, token) { token, name, sizeof(name) - 1 }
|
||||||
|
@ -911,7 +911,7 @@ od_config_parse(od_config_t *config)
|
||||||
}
|
}
|
||||||
|
|
||||||
int od_config_load(od_scheme_t *scheme, od_logger_t *logger, char *config_file,
|
int od_config_load(od_scheme_t *scheme, od_logger_t *logger, char *config_file,
|
||||||
int version)
|
uint64_t version)
|
||||||
{
|
{
|
||||||
od_config_t config;
|
od_config_t config;
|
||||||
memset(&config, 0, sizeof(config));
|
memset(&config, 0, sizeof(config));
|
||||||
|
|
|
@ -7,6 +7,6 @@
|
||||||
* Advanced PostgreSQL connection pooler.
|
* Advanced PostgreSQL connection pooler.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int od_config_load(od_scheme_t*, od_logger_t*, char*, int);
|
int od_config_load(od_scheme_t*, od_logger_t*, char*, uint64_t);
|
||||||
|
|
||||||
#endif /* OD_CONFIG_H */
|
#endif /* OD_CONFIG_H */
|
||||||
|
|
|
@ -96,7 +96,7 @@ int od_instance_main(od_instance_t *instance, int argc, char **argv)
|
||||||
instance->config_file = argv[1];
|
instance->config_file = argv[1];
|
||||||
|
|
||||||
/* read config file */
|
/* read config file */
|
||||||
int scheme_version;
|
uint64_t scheme_version;
|
||||||
scheme_version = od_schememgr_version(&instance->scheme_mgr);
|
scheme_version = od_schememgr_version(&instance->scheme_mgr);
|
||||||
|
|
||||||
int rc;
|
int rc;
|
||||||
|
|
|
@ -58,7 +58,7 @@ od_periodic_stats(od_router_t *router)
|
||||||
od_route_t *route;
|
od_route_t *route;
|
||||||
route = od_container_of(i, od_route_t, link);
|
route = od_container_of(i, od_route_t, link);
|
||||||
od_log(&instance->logger,
|
od_log(&instance->logger,
|
||||||
" [%.*s.%.*s.%d] %sclients %d, "
|
" [%.*s.%.*s.%" PRIu64 "] %sclients %d, "
|
||||||
"pool_active %d, "
|
"pool_active %d, "
|
||||||
"pool_idle %d ",
|
"pool_idle %d ",
|
||||||
route->id.database_len,
|
route->id.database_len,
|
||||||
|
|
|
@ -225,7 +225,7 @@ od_pooler_config_import(od_pooler_t *pooler)
|
||||||
|
|
||||||
od_scheme_t scheme;
|
od_scheme_t scheme;
|
||||||
od_scheme_init(&scheme);
|
od_scheme_init(&scheme);
|
||||||
int scheme_version;
|
uint64_t scheme_version;
|
||||||
scheme_version = od_schememgr_version_next(&instance->scheme_mgr);
|
scheme_version = od_schememgr_version_next(&instance->scheme_mgr);
|
||||||
int rc;
|
int rc;
|
||||||
rc = od_config_load(&scheme, &instance->logger, instance->config_file,
|
rc = od_config_load(&scheme, &instance->logger, instance->config_file,
|
||||||
|
|
|
@ -282,7 +282,7 @@ od_schemestorage_compare(od_schemestorage_t *a, od_schemestorage_t *b)
|
||||||
}
|
}
|
||||||
|
|
||||||
od_schemeroute_t*
|
od_schemeroute_t*
|
||||||
od_schemeroute_add(od_scheme_t *scheme, int version)
|
od_schemeroute_add(od_scheme_t *scheme, uint64_t version)
|
||||||
{
|
{
|
||||||
od_schemeroute_t *route;
|
od_schemeroute_t *route;
|
||||||
route = (od_schemeroute_t*)malloc(sizeof(*route));
|
route = (od_schemeroute_t*)malloc(sizeof(*route));
|
||||||
|
|
|
@ -73,7 +73,7 @@ struct od_schemeroute
|
||||||
int user_name_len;
|
int user_name_len;
|
||||||
int user_is_default;
|
int user_is_default;
|
||||||
int is_obsolete;
|
int is_obsolete;
|
||||||
int version;
|
uint64_t version;
|
||||||
int refs;
|
int refs;
|
||||||
/* auth */
|
/* auth */
|
||||||
char *auth;
|
char *auth;
|
||||||
|
@ -169,7 +169,7 @@ od_schemeroute_unref(od_schemeroute_t *route)
|
||||||
}
|
}
|
||||||
|
|
||||||
od_schemeroute_t*
|
od_schemeroute_t*
|
||||||
od_schemeroute_add(od_scheme_t*, int);
|
od_schemeroute_add(od_scheme_t*, uint64_t);
|
||||||
|
|
||||||
void od_schemeroute_free(od_schemeroute_t*);
|
void od_schemeroute_free(od_schemeroute_t*);
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ typedef struct od_schememgr od_schememgr_t;
|
||||||
|
|
||||||
struct od_schememgr
|
struct od_schememgr
|
||||||
{
|
{
|
||||||
int version;
|
uint64_t version;
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
|
@ -20,13 +20,13 @@ od_schememgr_init(od_schememgr_t *mgr)
|
||||||
mgr->version = 0;
|
mgr->version = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int
|
static inline uint64_t
|
||||||
od_schememgr_version(od_schememgr_t *mgr)
|
od_schememgr_version(od_schememgr_t *mgr)
|
||||||
{
|
{
|
||||||
return mgr->version;
|
return mgr->version;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int
|
static inline uint64_t
|
||||||
od_schememgr_version_next(od_schememgr_t *mgr)
|
od_schememgr_version_next(od_schememgr_t *mgr)
|
||||||
{
|
{
|
||||||
return ++mgr->version;
|
return ++mgr->version;
|
||||||
|
|
Loading…
Reference in New Issue