code.vegaprotocol.io/vega@v0.79.0/datanode/sqlstore/migrations/0070_add_liquidation_strategy.sql (about)

     1  -- +goose Up
     2  
     3  ALTER TABLE markets ADD COLUMN IF NOT EXISTS liquidation_strategy jsonb;
     4  
     5  ALTER TABLE markets_current ADD COLUMN IF NOT EXISTS liquidation_strategy jsonb;
     6  
     7  -- +goose StatementBegin
     8  CREATE OR REPLACE FUNCTION update_current_markets()
     9      RETURNS TRIGGER
    10      LANGUAGE PLPGSQL AS
    11  $$
    12  BEGIN
    13  INSERT INTO markets_current(id,tx_hash,vega_time,instrument_id,tradable_instrument,decimal_places,fees,opening_auction,price_monitoring_settings,liquidity_monitoring_parameters,trading_mode,state,market_timestamps,position_decimal_places,lp_price_range, linear_slippage_factor, quadratic_slippage_factor, parent_market_id, insurance_pool_fraction, liquidity_sla_parameters, liquidation_strategy)
    14  VALUES (NEW.id,NEW.tx_hash,NEW.vega_time,NEW.instrument_id,NEW.tradable_instrument,NEW.decimal_places,NEW.fees,NEW.opening_auction,NEW.price_monitoring_settings,NEW.liquidity_monitoring_parameters,NEW.trading_mode,NEW.state,NEW.market_timestamps,NEW.position_decimal_places,NEW.lp_price_range, NEW.linear_slippage_factor, NEW.quadratic_slippage_factor, NEW.parent_market_id, NEW.insurance_pool_fraction, NEW.liquidity_sla_parameters, NEW.liquidation_strategy)
    15      ON CONFLICT(id) DO UPDATE SET
    16      tx_hash=EXCLUDED.tx_hash,
    17                             instrument_id=EXCLUDED.instrument_id,
    18                             tradable_instrument=EXCLUDED.tradable_instrument,
    19                             decimal_places=EXCLUDED.decimal_places,
    20                             fees=EXCLUDED.fees,
    21                             opening_auction=EXCLUDED.opening_auction,
    22                             price_monitoring_settings=EXCLUDED.price_monitoring_settings,
    23                             liquidity_monitoring_parameters=EXCLUDED.liquidity_monitoring_parameters,
    24                             trading_mode=EXCLUDED.trading_mode,
    25                             state=EXCLUDED.state,
    26                             market_timestamps=EXCLUDED.market_timestamps,
    27                             position_decimal_places=EXCLUDED.position_decimal_places,
    28                             lp_price_range=EXCLUDED.lp_price_range,
    29                             linear_slippage_factor=EXCLUDED.linear_slippage_factor,
    30                             quadratic_slippage_factor=EXCLUDED.quadratic_slippage_factor,
    31                             vega_time=EXCLUDED.vega_time,
    32                             parent_market_id=EXCLUDED.parent_market_id,
    33                             insurance_pool_fraction=EXCLUDED.insurance_pool_fraction,
    34                             liquidity_sla_parameters=EXCLUDED.liquidity_sla_parameters,
    35                             liquidation_strategy=EXCLUDED.liquidation_strategy;
    36  RETURN NULL;
    37  END;
    38  $$;
    39  -- +goose StatementEnd
    40  
    41  
    42  -- +goose Down
    43  
    44  -- +goose StatementBegin
    45  CREATE OR REPLACE FUNCTION update_current_markets()
    46      RETURNS TRIGGER
    47      LANGUAGE PLPGSQL AS
    48  $$
    49  BEGIN
    50  INSERT INTO markets_current(id,tx_hash,vega_time,instrument_id,tradable_instrument,decimal_places,fees,opening_auction,price_monitoring_settings,liquidity_monitoring_parameters,trading_mode,state,market_timestamps,position_decimal_places,lp_price_range, linear_slippage_factor, quadratic_slippage_factor, parent_market_id, insurance_pool_fraction, liquidity_sla_parameters)
    51  VALUES (NEW.id,NEW.tx_hash,NEW.vega_time,NEW.instrument_id,NEW.tradable_instrument,NEW.decimal_places,NEW.fees,NEW.opening_auction,NEW.price_monitoring_settings,NEW.liquidity_monitoring_parameters,NEW.trading_mode,NEW.state,NEW.market_timestamps,NEW.position_decimal_places,NEW.lp_price_range, NEW.linear_slippage_factor, NEW.quadratic_slippage_factor, NEW.parent_market_id, NEW.insurance_pool_fraction, NEW.liquidity_sla_parameters)
    52      ON CONFLICT(id) DO UPDATE SET
    53      tx_hash=EXCLUDED.tx_hash,
    54                             instrument_id=EXCLUDED.instrument_id,
    55                             tradable_instrument=EXCLUDED.tradable_instrument,
    56                             decimal_places=EXCLUDED.decimal_places,
    57                             fees=EXCLUDED.fees,
    58                             opening_auction=EXCLUDED.opening_auction,
    59                             price_monitoring_settings=EXCLUDED.price_monitoring_settings,
    60                             liquidity_monitoring_parameters=EXCLUDED.liquidity_monitoring_parameters,
    61                             trading_mode=EXCLUDED.trading_mode,
    62                             state=EXCLUDED.state,
    63                             market_timestamps=EXCLUDED.market_timestamps,
    64                             position_decimal_places=EXCLUDED.position_decimal_places,
    65                             lp_price_range=EXCLUDED.lp_price_range,
    66                             linear_slippage_factor=EXCLUDED.linear_slippage_factor,
    67                             quadratic_slippage_factor=EXCLUDED.quadratic_slippage_factor,
    68                             vega_time=EXCLUDED.vega_time,
    69                             parent_market_id=EXCLUDED.parent_market_id,
    70                             insurance_pool_fraction=EXCLUDED.insurance_pool_fraction,
    71                             liquidity_sla_parameters=EXCLUDED.liquidity_sla_parameters;
    72  RETURN NULL;
    73  END;
    74  $$;
    75  -- +goose StatementEnd