diff --git a/VERSION b/VERSION
index 05c14bd0..69e7c83e 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-Version 1.99.4 (2012-01-06 22:57:17) stable
+Version 1.99.4 (2012-01-12 12:27:44) stable
diff --git a/gluon/dal.py b/gluon/dal.py
index 27a321a3..09aecb76 100644
--- a/gluon/dal.py
+++ b/gluon/dal.py
@@ -195,14 +195,14 @@ thread = threading.local()
# internal representation of tables with field
#
., tables and fields may only be [a-zA-Z0-0_]
+regex_type = re.compile('^([\w\_\:]+)')
regex_dbname = re.compile('^(\w+)(\:\w+)*')
-table_field = re.compile('^([\w_]+)\.([\w_]+)$')
+regex_table_field = re.compile('^([\w_]+)\.([\w_]+)$')
regex_content = re.compile('(?P[\w\-]+)\.(?P[\w\-]+)\.(?P[\w\-]+)\.(?P\w+)\.\w+$')
regex_cleanup_fn = re.compile('[\'"\s;]+')
string_unpack=re.compile('(?0 and request.args[-1]=='csv':