public function execute(\Magento\Framework\Event\Observer $observer)
    {
        /** define local working data */
        /** @var \Magento\Catalog\Model\Product $product */
        $product = $observer->getData(self::DATA_PRODUCT);

        /** perform processing */
        if ($product instanceof \Magento\Catalog\Model\Product) {
            $product->setSpecialPrice(null);
        }
    }
public function execute(\Magento\Framework\Event\Observer $observer)
    {
        /** define local working data */
        /** @var \Magento\Catalog\Model\Product $product */
        $product = $observer->getData(self::DATA_PRODUCT);

        /** perform processing */
        if ($product instanceof \Magento\Catalog\Model\Product) {
            $product->setSpecialPrice(null);
        }
    }
public function execute ( \ Magento \ Framework \ Event \ Observer $ observer ) { /** define local working data */ /** @var \Magento\Catalog\Model\Product $product */ $ product = $ observer -> getData ( self :: DATA_PRODUCT ) ; /** perform processing */ if ( $ product instanceof \ Magento \ Catalog \ Model \ Product ) { $ product -> setSpecialPrice ( null ) ; } }
Don't save special price in DB. We use warehouse related special prices.

@param \Magento\Framework\Event\Observer $observer
Don t save special price in DB . We use warehouse related special prices .