Squeeze out excess liquid from the sauerkraut. You should have now 1/2 lb (225g) sauerkraut. Place the sauerkraut in a medium pot, add bay leaves, allspice berries, caraway seeds, and enough water to cover it (about 2 cups). Bring to a boil then simmer for 20 minutes over low heat. Drain on a sieve and chop into smaller pieces. Discard bay leaves and allspice berries.
Cook the pasta al dente (it should have a bite to it and not be completely soft). Drain and set aside.
Chop all the other ingredients: Cut the cabbage into 1/2-inch (1.5 cm) cubes, mushrooms into 1/4-inch (5mm slices), kielbasa into 1/2-inch (1.5 cm) cubes, dice the onion, finely chop garlic cloves.
Add the chopped cabbage into a medium pot, cover with water. Bring to a boil then simmer for 15 minutes or until almost tender. Drain and set aside.
Heat 1 tablespoon of oil in a large frying pan. Add the kielbasa and cook over medium heat for a couple of minutes until browned on all sides. Transfer to a plate.
Add the mushrooms to the pan, cook them for a couple of minutes until browned on all sides. Transfer to a plate.
Add the onion and 2 tablespoons of oil, cook over medium-low heat for about 5-10 minutes or until soft and lightly caramelized. Add the garlic, marjoram, oregano, and paprika. Cook for 30 seconds. Transfer to a plate.
Add the drained white cabbage and the remaining 1 tablespoon of oil. Cook for a couple of minutes until the cabbage is soft and lightly browned.
Add all the other ingredients back to the pan (cooked pasta, sauerkraut, onions, mushrooms, and kielbasa), heat until warmed up. Toss everything together, season with salt and pepper to taste (generously with pepper). Sprinkle with chopped parsley.