diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/InQuery.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/InQuery.java
index 7c747ced38b9d51d587b8ed84b61dbfb1347fd7f..8585869bba1ef3c21e04f15faf1a3ac256377394 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/InQuery.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/InQuery.java
@@ -15,19 +15,21 @@ public class InQuery<I, O>
     {
         List<O> result = new ArrayList<O>(inArguments.size());
 
+        int fixParamsSize = (fixParams == null) ? 0 : fixParams.size();
         int fromIndex = 0;
+
         while (fromIndex < inArguments.size())
         {
-            int toIndex = fromIndex + POSTGRES_DRIVER_MAX_ARGS;
+            int toIndex = fromIndex + POSTGRES_DRIVER_MAX_ARGS - fixParamsSize;
             if (toIndex > inArguments.size())
             {
                 toIndex = inArguments.size();
             }
 
             List<I> partialInArguments = inArguments.subList(fromIndex, toIndex);
-
             SQLQuery query = session.createSQLQuery(inQuery);
             query.setParameterList(inParameter, partialInArguments);
+
             if (fixParams != null)
             {
                 for (String paramName : fixParams.keySet())