Changeset: 159bb3cfae0e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=159bb3cfae0e
Modified Files:
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
clients/Tests/exports.stable.out
clients/python/monetdb/mapi.py
clients/python/test/dbapi20.py
clients/python3/monetdb/mapi.py
clients/python3/test/dbapi20.py
gdk/gdk.h
monetdb5/modules/mal/Makefile.ag
monetdb5/modules/mal/Tests/All
monetdb5/modules/mal/mal_init.mal
monetdb5/optimizer/Makefile.ag
monetdb5/optimizer/opt_pipes.c
monetdb5/optimizer/opt_support.c
monetdb5/optimizer/opt_support.h
monetdb5/optimizer/opt_wrapper.c
monetdb5/optimizer/optimizer.mal
sql/test/Tests/setoptimizer.stable.out
sql/test/Tests/setoptimizer.stable.out.Windows
sql/test/mapi/Tests/python_test_monetdb_sql.stable.err
sql/test/testdb/Tests/testdb-dump.timeout
testing/Mtest.py.in
tools/merovingian/daemon/monetdbd.1.in
Branch: sciql
Log Message:
merged with default
diffs (282 lines):
diff --git a/NT/installer32/MonetDB5-SQL-Installer.vdproj
b/NT/installer32/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer32/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer32/MonetDB5-SQL-Installer.vdproj
@@ -591,12 +591,6 @@
}
"Entry"
{
- "MsmKey" = "8:_B19E5558F57A40498434042A6A518D70"
- "OwnerKey" = "8:_UNDEFINED"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_B29D1CC37FAC4C7BAC52DD29A5303F05"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -2829,26 +2823,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B19E5558F57A40498434042A6A518D70"
- {
- "SourcePath" = "8:lib\\monetdb5\\batifthen.mal"
- "TargetName" = "8:batifthen.mal"
- "Tag" = "8:"
- "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "IsolateTo" = "8:"
- }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B29D1CC37FAC4C7BAC52DD29A5303F05"
{
"SourcePath" = "8:lib\\monetdb5\\zorder.mal"
diff --git a/NT/installer64/MonetDB5-SQL-Installer.vdproj
b/NT/installer64/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer64/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer64/MonetDB5-SQL-Installer.vdproj
@@ -105,12 +105,6 @@
}
"Entry"
{
- "MsmKey" = "8:_1AE601672DEA4DC8BA85FA9474186451"
- "OwnerKey" = "8:_UNDEFINED"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
"MsmKey" = "8:_1AF238588D2D4EA5A416D48291406811"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
@@ -1229,26 +1223,6 @@
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1AE601672DEA4DC8BA85FA9474186451"
- {
- "SourcePath" = "8:lib\\monetdb5\\batifthen.mal"
- "TargetName" = "8:batifthen.mal"
- "Tag" = "8:"
- "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "IsolateTo" = "8:"
- }
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1AF238588D2D4EA5A416D48291406811"
{
"SourcePath" =
"8:C:\\Libraries\\iconv-1.11.1.win64-vs10\\lib\\iconv.lib"
diff --git a/clients/python/monetdb/mapi.py b/clients/python/monetdb/mapi.py
--- a/clients/python/monetdb/mapi.py
+++ b/clients/python/monetdb/mapi.py
@@ -86,7 +86,7 @@ class Server(object):
self.socket.connect((hostname, port))
except socket.error, error:
(error_code, error_str) = error
- raise OperationalError(error_str + " (%s)" % error_code)
+ raise OperationalError(error_str + " (%s:%s)" % (self.hostname,
self.port))
self.__login()
diff --git a/clients/python/test/dbapi20.py b/clients/python/test/dbapi20.py
--- a/clients/python/test/dbapi20.py
+++ b/clients/python/test/dbapi20.py
@@ -106,7 +106,7 @@ class DatabaseAPI20Test(unittest.TestCas
The 'Optional Extensions' are not yet being tested.
self.drivers should subclass this test, overriding setUp, tearDown,
- self.driver, connect_args and connect_kw_args. Class specification
+ self.driver, connect_args and connect_kwargs. Class specification
should be as follows:
import dbapi20
@@ -121,7 +121,7 @@ class DatabaseAPI20Test(unittest.TestCas
# method is to be found
driver = None
connect_args = () # List of arguments to pass to connect
- connect_kw_args = {} # Keyword arguments for connect
+ connect_kwargs = {} # Keyword arguments for connect
table_prefix = 'dbapi20test_' # If you need to specify a prefix for tables
ddl1 = 'create table %sbooze (name varchar(20))' % table_prefix
@@ -165,9 +165,7 @@ class DatabaseAPI20Test(unittest.TestCas
def _connect(self):
try:
- return self.driver.connect(
- *self.connect_args,**self.connect_kw_args
- )
+ return self.driver.connect(*self.connect_args,
**self.connect_kwargs)
except AttributeError:
self.fail("No connect method found in self.driver module")
diff --git a/clients/python3/monetdb/mapi.py b/clients/python3/monetdb/mapi.py
--- a/clients/python3/monetdb/mapi.py
+++ b/clients/python3/monetdb/mapi.py
@@ -76,7 +76,7 @@ class Server:
self.socket.connect((hostname, port))
except socket.error as error:
(error_code, error_str) = error
- raise OperationalError(error_str)
+ raise OperationalError(error_str + "(%s:%s)" % (self.hostname,
self.port))
self.__login()
diff --git a/clients/python3/test/dbapi20.py b/clients/python3/test/dbapi20.py
--- a/clients/python3/test/dbapi20.py
+++ b/clients/python3/test/dbapi20.py
@@ -106,7 +106,7 @@ class DatabaseAPI20Test(unittest.TestCas
The 'Optional Extensions' are not yet being tested.
self.drivers should subclass this test, overriding setUp, tearDown,
- self.driver, connect_args and connect_kw_args. Class specification
+ self.driver, connect_args and connect_kwargs. Class specification
should be as follows:
import dbapi20
@@ -121,7 +121,7 @@ class DatabaseAPI20Test(unittest.TestCas
# method is to be found
driver = None
connect_args = () # List of arguments to pass to connect
- connect_kw_args = {} # Keyword arguments for connect
+ connect_kwargs = {} # Keyword arguments for connect
table_prefix = 'dbapi20test_' # If you need to specify a prefix for tables
ddl1 = 'create table %sbooze (name varchar(20))' % table_prefix
@@ -166,7 +166,7 @@ class DatabaseAPI20Test(unittest.TestCas
def _connect(self):
try:
return self.driver.connect(
- *self.connect_args,**self.connect_kw_args
+ *self.connect_args,**self.connect_kwargs
)
except AttributeError:
self.fail("No connect method found in self.driver module")
diff --git a/sql/test/mapi/Tests/python_test_monetdb_sql.stable.err
b/sql/test/mapi/Tests/python_test_monetdb_sql.stable.err
--- a/sql/test/mapi/Tests/python_test_monetdb_sql.stable.err
+++ b/sql/test/mapi/Tests/python_test_monetdb_sql.stable.err
@@ -80,6 +80,7 @@ stderr of test 'python_test_monetdb_sql`
# 11:54:47 >
test_BLOB (__main__.Test_Capabilities) ... ok
+test_BOOL (__main__.Test_Capabilities) ... ok
test_CHAR (__main__.Test_Capabilities) ... ok
test_DATE (__main__.Test_Capabilities) ... ok
test_DATETIME (__main__.Test_Capabilities) ... ok
@@ -100,7 +101,7 @@ test_transactions (__main__.Test_Capabil
test_truncation (__main__.Test_Capabilities) ... ok
----------------------------------------------------------------------
-Ran 19 tests
+Ran 20 tests
OK
test_BINARY (__main__.Test_DBAPI20) ... ok
@@ -124,19 +125,18 @@ test_connect (__main__.Test_DBAPI20) ...
test_cursor (__main__.Test_DBAPI20) ... ok
test_cursor_isolation (__main__.Test_DBAPI20) ... ok
test_description (__main__.Test_DBAPI20) ... ok
+test_escape (__main__.Test_DBAPI20) ... ok
test_execute (__main__.Test_DBAPI20) ... ok
test_executemany (__main__.Test_DBAPI20) ... ok
test_fetchall (__main__.Test_DBAPI20) ... ok
test_fetchmany (__main__.Test_DBAPI20) ... ok
test_fetchone (__main__.Test_DBAPI20) ... ok
test_mixedfetch (__main__.Test_DBAPI20) ... ok
-test_newline (__main__.Test_DBAPI20) ... ok
test_nextset (__main__.Test_DBAPI20) ... ok
test_paramstyle (__main__.Test_DBAPI20) ... ok
test_rollback (__main__.Test_DBAPI20) ... ok
test_rowcount (__main__.Test_DBAPI20) ... ok
test_setinputsizes (__main__.Test_DBAPI20) ... ok
-test_setoutputsize (__main__.Test_DBAPI20) ... ok
test_setoutputsize_basic (__main__.Test_DBAPI20) ... ok
test_substring (__main__.Test_DBAPI20) ... ok
test_threadsafety (__main__.Test_DBAPI20) ... ok
@@ -144,7 +144,7 @@ test_unicode (__main__.Test_DBAPI20) ...
test_utf8 (__main__.Test_DBAPI20) ... ok
----------------------------------------------------------------------
-Ran 39 tests
+Ran 38 tests
OK
diff --git a/sql/test/testdb/Tests/testdb-dump.timeout
b/sql/test/testdb/Tests/testdb-dump.timeout
--- a/sql/test/testdb/Tests/testdb-dump.timeout
+++ b/sql/test/testdb/Tests/testdb-dump.timeout
@@ -1,1 +1,1 @@
-36
+27
diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -1231,6 +1231,8 @@ def ApproveOutput (env, TST) :
# filter = re.compile( "^!WARNING: TCPlisten\([0-9]*\): stopped.$"
"|"
# "^!WARNING: TCPepilogue: terminate [01]
listeners$", re.MULTILINE)
+ TO = re.compile("(^\+(|[^#]*[\t ])((Memory|Segmentation) [Ff]ault|Bus
[Ee]rror|Abort(|ed)|Assertion (|.* )failed[:\.]|!FATAL: BATSIGabort:|ERROR =
!Connection terminated|!Mtimeout: Timeout:)([ \t]|$)|aborted too deep
recursion)", re.MULTILINE)
+
for WHAT in EXTENSIONS:
testOUTPUT = os.path.join(TSTTRGDIR, "%s.test.%s" % (TST, WHAT))
TSTSRCDIRTST = os.path.join(TSTSRCDIR, TST)
@@ -1275,7 +1277,10 @@ def ApproveOutput (env, TST) :
f = open(patch + ".1", "w")
for l in open(patch + ".0"):
- if len(l) < 2 or \
+ if TO.search(l):
+ f.write(l[:1] + '\n')
+ Warn('Rejecting (error) message: "%s"' %
l[1:].replace(os.linesep, ''))
+ elif len(l) < 2 or \
( l[:2] not in ['+!','+='] and l[:10] != '+ERROR = !'
and \
l[:8] != '+ERROR: ' and l[:10] != '+WARNING: ' ) :
# or filter.match(ln):
f.write(l)
@@ -1286,7 +1291,7 @@ def ApproveOutput (env, TST) :
else:
f.write(l[:1] + '\n')
sa = 'Skipping'
- Warn('%s new (error) message: "%s"' %
(sa,l.replace(os.linesep, '')))
+ Warn('%s new (error) message: "%s"' %
(sa,l[1:].replace(os.linesep, '')))
sem = 1
f.flush()
f.close()
@@ -2726,7 +2731,7 @@ def DoIt(env, SERVER, CALL, TST, EXT, PR
return None
# Try to detect segfaults and the like
- TO = re.compile("((^|^[^#]*[\t ])(Memory [Ff]ault|Segmentation
[Ff]ault|Bus [Ee]rror|Abort(|ed)|Assertion failed:|!FATAL: BATSIGabort:)([
\t]|$))", re.MULTILINE)
+ TO = re.compile("(^(|[^#]*[\t ])((Memory|Segmentation) [Ff]ault|Bus
[Ee]rror|Abort(|ed)|Assertion (|.* )failed[:\.]|!FATAL: BATSIGabort:)([
\t]|$))", re.MULTILINE)
# FIXME: this begs for a much nicer solution (100% copy of below)
for f in (TestErrFile, TestOutFile):
if os.path.isfile(f):
diff --git a/tools/merovingian/daemon/monetdbd.1.in
b/tools/merovingian/daemon/monetdbd.1.in
--- a/tools/merovingian/daemon/monetdbd.1.in
+++ b/tools/merovingian/daemon/monetdbd.1.in
@@ -10,7 +10,7 @@ command [command_args] dbfarm
.SH DESCRIPTION
.B monetdbd
is the MonetDB Database Server daemon. The program is mainly meant to
-be used as deamon, but it also allows to setup and change the
+be used as daemon, but it also allows to setup and change the
configuration of a dbfarm.
The use of
.B monetdbd
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list