Changeset: aaffc3090b24 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=aaffc3090b24
Modified Files:
gdk/gdk_select.c
sql/storage/bat/bat_logger.c
testing/Mtest.py.in
Branch: default
Log Message:
Merge with Oct2014 branch.
diffs (175 lines):
diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c
--- a/gdk/gdk_select.c
+++ b/gdk/gdk_select.c
@@ -221,7 +221,15 @@ BAT_hashselect(BAT *b, BAT *s, BAT *bn,
}
BATsetcount(bn, cnt);
bn->tkey = 1;
- GDKqsort(dst, NULL, NULL, BATcount(bn), SIZEOF_OID, 0, TYPE_oid);
+ if (cnt > 1) {
+ /* hash chains produce results in the order high to
+ * low, so we just need to reverse */
+ for (l = BUNfirst(bn), h = BUNlast(bn) - 1; l < h; l++, h--) {
+ o = dst[l];
+ dst[l] = dst[h];
+ dst[h] = o;
+ }
+ }
bn->tsorted = 1;
bn->tdense = bn->trevsorted = bn->batCount <= 1;
if (bn->batCount == 1)
diff --git a/sql/storage/bat/bat_logger.c b/sql/storage/bat/bat_logger.c
--- a/sql/storage/bat/bat_logger.c
+++ b/sql/storage/bat/bat_logger.c
@@ -59,11 +59,11 @@ bl_postversion( void *lg)
BUN p,q;
te = temp_descriptor(logger_find_bat(lg, N(n, NULL, s,
"types_eclass")));
- tn = temp_descriptor(logger_find_bat(lg, N(n, NULL, s,
"types_eclass")));
+ tn = temp_descriptor(logger_find_bat(lg, N(n, NULL, s,
"types_sqlname")));
if (!te || !tn)
return;
tei = bat_iterator(te);
- tni = bat_iterator(te);
+ tni = bat_iterator(tn);
tne = BATnew(TYPE_void, TYPE_int, BATcount(te), PERSISTENT);
if (!tne)
return;
diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -1393,10 +1393,10 @@ def ApproveOutput (env, TST) :
Warn('There are other (specific) stable outputs for test
%s\nfor which patching failed:\n %s' % (os.path.join(TSTDIR,'Tests',TST),
str(list)))
STDERR.write(' Look at the *.rej files in directory
%s.\n\n' % os.path.join(TSTDIR,'Tests'))
STDERR.flush()
- else:
+ elif verbose:
print "No differences detected between %s and stable.%s%s
that are not ignored by Mtest.py." % (os.path.join(TSTDIR, "%s.test.%s" % (TST,
WHAT)), WHAT, SYSTEM)
remove(patch + ".0")
- else:
+ elif verbose:
i = TST.rfind('.')
if i > 0:
return ApproveOutput(env, TST[:i])
@@ -2018,7 +2018,7 @@ def RunTest(env, TST, BusyPorts, COND, o
if env['exe']['Mtimeout'][0]:
# set timeout
env['exe']['Mtimeout'] = env['exe']['Mtimeout'][0], 'Mtimeout
-timeout %s ' % str(TIMEOUT)
- SetExecEnv(env['exe'],0)
+ SetExecEnv(env['exe'],False)
CTIMEOUT = 0
if CALL in ["other", "python"]:
if TIMEOUT > 0:
@@ -2166,7 +2166,7 @@ def RunTest(env, TST, BusyPorts, COND, o
if env['exe']['Mtimeout'][0]:
# reset timeout
env['exe']['Mtimeout'] = env['exe']['Mtimeout'][0], 'Mtimeout
-timeout %s ' % str(par['TIMEOUT'])
- SetExecEnv(env['exe'],0)
+ SetExecEnv(env['exe'],False)
try:
Mfilter.mFilter(TST+STABLEout,par['IGNORE'])
@@ -2304,7 +2304,7 @@ def RunTest(env, TST, BusyPorts, COND, o
ACCURACYerr = 0
else:
cmd.append('-d')
- if quiet:
+ if not verbose:
cmd.append('-q')
cmd.extend(['-F^#', '-I%s' % par['IGNORE'],
'-C%s' % par['CONTEXT'], '-A%d' % ACCURACYerr,
@@ -3611,7 +3611,7 @@ def main(argv) :
# display par's
STDERR.flush()
- if not quiet:
+ if verbose:
for v in par.keys():
#os.environ[v] = par[v]
print"%s = %s" % (v, str(par[v]))
@@ -3665,7 +3665,7 @@ def main(argv) :
for p in 'TSTSRCBASE', 'TSTTRGBASE':
if os.path.isdir(env[p]):
rp = os.path.realpath(env[p])
- if not quiet and os.path.normcase(rp) != os.path.normcase(env[p]):
+ if verbose and os.path.normcase(rp) != os.path.normcase(env[p]):
Warn("%s: Replacing logical path %s by absolute physical
path %s" % (p, env[p], rp))
env[p] = rp
else:
@@ -3759,9 +3759,9 @@ def main(argv) :
for v in vars_:
if env.has_key(v):
os.environ[v] = env[v]
- if not quiet:
+ if verbose:
print "%s = %s" % (v, env[v])
- if not quiet:
+ if verbose:
print "%s = %s" % ('PATH', os.environ['PATH'])
if os.environ.has_key('PYTHONPATH'):
print "%s = %s" % ('PYTHONPATH', os.environ['PYTHONPATH'])
@@ -3857,10 +3857,7 @@ def main(argv) :
if par['TIMEOUT'] == 0 or not exe['Mtimeout'][0]:
exe['Mtimeout'] = '', ''
env['exe'] = exe
- if not quiet:
- SetExecEnv(exe,1)
- else:
- SetExecEnv(exe,0)
+ SetExecEnv(exe,verbose)
#TODO:
#exe['JAVA'] = 'java'
@@ -4003,7 +4000,7 @@ def main(argv) :
if GetBitsAndOIDsAndModsAndStaticAndThreads(env):
sys.exit(1)
STDERR.flush()
- if not quiet:
+ if verbose:
print "Bits: ", env['TST_BITS']
print "OIDs: ", env['TST_OIDS']
if env['TST_INT128']:
@@ -4040,7 +4037,7 @@ def main(argv) :
tsts = "tests "+str(testlist)
else:
tsts = "all tests"
- if not quiet:
+ if verbose:
print "\nRunning %s in directory %s.\n" % (tsts , testdirs[0])
t_, elem, diff = PerformDir(env, testdirs[0], testlist, BusyPorts)
if elem is not None:
@@ -4049,7 +4046,7 @@ def main(argv) :
else:
body_bad.append(elem)
else:
- if not quiet:
+ if verbose:
print "\nRunning all tests in directories %s.\n" %
str(testdirs)
for d in testdirs:
t, elem, diff = PerformDir(env, d, [], BusyPorts)
@@ -4214,7 +4211,9 @@ VALUES (%s, '%s', '%s', '%s',
""" % os.path.join(TSTTRGBASE, TSTPREF, "index.html")
sys.exit(1)
else:
- if not quiet:
+ if quiet:
+ pass
+ elif verbose:
print """\
No differences encountered during testing.
@@ -4222,11 +4221,12 @@ VALUES (%s, '%s', '%s', '%s',
If necessary, you can checkin your modifications, now.
"""
else:
- print ""
+ print "No differences encountered during testing."
sys.exit(0)
if THISFILE == "Mapprove.py":
- print """\
+ if not quiet:
+ print """\
First, run 'hg diff` to check what you have changed.
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list