Wenn PHP eine Fehlermeldung ausgibt, hat es immer Recht. Vermutlich hast du entweder die Session nicht geöffnet oder nicht wiedereröffnet. Ein session_start() ist in deinem Ausschnitt nicht zu sehen. Das käme vermutlich auch nicht in diese Methode, sondern irgendwo an eine zentrale Stelle.
Richtig - das ist sie auch. Und alle anderen Session-Deklarationen funktionieren - nur diese nicht.