Hi Francesco, Thanks, I now understand why it used to work recently. As a workaround I have added a (useless) clause on user status. In this case, it seems the generation of the SQL is not done by the buggy code. Cheers Lionel
----- Le 3 Juil 25, à 12:22, Francesco Chicchiriccò ilgro...@apache.org a écrit : > Hi Lionel, > this is likely due to the changes introduced in 3.0.11 by > > https://issues.apache.org/jira/browse/SYNCOPE-1855 > > The query below should be changed by turning > > any_id IS NOT NULL > > into > > sv.any_id IS NOT NULL > > HTH > Regards. > > On 01/07/25 11:02, Lionel SCHWARZ wrote: >> Dear all, >> >> For some reasons (I'm pretty sure it has worked in the past), calling: >> >> anySearchDAO.count(realm, false, SyncopeConstants.FULL_ADMIN_REALMS, cond, >> AnyTypeKind.USER); >> >> fails with: >> >> " >> Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: (conn=282) >> Column >> 'any_id' in WHERE is ambiguous {prepstmnt 872715940 SELECT COUNT(DISTINCT >> sv.any_id) FROM user_search sv LEFT JOIN user_search_attr sva ON >> sv.any_id=sva.any_id WHERE ((sva.schema_id='u_dateExpirationMotDePasse' AND >> sva.dateValue<?) AND (any_id IS NOT NULL))} [code=1052, state=23000] >> " >> >> with the condition "cond" built by: >> >> protected SearchCond buildSearchCond() { >> LocalDate today = LocalDate.now(); >> LocalDate in50days = today.plus(Period.parse("P50D")); // less than >> P42D >> >> AttrCond expDateCond = new AttrCond(AttrCond.Type.LT); >> expDateCond.setSchema("u_dateExpirationMotDePasse"); >> expDateCond.setExpression(in50days.toString()); >> >> return SearchCond.getLeaf(expDateCond); >> } >> >> >> Any idea what could give this SQL query error? >> >> Thanks >> Lionel > > -- > Francesco Chicchiriccò > > Tirasa - Open Source Excellence > http://www.tirasa.net/ > > Member at The Apache Software Foundation > Syncope, Cocoon, Olingo, CXF, OpenJPA > https://about.me/ilgrosso
smime.p7s
Description: S/MIME Cryptographic Signature