Merge pull request #36 from emfrias/make-bmg-resolution-ordering-consistent
Make indexes on blockchain objects related to betting markets into
This commit is contained in:
commit
fd71c4b682
5 changed files with 32 additions and 12 deletions
|
|
@ -247,8 +247,12 @@ typedef multi_index_container<
|
||||||
betting_market_group_object,
|
betting_market_group_object,
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_non_unique< tag<by_event_id>, member<betting_market_group_object, event_id_type, &betting_market_group_object::event_id> >,
|
ordered_unique< tag<by_event_id>, composite_key<betting_market_group_object,
|
||||||
ordered_non_unique< tag<by_settling_time>, member<betting_market_group_object, fc::optional<fc::time_point_sec>, &betting_market_group_object::settling_time> >
|
member<betting_market_group_object, event_id_type, &betting_market_group_object::event_id>,
|
||||||
|
member<object, object_id_type, &object::id> > >,
|
||||||
|
ordered_unique< tag<by_settling_time>, composite_key<betting_market_group_object,
|
||||||
|
member<betting_market_group_object, fc::optional<fc::time_point_sec>, &betting_market_group_object::settling_time>,
|
||||||
|
member<object, object_id_type, &object::id> > >
|
||||||
> > betting_market_group_object_multi_index_type;
|
> > betting_market_group_object_multi_index_type;
|
||||||
typedef generic_index<betting_market_group_object, betting_market_group_object_multi_index_type> betting_market_group_object_index;
|
typedef generic_index<betting_market_group_object, betting_market_group_object_multi_index_type> betting_market_group_object_index;
|
||||||
|
|
||||||
|
|
@ -256,7 +260,9 @@ typedef multi_index_container<
|
||||||
betting_market_object,
|
betting_market_object,
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_non_unique< tag<by_betting_market_group_id>, member<betting_market_object, betting_market_group_id_type, &betting_market_object::group_id> >
|
ordered_unique< tag<by_betting_market_group_id>, composite_key<betting_market_object,
|
||||||
|
member<betting_market_object, betting_market_group_id_type, &betting_market_object::group_id>,
|
||||||
|
member<object, object_id_type, &object::id> > >
|
||||||
> > betting_market_object_multi_index_type;
|
> > betting_market_object_multi_index_type;
|
||||||
|
|
||||||
typedef generic_index<betting_market_object, betting_market_object_multi_index_type> betting_market_object_index;
|
typedef generic_index<betting_market_object, betting_market_object_multi_index_type> betting_market_object_index;
|
||||||
|
|
@ -593,7 +599,9 @@ typedef multi_index_container<
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_unique< tag<by_odds>, identity<bet_object>, compare_bet_by_odds >,
|
ordered_unique< tag<by_odds>, identity<bet_object>, compare_bet_by_odds >,
|
||||||
ordered_non_unique< tag<by_betting_market_id>, member<bet_object, betting_market_id_type, &bet_object::betting_market_id> >,
|
ordered_unique< tag<by_betting_market_id>, composite_key<bet_object,
|
||||||
|
member<bet_object, betting_market_id_type, &bet_object::betting_market_id>,
|
||||||
|
member<object, object_id_type, &object::id> > >,
|
||||||
ordered_unique< tag<by_bettor_and_odds>, identity<bet_object>, compare_bet_by_bettor_then_odds > > > bet_object_multi_index_type;
|
ordered_unique< tag<by_bettor_and_odds>, identity<bet_object>, compare_bet_by_bettor_then_odds > > > bet_object_multi_index_type;
|
||||||
typedef generic_index<bet_object, bet_object_multi_index_type> bet_object_index;
|
typedef generic_index<bet_object, bet_object_multi_index_type> bet_object_index;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -151,7 +151,7 @@
|
||||||
#define GRAPHENE_RECENTLY_MISSED_COUNT_INCREMENT 4
|
#define GRAPHENE_RECENTLY_MISSED_COUNT_INCREMENT 4
|
||||||
#define GRAPHENE_RECENTLY_MISSED_COUNT_DECREMENT 3
|
#define GRAPHENE_RECENTLY_MISSED_COUNT_DECREMENT 3
|
||||||
|
|
||||||
#define GRAPHENE_CURRENT_DB_VERSION "PPY2.0"
|
#define GRAPHENE_CURRENT_DB_VERSION "PPY2.1"
|
||||||
|
|
||||||
#define GRAPHENE_IRREVERSIBLE_THRESHOLD (70 * GRAPHENE_1_PERCENT)
|
#define GRAPHENE_IRREVERSIBLE_THRESHOLD (70 * GRAPHENE_1_PERCENT)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,8 @@
|
||||||
#include <graphene/db/object.hpp>
|
#include <graphene/db/object.hpp>
|
||||||
#include <graphene/db/generic_index.hpp>
|
#include <graphene/db/generic_index.hpp>
|
||||||
|
|
||||||
|
#include <boost/multi_index/composite_key.hpp>
|
||||||
|
|
||||||
namespace graphene { namespace chain {
|
namespace graphene { namespace chain {
|
||||||
|
|
||||||
class database;
|
class database;
|
||||||
|
|
@ -49,7 +51,9 @@ typedef multi_index_container<
|
||||||
event_group_object,
|
event_group_object,
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_non_unique< tag<by_sport_id>, member< event_group_object, sport_id_type, &event_group_object::sport_id > > >
|
ordered_unique< tag<by_sport_id>, composite_key<event_group_object,
|
||||||
|
member< event_group_object, sport_id_type, &event_group_object::sport_id >,
|
||||||
|
member<object, object_id_type, &object::id> > > >
|
||||||
> event_group_object_multi_index_type;
|
> event_group_object_multi_index_type;
|
||||||
|
|
||||||
typedef generic_index<event_group_object, event_group_object_multi_index_type> event_group_object_index;
|
typedef generic_index<event_group_object, event_group_object_multi_index_type> event_group_object_index;
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,8 @@
|
||||||
#include <graphene/db/generic_index.hpp>
|
#include <graphene/db/generic_index.hpp>
|
||||||
#include <graphene/chain/protocol/event.hpp>
|
#include <graphene/chain/protocol/event.hpp>
|
||||||
|
|
||||||
|
#include <boost/multi_index/composite_key.hpp>
|
||||||
|
|
||||||
namespace graphene { namespace chain {
|
namespace graphene { namespace chain {
|
||||||
class event_object;
|
class event_object;
|
||||||
} }
|
} }
|
||||||
|
|
@ -100,8 +102,12 @@ typedef multi_index_container<
|
||||||
event_object,
|
event_object,
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_non_unique< tag<by_event_group_id>, member< event_object, event_group_id_type, &event_object::event_group_id > >,
|
ordered_unique< tag<by_event_group_id>, composite_key<event_object,
|
||||||
ordered_non_unique< tag<by_event_status>, const_mem_fun< event_object, event_status, &event_object::get_status > > > > event_object_multi_index_type;
|
member< event_object, event_group_id_type, &event_object::event_group_id >,
|
||||||
|
member<object, object_id_type, &object::id> > >,
|
||||||
|
ordered_unique< tag<by_event_status>, composite_key<event_object,
|
||||||
|
const_mem_fun< event_object, event_status, &event_object::get_status >,
|
||||||
|
member<object, object_id_type, &object::id> > > > > event_object_multi_index_type;
|
||||||
|
|
||||||
typedef generic_index<event_object, event_object_multi_index_type> event_object_index;
|
typedef generic_index<event_object, event_object_multi_index_type> event_object_index;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -133,14 +133,16 @@ namespace graphene { namespace chain {
|
||||||
tournament_object,
|
tournament_object,
|
||||||
indexed_by<
|
indexed_by<
|
||||||
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
ordered_unique< tag<by_id>, member< object, object_id_type, &object::id > >,
|
||||||
ordered_non_unique< tag<by_registration_deadline>,
|
ordered_unique< tag<by_registration_deadline>,
|
||||||
composite_key<tournament_object,
|
composite_key<tournament_object,
|
||||||
const_mem_fun<tournament_object, tournament_state, &tournament_object::get_state>,
|
const_mem_fun<tournament_object, tournament_state, &tournament_object::get_state>,
|
||||||
const_mem_fun<tournament_object, time_point_sec, &tournament_object::get_registration_deadline> > >,
|
const_mem_fun<tournament_object, time_point_sec, &tournament_object::get_registration_deadline>,
|
||||||
ordered_non_unique< tag<by_start_time>,
|
member< object, object_id_type, &object::id > > >,
|
||||||
|
ordered_unique< tag<by_start_time>,
|
||||||
composite_key<tournament_object,
|
composite_key<tournament_object,
|
||||||
const_mem_fun<tournament_object, tournament_state, &tournament_object::get_state>,
|
const_mem_fun<tournament_object, tournament_state, &tournament_object::get_state>,
|
||||||
member<tournament_object, optional<time_point_sec>, &tournament_object::start_time> > >
|
member<tournament_object, optional<time_point_sec>, &tournament_object::start_time>,
|
||||||
|
member< object, object_id_type, &object::id > > >
|
||||||
>
|
>
|
||||||
> tournament_object_multi_index_type;
|
> tournament_object_multi_index_type;
|
||||||
typedef generic_index<tournament_object, tournament_object_multi_index_type> tournament_index;
|
typedef generic_index<tournament_object, tournament_object_multi_index_type> tournament_index;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue