Index: django/contrib/sessions/tests.py
===================================================================
--- django/contrib/sessions/tests.py	(revision 7715)
+++ django/contrib/sessions/tests.py	(working copy)
@@ -147,6 +147,15 @@
 >>> list(i)
 [('x', 1)]
 
+# test .clear()
+>>> s.modified = s.accessed = False
+>>> s.items()
+[('x', 1)]
+>>> s.clear()
+>>> s.items()
+[]
+>>> s.accessed, s.modified
+(True, True)
  
 
 #########################
Index: django/contrib/sessions/backends/base.py
===================================================================
--- django/contrib/sessions/backends/base.py	(revision 7715)
+++ django/contrib/sessions/backends/base.py	(working copy)
@@ -52,6 +52,10 @@
         self.modified = self.modified or key in self._session
         return self._session.pop(key, *args)
 
+    def clear(self):
+        self._session.clear()
+        self.modified = True
+
     def setdefault(self, key, value):
         if key in self._session:
             return self._session[key]
Index: docs/sessions.txt
===================================================================
--- docs/sessions.txt	(revision 7715)
+++ docs/sessions.txt	(working copy)
@@ -106,6 +106,11 @@
 
     * ``setdefault()`` (**New in Django development version**)
 
+    * ``clear()`` (**New in Django development version**)
+
+      This clears all session data. It results in an empty session that is
+      saved to the session store.
+
 It also has these methods:
 
     * ``set_test_cookie()``
