First, mix butter, canola oil, and sugar until creamy. Then, add vanilla extract and eggs. Mix in sour cream. Add pastry flour, baking powder, baking soda, and salt to mixture. Pour 16 ounces (about 2 cups) of batter into 9-by-13-inch pan. For the topping, combine all ingredients until it has a crumbly consistency. Put a little of the crumb topping on top of batter in pan. Then, pour 30 ounces (about 3¾ cups) of batter atop crumb mixture, and cover with remaining crumb topping. Bake at 350 degrees F for 25 to 30 minutes.