In large pot of boiling salted water, blanch cabbage, one at a time, for 5 to 8 minutes or until leaves are softened. Remove and chill in cold water. Remove a few outer leaves and set aside.
Working from the core end, carefully remove 12 leaves from each cabbage, returning cabbage to boiling water for 2 to 3 minutes when leaves become difficult to remove. Drain on towels. Pare off course veins; set leaves aside.
Meanwhile, in saucepan, bring stock to boil; stir in rice. Cover and cook over low heat for 15 to 20 minutes or until tender and stock is absorbed. Transfer to large bowl.
Meanwhile, in large skillet, cook bacon over medium heat for about 5 minutes or until crisp; drain off fat. Add butter to skillet, cook onions, garlic, red pepper, marjoram and thyme, stirring occasionally, for 5 minutes or until onions are softened. Add to rice along with beef, parsley, salt, pepper and egg; mix well.
Spoon about 1/4 cup (50mL) rice mixture onto each leaf just above stem. Fold end and sides over filling; roll up.
Line 24-cup (6L) roasting pan or Dutch oven with one-third of the sauerkraut; sprinkle with one-third of the sugar. Top with half of the rolls, seam side down. Cover with another third of the sauerkraut and another third of the sugar. Repeat with remaining rolls, sauerkraut and sugar.
Pour tomato juice over top. Arrange a few reserved leaves over top to prevent scorching. Cover and bake in 350 oven (180C)for 1 1/2 hours. Uncover and bake for 30 minutes longer or until rolls are tender. Discard top leaves.
Serve with a dollop of sour cream.