--- a/server/sources/rql2sql.py Wed Jun 30 15:43:36 2010 +0200
+++ b/server/sources/rql2sql.py Thu Jul 01 17:06:37 2010 +0200
@@ -833,10 +833,11 @@
# if the rhs variable is only linked to this relation, this mean we
# only want the relation to exists, eg NOT NULL in case of inlined
# relation
- if len(rhsvar.stinfo['relations']) == 1 and rhsvar._q_invariant:
+ if rhsvar._q_invariant:
+ sql = self._extra_join_sql(relation, lhssql, rhsvar)
+ if sql:
+ return sql
return '%s IS NOT NULL' % lhssql
- if rhsvar._q_invariant:
- return self._extra_join_sql(relation, lhssql, rhsvar)
return '%s=%s' % (lhssql, rhsvar.accept(self))
def _process_relation_term(self, relation, rid, termvar, termconst, relfield):